23 Commits
0.59 ... 0.61

Author SHA1 Message Date
idk
a192d17e68 Don't exit container tab when leaving for clearnet 2020-02-26 01:57:07 -05:00
idk
62d93a64c0 add torrent basic guide 2020-02-26 00:29:56 -05:00
idk
aad47b03b1 add torrent basic guide 2020-02-25 23:21:42 -05:00
idk
bc8317bd19 add torrent basic guide 2020-02-25 23:03:47 -05:00
idk
1d209c52c8 add torrent basic guide 2020-02-25 23:00:12 -05:00
idk
28901b8e65 add torrent basic guide 2020-02-25 22:58:51 -05:00
idk
2ba386dc53 make releases a little easier 2020-02-25 22:38:55 -05:00
idk
25b1628b7c fix page 2020-02-25 21:41:43 -05:00
idk
f4d7217ce3 Merge branch 'master' of github.com:eyedeekay/I2P-in-Private-Browsing-Mode-Firefox into gh-pages 2020-02-25 21:33:06 -05:00
idk
89f64fa1be update master 2020-02-25 21:32:04 -05:00
idk
0176755b72 fix page 2020-02-25 21:24:45 -05:00
idk
759b7f930e fix page 2020-02-25 21:24:04 -05:00
idk
7a9f347a5c fix page 2020-02-25 21:23:51 -05:00
idk
7f83404453 re-generate index 2020-02-25 21:17:35 -05:00
idk
e194893227 fix screenshot 2020-02-25 21:16:37 -05:00
idk
299e6c5ba3 fix screenshot 2020-02-25 21:15:03 -05:00
idk
0b2a615048 fix debian build 2020-02-25 20:57:24 -05:00
idk
49c4b09804 fix debian build 2020-02-25 20:55:33 -05:00
idk
be7e76524d Remake index 2020-02-25 20:45:37 -05:00
idk
e8c94b2255 fix merge conflicts so I can show off this development screenshot 2020-01-14 19:47:55 -05:00
idk
a99a7067cb update page 2020-01-07 15:59:16 -05:00
idk
074ff44066 update torrents 2020-01-06 16:44:27 -05:00
idk
e54435f65d add feed to page index 2020-01-06 15:39:27 -05:00
21 changed files with 307 additions and 191 deletions

2
.gitignore vendored
View File

@@ -1,3 +1,5 @@
README.md.asc
node_modules/
web-ext-artifacts
releases.diff
.releases.atom

3
.web-extension-id Normal file
View File

@@ -0,0 +1,3 @@
# This file was created by https://github.com/mozilla/web-ext
# Your auto-generated extension ID for addons.mozilla.org is:
i2ppb@eyedeekay.github.io

View File

