From 6c87a44cd9b6995c92585a45be95a6f48990a455 Mon Sep 17 00:00:00 2001 From: idk Date: Tue, 5 Feb 2019 17:27:39 -0500 Subject: [PATCH] experimental .xpi version --- Makefile | 22 ++++++++++++++++ README.md | 4 +-- i2p_proxy-2.0-an+fx.xpi | Bin 0 -> 8479 bytes manifest.json | 16 +++++------ proxy.js | 57 ++++++++++++++++++++++++++++++++++------ 5 files changed, 81 insertions(+), 18 deletions(-) create mode 100644 i2p_proxy-2.0-an+fx.xpi diff --git a/Makefile b/Makefile index e69de29..69ec99b 100644 --- a/Makefile +++ b/Makefile @@ -0,0 +1,22 @@ + +install: + mkdir -p /usr/share/webext/i2psetproxy.js \ + /usr/share/mozilla/extensions/i2psetproxy.js/ \ + /usr/share/chromium/extensions/ + install background.js /usr/share/webext/i2psetproxy.js + install proxy.js /usr/share/webext/i2psetproxy.js + install manifest.json /usr/share/webext/i2psetproxy.js/ + install README.md /usr/share/webext/i2psetproxy.js + install LICENSE /usr/share/webext/i2psetproxy.js + ln -sf /usr/share/webext/i2psetproxy.js \ + /usr/share/chromium/extensions/i2psetproxy.js + ln -sf /usr/share/webext/i2psetproxy.js \ + /usr/share/mozilla/extensions/i2psetproxy.js/i2psetproxy.js + +uninstall: + rm -rf /usr/share/webext/i2psetproxy.js \ + /usr/share/mozilla/extensions/i2psetproxy.js/i2psetproxy.js \ + /usr/share/chromium/extensions/i2psetproxy.js + +zip: + zip -r -FS ../i2psetproxy.js.zip * diff --git a/README.md b/README.md index 940767d..2919202 100644 --- a/README.md +++ b/README.md @@ -10,5 +10,5 @@ fingerprintable resources. Features -------- - * [done] **Set** the http proxy to use the local i2p proxy - * [done] **Change** the color of the browser window to indicate that i2p is in use + * [Firefox] **Set** the http proxy to use the local i2p proxy + * [Firefox] **Change** the color of the browser window to indicate that i2p is in use diff --git a/i2p_proxy-2.0-an+fx.xpi b/i2p_proxy-2.0-an+fx.xpi new file mode 100644 index 0000000000000000000000000000000000000000..c90ebb897eeafb1cb3619749ae529375b70f3f07 GIT binary patch literal 8479 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%0AU`HY*}st zu#o~Zgh>)_(2I1X>OO=-Xnq`~2o_|J1JTSuU*ey_UNLYqlKE3}QWP$2h=3JKErf6_S!{T%yt2NO>7ry6;-kF7 zuz9+^ESO&j6e8|PyRoBic#8!TMBN^CA6iHi7B0LL?`nLVt7Q8=_}v7tAbq<-d*xf{ z&#t#jXgRn2B6LV{R>@kE%PYHa#z(}tPhB0cpLtcvRS24z`0Va8J0?Wd0x}Rfe{2W5 zl*1*OL^x0lm+|`EaNcFt$!Amrk$z}v; zf%7>N5k9BoUvXh(YHn}s=IrTY!D{FJS6q-D|06C25|ovnv(douBXFUmVJ78B2v&_? zyI~e~D{7|Sk*cmlP7PV&5z-Ra7@R=MnzOZXe0|t8wmevD{+2U|(Q15w0-c^9-L1x7 zER+?EhV-;GoqAEVL9f?*5vrOeYK5O$JTRzgs>cRsxe<$kTCw2zX?V1M?$X75wL*Bb zYSmRW&vAcYrx8=R|&!3%WqCi6%x{#kY*WJM^poRYR$BI$kU=iW6>MmiJ77 zz!ar8gd_*>&hOsvLp616y$A(RDMzAN;OMuPX!?Mj{n!dmONsm(?%_OO5l7jK*$=ZGU!rB4DPcWTDHvLCZ z$MU1{M=3Wq0^7C+6N`Cc9JG5kXHLs$Z{1~D6XIy!)y-L%NUE${UM(v3iIQohi*RN( zGfgK2t z_}A3dk)~YbRR^ozXXk__z0$kOe6B7v;<*ogcF?k=ZK3~G%ElL@MCwMr5c;grm*=$o zYt`W5=IrD9-_G1Q`iDs48lz61*fBcxm<(8Tq0yAvqgPDRzlc9)di8Nrh?ek0&QAWCvr=43wY1@UR6uDJ9u6&dPwW9Er)=Rnho1%nW(dn=7XZCt8HO>0QUvl4mQ1>vW z5f9u`&t59Pb75#8J$~L<=WjwTy>FKY8*_;<-Dbb^&TQ}f;exR7`v?3rR8mBWG3b4+ zyE<@xA1eK~=N+wblRqaF$>B?1i-h|X%YQ4RwCklO4-FdmC@E&8MquG{*91B8QeAuN zos3CvYB|Us2(Ezh^m@ArS>$(GL7mIDzk$)Kx+sVdT}&ruPJ+MiyhvX^F2u?w58$paGhZvUXJ>6}`Wolz-A-dxJN(tU;A+AK+sr#X~5<`(g5`}q%Ik|O& zvFq-~2Q?wMz*8QkZSVbNqG=8ua8mhUPb!faE{X?x;0(G$bEr;$Rt;EKJ0{AdMZX1l zJgE$>b1$q;{OU-zfimB{8g5-_*@Iji+#^I>ArtYr8FrY7&~I8h&}feztkPXoU=WMj zI7H|mvjnGql<3BJuKrc1T|XnN;=phS7V^ayE{UI!bv17%Tmri&zGuv;pb{PYk!dLQ zjY(abxH1tPDo+vO3EiIu8K(F1Q%$jS#>u$-u$4)5sLf}?F3&VT8v>R>Uq6ZKoymyFUsjXnXCzU{-nq`vCqd+mlm!)fUnhq#fzc&c-{ zOdM>zbna4Sgj_j>)W*_*GI>2iN?7U?#yiEpW=8;dxh$a9Wh2ppP30m8eMfiGD)m=~Q~OSl-qM!ii|||8nvf+OXjQd((5210&SBow zu?MecS=vxsz^TYXK?7m_-$UW&=lSdSRl5G=(Vj=dzX+uNMfkT}ieLBry168{_IcR+ zANDN%g#B9=`5R{RJhlE$J>{RYe`~{j)9f(;|G6pq6ZdaD#&6s@)*rb4U&rw$^52$c zzmbwgXIRx0vv@V~x<{QSClu2$Hjzux^XwsX#A literal 0 HcmV?d00001 diff --git a/manifest.json b/manifest.json index cee63d9..e082362 100644 --- a/manifest.json +++ b/manifest.json @@ -1,16 +1,16 @@ { - "manifest_version": 2, - "name": "I2P Proxy", - "version": "2.0", - "description": "Set up a browser to use the i2p http proxy automatically", - "background": { - "scripts": ["background.js", "proxy.js"] - }, - "permissions": ["theme", "proxy"], "applications": { "gecko": { "id": "i2psetproxy.js@eyedeekay.github.io", "strict_min_version": "60.0" } + }, + "permissions": ["theme", "proxy"], + "manifest_version": 2, + "name": "I2P Proxy", + "version": "1.0", + "description": "Set up a browser to use the i2p http proxy automatically", + "background": { + "scripts": ["background.js", "proxy.js"] } } diff --git a/proxy.js b/proxy.js index 6e4a938..102ca2f 100644 --- a/proxy.js +++ b/proxy.js @@ -1,9 +1,50 @@ +function isFirefox() { + testPlain = navigator.userAgent.indexOf('Firefox') !== -1; + if (testPlain) { + return testPlain + } + testTorBrowser = navigator.userAgent.indexOf('Tor') !== -1; + if (testTorBrowser) { + return testTorBrowser + } + return false +} -var proxySettings = { - proxyType: "manual", - http: "http://127.0.0.1:4444", - passthrough: "", - httpProxyAll: true -}; - -browser.proxy.settings.set({value:proxySettings}); +if (isFirefox()) { + var proxySettings = { + proxyType: "manual", + http: "http://127.0.0.1:4444", + passthrough: "", + httpProxyAll: true + }; + browser.proxy.settings.set({value:proxySettings}); +}else{ + var config = { + mode: "fixed_servers", + rules: { + proxyForHttp: { + scheme: "http", + host: "127.0.0.1", + port: 4444 + }, + proxyForFtp: { + scheme: "http", + host: "127.0.0.1", + port: 4444 + }, + proxyForHttps: { + scheme: "http", + host: "127.0.0.1", + port: 4444 + }, + fallbackProxy: { + scheme: "http", + host: "127.0.0.1", + port: 4444 + } + } + }; + chrome.proxy.settings.set( + {value: config, scope: 'regular'}, + function() {}); +}