Files
i2p.plugins.tor-updater/index.html
2022-02-07 21:38:54 -05:00

117 lines
5.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<title>i2p.plugins.tor-manager - Tor Binary Manager</title>
<link rel="stylesheet" type="text/css" href ="/style.css" />
</head>
<body>
<h1 id="i2p.plugins.tor-updater">i2p.plugins.tor-updater</h1>
<p>A Tor package updater and runner as an I2P Plugin. This plugin is usable on Windows and Linux for now. OSX support is planned soon.</p>
<h2 id="usage">Usage:</h2>
<p>See <a href="USAGE.md">Usage</a> for command-line usage.</p>
<h2 id="status">Status:</h2>
<figure>
<img src="screenshot-console.png" alt="" /><figcaption>Screenshot 2</figcaption>
</figure>
<p>Linux: Usable, most things work. Windows: Unstable, mostly usable, does not work in some important cirumstances, cannot run from a flash drive OSX: Unstable, untested, not usable, WIP.</p>
<p>Other systems are not targeted and should use a Tor binary built from source, provided by TPO or, their prefered package management system and not this plugin. The plugin will not start a Tor instance if a SOCKS proxy is open on port 9050.</p>
<figure>
<img src="screenshot-i2pbrowser.png" alt="" /><figcaption>Screenshot</figcaption>
</figure>
<h3 id="primary-goals">Primary Goals</h3>
<ol type="1">
<li>Ship known-good public keys, download a current Tor for the platform in the background, authenticate it, and launch it only if necessary.</li>
</ol>
<ul>
<li>Works on Windows, Linux, probably also OSX</li>
</ul>
<ol start="2" type="1">
<li>Supervise Tor as a ShellService plugin to I2P</li>
</ol>
<ul>
<li>Works on Linux, Windows</li>
</ul>
<ol start="3" type="1">
<li>Keep Tor up-to-date</li>
</ol>
<ul>
<li>Works on Windows, Linux, probably also OSX</li>
</ul>
<ol start="4" type="1">
<li>Work as an I2P Plugin OR as a freestanding app to be compatible with all I2P distributions</li>
</ol>
<ul>
<li>Works on Linux, Windows</li>
</ul>
<ol start="5" type="1">
<li>Download Tor Browser from an in-I2P mirror(or one of a network of in-I2P mirrors)</li>
</ol>
<ul>
<li>Not done</li>
</ul>
<h3 id="secondary-goals">Secondary Goals:</h3>
<ol type="1">
<li>Launch Tor Browser</li>
</ol>
<ul>
<li>Works on Linux, Windows, maybe OSX</li>
</ul>
<ol start="2" type="1">
<li>Configure and launch Tor browser for use with I2P</li>
</ol>
<ul>
<li>Works on Linux, Windows.</li>
</ul>
<h4 id="optional-features-i-might-add-if-there-is-interest">Optional Features I might add if there is interest</h4>
<ol type="1">
<li>Mirror the files which it downloads to an I2P Site</li>
</ol>
<ul>
<li>Probably works on everything</li>
</ul>
<ol start="2" type="1">
<li>Mirror the files which it downloads to I2P torrents</li>
</ol>
<ul>
<li>Not done</li>
</ul>
<ol start="3" type="1">
<li>Set up an onion site which announces an I2P mirror exists</li>
</ol>
<ul>
<li>Not done</li>
</ul>
<ol start="4" type="1">
<li>Use Bittorrent-over-I2P to download the Tor Browser software</li>
</ol>
<ul>
<li>Not Done</li>
</ul>
<h3 id="usage-as-a-library">Usage as a Library</h3>
<p><a href="https://pkg.go.dev/i2pgit.org/idk/i2p.plugins.tor-manager">More information at the GoDoc</a></p>
<p>This is also useful as a library for downloading a Tor Browser Bundle. This API isnt really stable, more “stabilizing.” Feel free to use it, but it may still change a little.</p>
<p>To create a new instance, use:</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode go"><code class="sourceCode go"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true"></a>client, err = tbserve.NewClient(*verbose, *lang, *system, *arch, &amp;content)</span></code></pre></div>
<p>Customize the client using the exposed variables and methods:</p>
<div class="sourceCode" id="cb2"><pre class="sourceCode go"><code class="sourceCode go"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true"></a>client.Host = *host</span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true"></a>client.Port = *port</span>
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true"></a>client.TBS.Profile = &amp;content</span>
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true"></a>client.TBS.PassThroughArgs = flag.Args()</span></code></pre></div>
<p>And serve the controller:</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode go"><code class="sourceCode go"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true"></a><span class="kw">if</span> err := client.Serve(); err != <span class="ot">nil</span> {</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true"></a> log.Fatal(err)</span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true"></a>}</span></code></pre></div>
<h3 id="similar-projects">Similar Projects:</h3>
<ul>
<li>https://github.com/micahflee/torbrowser-launcher</li>
<li>https://github.com/whonix/tb-updater</li>
</ul>
<p><a href="https://www.flaticon.com/free-icons/garlic" title="garlic icons">Garlic icons created by Icongeek26 - Flaticon</a> <a href="https://www.flaticon.com/free-icons/onion" title="onion icons">Onion icons created by Freepik - Flaticon</a></p>
<h3 id="more-screenshots">More Screenshots:</h3>
<ul>
<li><img src="screenshot.png" title="fig:" alt="Screenshot" /></li>
<li><img src="screenshot-dark.png" title="fig:" alt="Screenshot" /></li>
</ul>
</body>
</html>