@@ -13,6 +13,8 @@ install: uninstall
cp ./*.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./i2pcontrol/i2pcontrol.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol/i2pcontrol.js
cp ./torrent/*.js $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/*.html $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/UNLICENSE $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./*.html $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.css $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.md $(PREFIX)/share/webext/i2ppb@eyedeekay.github.io/
@@ -44,7 +46,7 @@ MOZ_VERSION=0.58
VERSION=0.59
## INCREMENT THIS EVERY TIME YOU DO A RELEASE
LAST_VERSION=0.55
LAST_VERSION=0.57
YELLOW=F7E59A
ORANGE=FFC56D
@@ -74,11 +76,11 @@ index:
@echo "<html>" >> index.html
@echo "<head>" >> index.html
@echo " <title>I2P in Private Browsing Mode</title>" >> index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href =\"home.css\" />" >> index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href =\"sidebar.css\" />" >> index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"home.css\" />" >> index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"sidebar.css\" />" >> index.html
@echo "</head>" >> index.html
@echo "<body>" >> index.html
sed "s|magnetsub|[Magnet Link]($(MAGNET))|g" README.md | markdown >> index.html
sed "s|magnetsub|[Magnet Link]($(MAGNET))|g" README.md | sed 's|README.md|index.html|g' | markdown >> index.html
@echo "</body>" >> index.html
@echo "</html>" >> index.html
@@ -87,8 +89,8 @@ torrenthelp:
@echo "<html>" >> torrent/index.html
@echo "<head>" >> torrent/index.html
@echo " <title>I2P in Private Browsing Mode</title>" >> torrent/index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href =\"home.css\" />" >> torrent/index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href =\"sidebar.css\" />" >> torrent/index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"../home.css\" />" >> torrent/index.html
@echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"../sidebar.css\" />" >> torrent/index.html
@echo "</head>" >> torrent/index.html
@echo "<body>" >> torrent/index.html
sed "s|magnetsub|[Magnet Link]($(MAGNET))|g" torrent/README.md | markdown >> torrent/index.html
@@ -130,9 +132,18 @@ zip: version
--exclude="web-ext-artifacts" \
--exclude="./*.pdf" -r -FS ../i2psetproxy.js.zip *
release: index torrenthelp
rc:
@grep "$(VERSION)" debian/changelog
@echo "changelog is prepared"
rtest: rc index torrenthelp
release: rc index torrenthelp
cat desc debian/changelog | grep -B 10 "$(LAST_VERSION)" | gothub release -p -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n $(VERSION) -d -; true
update-release:
cat desc debian/changelog | grep -B 10 "$(LAST_VERSION)" | gothub edit -p -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n $(VERSION) -d -; true
delete-release:
gothub delete -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION); true
@@ -185,7 +196,8 @@ rhz-submit: rhz-version
#cp web-ext-artifacts/*.xpi ./i2ppb@eyedeekay.github.io.xpi
getxpi:
gothub download -t $(VERSION) -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -n "i2ppb@eyedeekay.github.io.xpi"
gothub download -t $(VERSION) -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -n i2ppb@eyedeekay.github.io.xpi
cp ./i2ppb@eyedeekay.github.io.xpi ./i2ppb-$(VERSION)@eyedeekay.github.io.xpi
torrent: getxpi
rm -f "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent"
@@ -223,11 +235,11 @@ torrent: getxpi
-a http://open.acgnxtracker.com:80/announce \
-a http://mail2.zelenaya.net:80/announce \
-a http://acg.rip:6699/announce \
-n "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi" \
-o "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" \
-n "i2ppb-$(VERSION)@eyedeekay.github.io.xpi" \
-o "i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" \
-w https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/$(VERSION)/i2ppb@eyedeekay.github.io.xpi \
i2ppb@eyedeekay.github.io.xpi; true
ln -sf "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" "./i2ppb@eyedeekay.github.io.xpi.torrent"
cp -v "./i2ppb-$(VERSION)@eyedeekay.github.io.xpi.torrent" "./i2ppb@eyedeekay.github.io.xpi.torrent"
make index
upload-torrent:
@@ -309,4 +321,10 @@ upload-rss:
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t docs -n "releases.atom" -f releases.atom
webext:
web-ext run -u "about:devtools-toolbox?type=extension&id=i2ppb%40eyedeekay.github.io"
web-ext run -u "about:devtools-toolbox?type=extension&id=i2ppb%40eyedeekay.github.io"
snark-mirror:
http_proxy=http://127.0.0.1:4444 wget -c -O ../i2psnark-rpc.su3 http://stats.i2p/i2p/plugins/i2psnark-rpc.su3
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psnark-rpc.su3" -f ../i2psnark-rpc.su3
http_proxy=http://127.0.0.1:4444 wget -c -O ../i2psnark-rpc-update.su3 http://stats.i2p/i2p/plugins/i2psnark-rpc-update.su3
gothub upload -R -u eyedeekay -r I2P-in-Private-Browsing-Mode-Firefox -t $(VERSION) -n "i2psnark-rpc-update.su3" -f ../i2psnark-rpc-update.su3

View File

@@ -59,7 +59,10 @@ Usage:
immediately, or you can close all your I2P Browser tabs at once and delete
the history for I2P browsing when you're done.
* That's all there is to it! Your browser is configured to safely use and
administer I2P
administer I2P.
* Optionally, you can add I2PSnark-RPC and use Bittorrent-over-I2P via the
transmission-rpc interface. To do this, have a look at the torrent guide:
[Torrent guide](torrent/README.md)
### Features
@@ -93,11 +96,11 @@ Usage:
place each i2p application/plugin under it's own origin, shortening router
console URL's and placing applications under their own origin.
* ![Visiting routerconsole](routerconsole.png)
* [wip] **Handle Torrents** by talking to i2psnark-rpc plugin and then
* [Done] **Handle Torrents** by talking to i2psnark-rpc plugin and then
adding them directly into the Firefox downloads drop-downs, menus, etc. If I
can. Right now instead of talking to snark-rpc, it uses a web-based protocol
handler that simply auto-fills the torrent into i2psnark.
can.
* ![Visiting i2psnark](i2psnark.png)
* ![Monitoring torrents](transmissionrpc.png)
* [barely started] **Isolate** traffic by contextual identity to it's own HTTP
Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The
contextual identities. For now, the contextual identities used to manage

View File

@@ -37,7 +37,7 @@ gettingInfo.then(got => {
let port = info.value.http.split(":")[1];
if (port == "7644") {
let createBookmark = browser.bookmarks.create({
url: "http://localhost:7647/i2psnark",
url: "http://localhost:7657/i2psnark",
title: "Bittorrent",
parentId: bookmarkToolbar[0].id
});
@@ -65,7 +65,7 @@ gettingInfo.then(got => {
let port = info.value.http.split(":")[1];
if (port == "7644") {
let createBookmark = browser.bookmarks.create({
url: "http://localhost:7647/webmail",
url: "http://localhost:7657/webmail",
title: "Web Mail",
parentId: bookmarkToolbar[0].id
});
@@ -93,7 +93,7 @@ gettingInfo.then(got => {
let port = info.value.http.split(":")[1];
if (port == "7644") {
var createBookmark = browser.bookmarks.create({
url: "http://localhost:7647/i2ptunnel",
url: "http://localhost:7657/i2ptunnel",
title: "Hidden Services Manager",
parentId: bookmarkToolbar[0].id
});

12
debian/changelog vendored
View File

@@ -1,3 +1,10 @@
i2psetproxy.js (0.59-1) UNRELEASED; urgency=low
* transmission-rpc based torrent controls
* bugfixes
-- idk <hankhill19580@gmail.com> Tue, 25 FEB 2020 20:52:19 -0400
i2psetproxy.js (0.57-1) UNRELEASED; urgency=low
* Snowflake compatibility
@@ -6,7 +13,7 @@ i2psetproxy.js (0.57-1) UNRELEASED; urgency=low
* Make it multilingual again
* Distribute a torrent and a magnet link with the plugin of the plugin
-- idk <hankhill19580@gmail.com> Thu, 4 JAN 2019 16:43:58 -0400
-- idk <hankhill19580@gmail.com> Thu, 4 JAN 2020 16:43:58 -0400
i2psetproxy.js (0.55-1) UNRELEASED; urgency=low
@@ -15,7 +22,7 @@ i2psetproxy.js (0.55-1) UNRELEASED; urgency=low
* Tolerate themes
* Tolerate other containerizers
-- idk <hankhill19580@gmail.com> Thu, 2 JAN 2019 16:47:33 -0400
-- idk <hankhill19580@gmail.com> Thu, 2 JAN 2020 16:47:33 -0400
i2psetproxy.js (0.53-1) UNRELEASED; urgency=low
@@ -82,3 +89,4 @@ i2psetproxy.js (0.31-1) UNRELEASED; urgency=low
<nnnn is the bug number of your ITP>
-- idk <hankhill19580@gmail.com> Thu, 01 Aug 2019 00:32:39 -0400
T

2
debian/rules vendored
View File

@@ -14,6 +14,8 @@ override_dh_auto_install:
cp ./*.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./i2pcontrol/i2pcontrol.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/i2pcontrol/
cp ./torrent/*.js $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/*.html $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./torrent/UNLICENSE $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/torrent/
cp ./*.html $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.css $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/
cp ./*.md $$(pwd)/debian/i2psetproxy.js/usr/share/webext/i2ppb@eyedeekay.github.io/

View File

@@ -1,6 +1,7 @@
i2psetproxy.js.gif
i2psetproxy.js@eyedeekay.github.io.xpi
i2ppb@eyedeekay.github.io.xpi
i2ppb-0.59@eyedeekay.github.io.xpi
web-ext-artifacts/i2p_in_private_browsing-0.51-an+fx.xpi
smartlander.pdf
browser.pdf

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +0,0 @@
./i2ppb-0.57@eyedeekay.github.io.xpi.torrent

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@@ -1,199 +1,223 @@
<!DOCTYPE html>
<html>
<head>
<title>I2P in Private Browsing Mode</title>
<link href="home.css" rel="stylesheet" type="text/css">
<link href="sidebar.css" rel="stylesheet" type="text/css">
<title>I2P in Private Browsing Mode</title>
<link rel="stylesheet" type="text/css" href="home.css" />
<link rel="stylesheet" type="text/css" href="sidebar.css" />
</head>
<body>
<h1>I2P in Private Browsing Mode(Firefox-Only)</h1>
<h1>I2P in Private Browsing Mode(Firefox-Only)</h1>
<p>This is an <strong>Experimental</strong> webextension which introduces a set of new "Private Browsing" modes to Firefox-based browsers(Supporting webextensions) that makes it easier to configure a browser to use I2P securely and adds features for making I2P applications easier to use. It does this by isolating I2P-specific settings to Contextual Identities within Firefox, then loading them automatically when the user requests them. It also adds convenience and management features specific to I2P like protocol handlers and native messaging systems.</p>
<p>This is an webextension which introduces a set of new "Private Browsing" modes
to Firefox-based browsers(Supporting webextensions) that makes it easier to
configure a browser to use I2P securely and adds features for making I2P
applications easier to use. It does this by isolating I2P-specific settings to
Contextual Identities within Firefox, then loading them automatically when the
user requests them. It also adds convenience and management features, like an
embedded I2P console and Bittorrent integration with clients using the
transmission-rpc API.</p>
<h2>Installation(Cross-Platform):</h2>
<h2>Installation(Cross-Platform):</h2>
<p>For desktop users this addon is available from addons.mozilla.org, where you will be able to recive automatic updates: <a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">I2P in Private Browsing</a>.</p>
<p>For desktop users this addon is available from addons.mozilla.org, where you
will be able to recive automatic updates:
<a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">I2P in Private Browsing</a>.</p>
<h2>Debian Installation:</h2>
<h2>Debian Installation:</h2>
<p>Should you prefer, it is possible to install this extension system-wide by side-loading it into Debian. You can generate your own deb file by running the command:</p>
<p>Should you prefer, it is possible to install this extension system-wide by
side-loading it into Debian. You can generate your own deb file by running the
command:</p>
<pre><code> make deb
<pre><code> make deb
</code></pre>
<p>and then you can install it with:</p>
<pre><code> sudo apt install ../i2psetproxy.js_*.deb
<p>and then you can install it with:</p>
<pre><code> sudo apt install ../i2psetproxy.js_*.deb
</code></pre>
<h2>Bittorrent Download:</h2>
<p>The self-hosted plugin is available from bittorrent both within the I2P and Clearnet Bittorrent network(With a web seed to support it in case one goes dead).</p>
<h2>Bittorrent Download:</h2>
<ul>
<li>
<a href="magnet:?xt=urn:btih:a0cf0107e4508cd578976e4d0c16d060b5148fde">Magnet Link</a>
</li>
<p>The self-hosted plugin is available from bittorrent both within the I2P and
Clearnet Bittorrent network(With a web seed to support it in case one goes
dead).</p>
<li>
<a href="./i2ppb@eyedeekay.github.io.xpi.torrent">Get the .torrent file</a>
</li>
</ul>
<ul>
<li><a href="magnet:?xt=urn:btih:b54b5a7952a3984cb3178533e29eb3b8ad46921c">Magnet Link</a></li>
<li><a href="./i2ppb@eyedeekay.github.io.xpi.torrent">Get the .torrent file</a></li>
</ul>
<h2>Usage:</h2>
<h2>Usage:</h2>
<ul>
<li>Basically, it "Just Works." After you install the plugin, browsing to an I2P domain will automatically stop the current tab and re-open the I2P site in an I2P Browser tab.</li>
<ul>
<li>Basically, it "Just Works." After you install the plugin, browsing to an I2P
domain will automatically stop the current tab and re-open the I2P site in an
I2P Browser tab.</li>
<li>Besides that, four bookmarks are added to the "Bookmarks Toolbar," which
will take you to visit your Java I2P applications, or the "Simplified I2P
Landing Page" embedded in the plugin:</li>
<li><img src="lander.png" alt="Landing page" title="" /></li>
<li>Also, there's a menu for accessing I2P functionality while you're browsing.
It lets you control a few settings in a granular way.</li>
<li><img src="menu.png" alt="Menu" title="" /></li>
<li>You can re-enable WebRTC but force it to always use the proxy that is
enforced by the tab.</li>
<li>You can either force the browser to delete all history for I2P sites
immediately, or you can close all your I2P Browser tabs at once and delete
the history for I2P browsing when you're done.</li>
<li>That's all there is to it! Your browser is configured to safely use and
administer I2P.</li>
<li>Optionally, you can add I2PSnark-RPC and use Bittorrent-over-I2P via the
transmission-rpc interface. To do this, have a look at the torrent guide:
<a href="torrent/index.html">Torrent guide</a></li>
</ul>
<li>Besides that, four bookmarks are added to the "Bookmarks Toolbar," which will take you to visit your Java I2P applications, or the "Simplified I2P Landing Page" embedded in the plugin:</li>
<h3>Features</h3>
<li><img alt="Landing page" src="lander.png" title="">
</li>
<ul>
<li>[done] <strong>Provide</strong> a way to launch into an I2P-Specific contextual identity
(container). Intercept requests to .i2p domains and automatically route them
to the I2P container. Isolate the router console from other local
applications by automatically intercepting requests to the router console to
another container.</li>
<li><img src="i2psetproxy.js.png" alt="Visiting i2p-projekt.i2p" title="" /></li>
<li>[done] <strong>Indicate</strong> the I2P browser is in use visually. Find an
acceptable way to indicate it on Android.</li>
<li><img src="susimail.png" alt="Visiting webmail" title="" /></li>
<li>[done] <strong>Set</strong> the http proxy to use the local I2P proxy automatically.
Provide specific configuration for other types of I2P proxies(SOCKS,
isolating HTTP)</li>
<li>[done] <strong>Disable</strong> risky webRTC features/offer the option to re-enable
them with the proxy enforced.</li>
<li>[done] <strong>Change</strong> the color of the browser window to indicate that I2P is in
use</li>
<li><img src="i2ptunnel.png" alt="Visiting i2ptunnel" title="" /></li>
<li>[ready] <strong>Provide</strong> help in a variety of languages.</li>
<li>[done] <strong>Monitor</strong> the health and readiness of the I2P router it is
instructed to use. Currently the plugin checks whether the HTTP Proxy is
working by fetching an image from "http://proxy.i2p" and displaying a result.
A work-in-progress binding to i2pcontrol is available in ./i2pcontrol, it is
inert at this time.</li>
<li><img src="toopie.png" alt="Visiting toopie.html" title="" /></li>
<li>[Done] <strong>Handle</strong> router console applications under their own origins and
within their own contextual identity. (1) The router console is automatically
confined to it's own container tab. (2) Use a custom protocol handler to
place each i2p application/plugin under it's own origin, shortening router
console URL's and placing applications under their own origin.</li>
<li><img src="routerconsole.png" alt="Visiting routerconsole" title="" /></li>
<li>[Done] <strong>Handle Torrents</strong> by talking to i2psnark-rpc plugin and then
adding them directly into the Firefox downloads drop-downs, menus, etc. If I
can.</li>
<li><img src="i2psnark.png" alt="Visiting i2psnark" title="" /></li>
<li><img src="transmissionrpc.png" alt="Monitoring torrents" title="" /></li>
<li>[barely started] <strong>Isolate</strong> traffic by contextual identity to it's own HTTP
Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The
contextual identities. For now, the contextual identities used to manage
browsing are "I2P Browsing" and "Web Browsing" where I2P Browsing is capable
of using an outproxy but in the case of traffic destined for the clearnet
does not do header rewriting, and Web Browsing falls back to the Proxy
configured in Firefox. The I2P Browsing will be expanded to
<ul>
<li>I2P Amnesiac Browsing: Use for General Browsing, stores no history and
uses an HTTP Proxy with a very short tunnel-close timeout and no key-reuse.</li>
<li>I2P Social Networking: Use this for logging into social network accounts,
forums, and other interactive asynchronous public communication platforms
where your identity is behaviorally linkable. This has a very long
tunnel-close timeout and key-reuse until specifically invoked.</li>
<li>I2P Blogging: Use this for posting content to the web interface of your
blog or to other similar websites that you create content on.</li>
</ul></li>
<li><img src="clearweb.png" alt="Visiting clearweb" title="" /></li>
</ul>
<li>Also, there's a menu for accessing I2P functionality while you're browsing. It lets you control a few settings in a granular way.</li>
<h3>Video</h3>
<li><img alt="Menu" src="menu.png" title="">
</li>
<ul>
<li><img src="i2psetproxy.js.gif" alt="Video of the plugin in action" title="" /></li>
</ul>
<li>You can re-enable WebRTC but force it to always use the proxy that is enforced by the tab.</li>
<h2>Documents</h2>
<li>You can either force the browser to delete all history for I2P sites immediately, or you can close all your I2P Browser tabs at once and delete the history for I2P browsing when you're done.</li>
<ul>
<li><strong><a href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/docs/Browser.Design.Documentation.pdf">Browser Outline</a></strong>: This document is an outline of each of
the browser extension's feature panels in presentation form.</li>
<li><strong><a href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/docs/Landing.Page.Documentation.pdf">Smart Lander Design</a></strong>: This is the original outline of
the smart landing page which became the I2P home page within the browser and
the drop-down control panel.</li>
<li><strong><a href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/wiki/Other-Extensions">Other extensions</a></strong>: and how they work with this one.</li>
</ul>
<li>That's all there is to it! Your browser is configured to safely use and administer I2P</li>
</ul>
<h2>Super Extra Important Background Info:</h2>
<h3>Features</h3>
<p>This plugin's viability is directly related to the viability of Mozilla and
Tor's work on hardening Firefox itself and of particular interest are the
"Uplift" and "Fusion(Firefox Using Onions)" projects.</p>
<ul>
<li>[done] <strong>Provide</strong> a way to launch into an I2P-Specific contextual identity (container). Intercept requests to .i2p domains and automatically route them to the I2P container. Isolate the router console from other local applications by automatically intercepting requests to the router console to another container.</li>
<h3>Links about Project Uplift</h3>
<li><img alt="Visiting i2p-projekt.i2p" src="i2psetproxy.js.png" title="">
</li>
<ul>
<li><a href="https://wiki.mozilla.org/Security/Tor_Uplift">Tor Uplift</a> is a project which
brings important features of the Tor Browser to the mainstream of Firefox
users by including patches from Tor Browser Bundle into Firefox where it is
appropriate.</li>
<li><a href="https://wiki.mozilla.org/Security/FirstPartyIsolation">First Party Isolation</a>
is a feature in Firefox and other browsers which keeps information from
leaking across first-party domains.</li>
<li><a href="https://wiki.mozilla.org/Security/Fingerprinting">Fingerprinting</a> is a
technique where a tracker attempts to extract unique information about a user
from a side-channel in order to create an identifier that can be used to
correlate the user across many sites.</li>
<li><a href="https://wiki.mozilla.org/Security/Fennec%2BTor_Project">Fennec</a> is Firefox
for Android and this link has some analysis of the privacy consequences of the
Android platform.</li>
<li><a href="https://wiki.mozilla.org/Security/Tor_Uplift/Tracking">Tracking</a> in Firefox
is surveyed here.</li>
</ul>
<li>[done] <strong>Indicate</strong> the I2P browser is in use visually. Find an acceptable way to indicate it on Android.</li>
<p>Project uplift seems to have largely been accomplished?</p>
<li><img alt="Visiting webmail" src="susimail.png" title="">
</li>
<h3>Links about Project Fusion</h3>
<li>[done] <strong>Set</strong> the http proxy to use the local I2P proxy automatically. Provide specific configuration for other types of I2P proxies(SOCKS, isolating HTTP)</li>
<ul>
<li><a href="https://wiki.mozilla.org/Security/Fusion">Project Fusion</a> or Firefox using
Onions is a joint Mozilla/Tor effort to create an enhanced Private Browsing
mode for Firefox which uses Tor.</li>
<li><a href="https://trac.torproject.org/projects/tor/wiki/org/meetings/2018Rome/Notes/FusionProject">Notes</a>
from a meeting about Fusion.</li>
<li><a href="https://blog.torproject.org/tor-heart-firefox">Tor at the Heart: Firefox</a> is
a blog about Tor and the relationship they have to Firefox re: TBB, Fusion.</li>
</ul>
<li>[done] <strong>Disable</strong> risky webRTC features/offer the option to re-enable them with the proxy enforced.</li>
<h2>The Old Version</h2>
<li>[done] <strong>Change</strong> the color of the browser window to indicate that I2P is in use</li>
<p>New versions of this extension create an I2P in Private Browsing mode instead.
Since this is a drastic change to the behavior of the old plugin, a new entry
for the new plugin has been made at a new location on addons.mozilla.org.</p>
<li><img alt="Visiting i2ptunnel" src="i2ptunnel.png" title="">
</li>
<ul>
<li><p>This is the new version: <a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">[link]</a></p></li>
<li><p>This is the old version: <a href="https://addons.mozilla.org/en-US/firefox/addon/I2P-Proxy/">[link]</a></p></li>
</ul>
<li>[ready] <strong>Provide</strong> help in a variety of languages.</li>
<h2>Android usage:</h2>
<li>[done] <strong>Monitor</strong> the health and readiness of the I2P router it is instructed to use. Currently the plugin checks whether the HTTP Proxy is working by fetching an image from "http://proxy.i2p" and displaying a result. A work-in-progress binding to i2pcontrol is available in ./i2pcontrol, it is inert at this time.</li>
<p>Open the following link
<a href="https://github.com/eyedeekay/i2psetproxy.js/releases/">Github Releases Version</a>
in the browser you want to use for I2P. Firefox will warn you that it is about
to install an extension and indicate the permissions required. Read them over
and when you're ready, accept them. That's all it should take, your browser is
now configured to use I2P.</p>
<li><img alt="Visiting toopie.html" src="toopie.png" title="">
</li>
<h3>Android addons.mozilla.org(Temporarily Disabled)</h3>
<li>[Done] <strong>Handle</strong> router console applications under their own origins and within their own contextual identity. (1) The router console is automatically confined to it's own container tab. (2) Use a custom protocol handler to place each i2p application/plugin under it's own origin, shortening router console URL's and placing applications under their own origin.</li>
<li><img alt="Visiting routerconsole" src="routerconsole.png" title="">
</li>
<li>[wip] <strong>Handle Torrents</strong> by talking to i2psnark-rpc plugin and then adding them directly into the Firefox downloads drop-downs, menus, etc. If I can. Right now instead of talking to snark-rpc, it uses a web-based protocol handler that simply auto-fills the torrent into i2psnark.</li>
<li><img alt="Visiting i2psnark" src="i2psnark.png" title="">
</li>
<li>[barely started] <strong>Isolate</strong> traffic by contextual identity to it's own HTTP Proxy tunnel, each reflecting it's own pseudonymous identity within I2P. The contextual identities. For now, the contextual identities used to manage browsing are "I2P Browsing" and "Web Browsing" where I2P Browsing is capable of using an outproxy but in the case of traffic destined for the clearnet does not do header rewriting, and Web Browsing falls back to the Proxy configured in Firefox. The I2P Browsing will be expanded to
<ul>
<li>I2P Amnesiac Browsing: Use for General Browsing, stores no history and uses an HTTP Proxy with a very short tunnel-close timeout and no key-reuse.</li>
<li>I2P Social Networking: Use this for logging into social network accounts, forums, and other interactive asynchronous public communication platforms where your identity is behaviorally linkable. This has a very long tunnel-close timeout and key-reuse until specifically invoked.</li>
<li>I2P Blogging: Use this for posting content to the web interface of your blog or to other similar websites that you create content on.</li>
</ul>
</li>
<li><img alt="Visiting clearweb" src="clearweb.png" title="">
</li>
</ul>
<h3>Video</h3>
<ul>
<li><img alt="Video of the plugin in action" src="i2psetproxy.js.gif" title="">
</li>
</ul>
<h2>Documents</h2>
<ul>
<li><strong><a href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/docs/Browser.Design.Documentation.pdf">Browser Outline</a></strong>: This document is an outline of each of the browser extension's feature panels in presentation form.</li>
<li><strong><a href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/download/docs/Landing.Page.Documentation.pdf">Smart Lander Design</a></strong>: This is the original outline of the smart landing page which became the I2P home page within the browser and the drop-down control panel.</li>
</ul>
<h2>Super Extra Important Background Info:</h2>
<p>This plugin's viability is directly related to the viability of Mozilla and Tor's work on hardening Firefox itself and of particular interest are the "Uplift" and "Fusion(Firefox Using Onions)" projects.</p>
<h3>Links about Project Uplift</h3>
<ul>
<li>
<a href="https://wiki.mozilla.org/Security/Tor_Uplift">Tor Uplift</a> is a project which brings important features of the Tor Browser to the mainstream of Firefox users by including patches from Tor Browser Bundle into Firefox where it is appropriate.
</li>
<li>
<a href="https://wiki.mozilla.org/Security/FirstPartyIsolation">First Party Isolation</a> is a feature in Firefox and other browsers which keeps information from leaking across first-party domains.
</li>
<li>
<a href="https://wiki.mozilla.org/Security/Fingerprinting">Fingerprinting</a> is a technique where a tracker attempts to extract unique information about a user from a side-channel in order to create an identifier that can be used to correlate the user across many sites.
</li>
<li>
<a href="https://wiki.mozilla.org/Security/Fennec%2BTor_Project">Fennec</a> is Firefox for Android and this link has some analysis of the privacy consequences of the Android platform.
</li>
<li>
<a href="https://wiki.mozilla.org/Security/Tor_Uplift/Tracking">Tracking</a> in Firefox is surveyed here.
</li>
</ul>
<p>Project uplift seems to have largely been accomplished?</p>
<h3>Links about Project Fusion</h3>
<ul>
<li>
<a href="https://wiki.mozilla.org/Security/Fusion">Project Fusion</a> or Firefox using Onions is a joint Mozilla/Tor effort to create an enhanced Private Browsing mode for Firefox which uses Tor.
</li>
<li>
<a href="https://trac.torproject.org/projects/tor/wiki/org/meetings/2018Rome/Notes/FusionProject">Notes</a> from a meeting about Fusion.
</li>
<li>
<a href="https://blog.torproject.org/tor-heart-firefox">Tor at the Heart: Firefox</a> is a blog about Tor and the relationship they have to Firefox re: TBB, Fusion.
</li>
</ul>
<h2>The Old Version</h2>
<p>New versions of this extension create an I2P in Private Browsing mode instead. Since this is a drastic change to the behavior of the old plugin, a new entry for the new plugin has been made at a new location on addons.mozilla.org.</p>
<ul>
<li>
<p>This is the new version: <a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">[link]</a></p>
</li>
<li>
<p>This is the old version: <a href="https://addons.mozilla.org/en-US/firefox/addon/I2P-Proxy/">[link]</a></p>
</li>
</ul>
<h2>Android usage:</h2>
<p>Open the following link <a href="https://github.com/eyedeekay/i2psetproxy.js/releases/">Github Releases Version</a> in the browser you want to use for I2P. Firefox will warn you that it is about to install an extension and indicate the permissions required. Read them over and when you're ready, accept them. That's all it should take, your browser is now configured to use I2P.</p>
<h3>Android addons.mozilla.org(Temporarily Disabled)</h3>
<p>If you would prefer to recieve automatic updates from AMO, the correct product page for this plugin is <a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">I2P In Private Browsing</a>. This absolutely requires a working outproxy. If you want to avoid the use of AMO for updates, you can download the identical plugin from this repository's releases page. The latest AMO Plugin will always be identical to the latest github release, except for the version number, which must be incremented for submission to AMO.</p>
<p>If you would prefer to recieve automatic updates from AMO, the correct product
page for this plugin is
<a href="https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/">I2P In Private Browsing</a>.
This absolutely requires a working outproxy. If you want to avoid the use of AMO
for updates, you can download the identical plugin from this repository's
releases page. The latest AMO Plugin will always be identical to the latest
github release, except for the version number, which must be incremented for
submission to AMO.</p>
</body>
</html>

View File

@@ -26,8 +26,8 @@
],
"manifest_version": 2,
"name": "__MSG_extensionName__",
"version": "0.57",
"version_name": "0.57",
"version": "0.59",
"version_name": "0.59",
"description": "__MSG_extensionDescription__",
"homepage_url": "https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox",
"icons": {

View File

@@ -10,7 +10,7 @@
<updated>2020-01-06T17:16:33Z</updated>
<link rel="alternate" type="text/html" href="https://github.com/eyedeekay/I2P-in-Private-Browsing-Mode-Firefox/releases/tag/0.57"/>
<title>0.57</title>
<enclosure url="magnet:?xt=urn:btih:a0cf0107e4508cd578976e4d0c16d060b5148fde" type="application/x-bittorrent" />
<enclosure url="magnet:?xt=urn:btih:90f1cef9f03f802499ecd7e22226aae72ddaa9c0" type="application/x-bittorrent" />
<content type="html">&lt;h1&gt;I2P in Private Browsing Mode&lt;/h1&gt;
&lt;p&gt;A simple plugin for configuring a Firefox based web browser to isolate I2P&lt;br&gt;
Browsing to a single contextual identity, thus creating an I2P in Private&lt;br&gt;

View File

@@ -304,7 +304,9 @@ var contextSetup = function(requestDetails) {
});
if (
tabId.cookieStoreId == "firefox-default" ||
tabId.cookieStoreId == "firefox-private"
tabId.cookieStoreId == "firefox-private" ||
tabId.cookieStoreId == anoncontext[0].cookieStoreId ||
tabId.cookieStoreId == localcontext[0].cookieStoreId
) {
console.log(
"(ISOLATE)",
@@ -314,11 +316,7 @@ var contextSetup = function(requestDetails) {
localcontext[0].cookieStoreId
);
return;
}
if (
tabId.cookieStoreId != anoncontext[0].cookieStoreId ||
tabId.cookieStoreId != localcontext[0].cookieStoreId
) {
} else {
function Create() {
function onCreated(tab) {
function closeOldTab() {

View File

@@ -11,4 +11,32 @@ many torrent clients, including for our purposes snark-rpc and BiglyBT.
Transmitter is released under the UNLICENSE. An original copy is available at
this URL: https://github.com/myfreeweb/transmitter/blob/master/UNLICENSE
A copy has also been included in this directory.
A copy has also been included in this directory.
Configuring this extension for use with Snark-RPC!
--------------------------------------------------
One of the coolest things this extension is able to do is communicate with
a transmission-rpc enabled torrent client. Since it's an I2P focused plugin,
the default configuration is set up for use with the I2PSnark-RPC plugin created
by zzz. Since Snark-RPC isn't part of the main Java I2P distribution, in order
to do this you'll have to install the plugin. You can get a copy of it from
inside of I2P here:
* [stats.i2p main package](http://stats.i2p/i2p/plugins/i2psnark-rpc.su3)
* [stats.i2p update package](http://stats.i2p/i2p/plugins/i2psnark-rpc-update.su3)
I also have a mirror of the package with each release of the webextension,
reflecting the version in use in the webextension at the time of the release.
To install the plugin, go to [http://127.0.0.1:7657/configplugins](http://127.0.0.1:7657/configplugins)
and scroll down to the section of the page where it says "Installation from URL"
and paste the following URL:
```http://stats.i2p/i2p/plugins/i2psnark-rpc.su3```
Click the "Install Plugin" button and you'll be ready to go. Now, open the
extension options menu, and just click "Save." The defaults are correct for use
with I2PSnark-RPC, but they need to be initialized by saving the settings. If
I2PSnark-RPC becomes part of Java I2P, these defaults will be initialized when
the plugin is installed.

View File

@@ -2,8 +2,8 @@
<html>
<head>
<title>I2P in Private Browsing Mode</title>
<link rel="stylesheet" type="text/css" href ="home.css" />
<link rel="stylesheet" type="text/css" href ="sidebar.css" />
<link rel="stylesheet" type="text/css" href="../home.css" />
<link rel="stylesheet" type="text/css" href="../sidebar.css" />
</head>
<body>
<h1>Acknowledgement</h1>
@@ -19,5 +19,34 @@ many torrent clients, including for our purposes snark-rpc and BiglyBT.</p>
this URL: https://github.com/myfreeweb/transmitter/blob/master/UNLICENSE</p>
<p>A copy has also been included in this directory.</p>
<h2>Configuring this extension for use with Snark-RPC!</h2>
<p>One of the coolest things this extension is able to do is communicate with
a transmission-rpc enabled torrent client. Since it's an I2P focused plugin,
the default configuration is set up for use with the I2PSnark-RPC plugin created
by zzz. Since Snark-RPC isn't part of the main Java I2P distribution, in order
to do this you'll have to install the plugin. You can get a copy of it from
inside of I2P here:</p>
<ul>
<li><a href="http://stats.i2p/i2p/plugins/i2psnark-rpc.su3">stats.i2p main package</a></li>
<li><a href="http://stats.i2p/i2p/plugins/i2psnark-rpc-update.su3">stats.i2p update package</a></li>
</ul>
<p>I also have a mirror of the package with each release of the webextension,
reflecting the version in use in the webextension at the time of the release.</p>
<p>To install the plugin, go to <a href="http://127.0.0.1:7657/configplugins">http://127.0.0.1:7657/configplugins</a>
and scroll down to the section of the page where it says "Installation from URL"
and paste the following URL:</p>
<p><code>http://stats.i2p/i2p/plugins/i2psnark-rpc.su3</code></p>
<p>Click the "Install Plugin" button and you'll be ready to go. Now, open the
extension options menu, and just click "Save." The defaults are correct for use
with I2PSnark-RPC, but they need to be initialized by saving the settings. If
I2PSnark-RPC becomes part of Java I2P, these defaults will be initialized when
the plugin is installed.</p>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 577 KiB

After

Width:  |  Height:  |  Size: 165 KiB