2022-01-14 16:01:28 +00:00
|
|
|
# i2p.plugins.tor-updater
|
|
|
|
|
2022-01-23 11:42:23 -05:00
|
|
|
A Tor package updater and runner as an I2P Plugin. This plugin is
|
2022-02-07 15:54:51 -05:00
|
|
|
usable on Windows and Linux for now. OSX support is planned soon.
|
2022-01-16 16:07:40 -05:00
|
|
|
|
2022-01-23 11:42:23 -05:00
|
|
|
Usage:
|
|
|
|
------
|
|
|
|
|
|
|
|
```sh
|
2022-01-31 02:13:04 -05:00
|
|
|
Usage of ./i2p.plugins.tor-manager:
|
2022-01-31 02:14:28 -05:00
|
|
|
|
2022-01-31 02:13:04 -05:00
|
|
|
-apparmor
|
|
|
|
Generate apparmor rules
|
2022-01-23 11:42:23 -05:00
|
|
|
-arch string
|
|
|
|
OS/arch to download (default "64")
|
2022-01-31 02:13:04 -05:00
|
|
|
-bemirror
|
|
|
|
Act as an in-I2P mirror when you're done downloading
|
2022-01-29 01:18:37 -05:00
|
|
|
-directory string
|
|
|
|
Directory operate in
|
|
|
|
-host string
|
|
|
|
Host to serve on (default "127.0.0.1")
|
2022-01-23 11:42:23 -05:00
|
|
|
-i2pbrowser
|
|
|
|
Open I2P in Tor Browser
|
|
|
|
-lang string
|
|
|
|
Language to download
|
|
|
|
-os string
|
|
|
|
OS/arch to download (default "linux")
|
2022-01-29 01:18:37 -05:00
|
|
|
-port int
|
|
|
|
Port to serve on (default 7695)
|
2022-01-31 02:13:04 -05:00
|
|
|
-shortcuts
|
|
|
|
Create desktop shortcuts
|
2022-01-23 11:42:23 -05:00
|
|
|
-torbrowser
|
|
|
|
Open Tor Browser
|
2022-01-29 01:18:37 -05:00
|
|
|
-verbose
|
|
|
|
Verbose output
|
2022-01-23 11:42:23 -05:00
|
|
|
```
|
|
|
|
|
2022-01-24 11:21:23 -05:00
|
|
|
Status:
|
|
|
|
-------
|
|
|
|
|
2022-01-24 17:11:19 -05:00
|
|
|

|
|
|
|
|
2022-01-24 11:21:23 -05:00
|
|
|
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.
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
2022-01-30 18:43:08 -05:00
|
|
|

|
2022-01-24 17:11:19 -05:00
|
|
|
|
2022-01-23 11:42:23 -05:00
|
|
|
### Primary Goals
|
|
|
|
|
2022-01-23 13:16:43 -05:00
|
|
|
1. Ship known-good public keys, download a current Tor for the platform in the background, authenticate it, and launch it only if necessary.
|
2022-01-23 11:42:23 -05:00
|
|
|
- Works on Windows, Linux, probably also OSX
|
2022-01-23 13:16:43 -05:00
|
|
|
2. Supervise Tor as a ShellService plugin to I2P
|
2022-01-30 03:17:08 -05:00
|
|
|
- Works on Linux, Windows
|
2022-01-23 13:16:43 -05:00
|
|
|
3. Keep Tor up-to-date
|
2022-01-23 11:42:23 -05:00
|
|
|
- Works on Windows, Linux, probably also OSX
|
2022-01-23 13:16:43 -05:00
|
|
|
4. Work as an I2P Plugin OR as a freestanding app to be compatible with all I2P distributions
|
2022-01-30 03:17:08 -05:00
|
|
|
- Works on Linux, Windows
|
2022-01-23 13:16:43 -05:00
|
|
|
5. Download Tor Browser from an in-I2P mirror(or one of a network of in-I2P mirrors)
|
2022-01-23 11:42:23 -05:00
|
|
|
- Not done
|
|
|
|
|
|
|
|
### Secondary Goals:
|
|
|
|
|
2022-01-23 13:16:43 -05:00
|
|
|
1. Launch Tor Browser
|
2022-01-30 03:51:53 -05:00
|
|
|
- Works on Linux, Windows, maybe OSX
|
2022-01-23 13:16:43 -05:00
|
|
|
2. Configure and launch Tor browser for use with I2P
|
2022-01-30 03:51:53 -05:00
|
|
|
- Works on Linux, Windows.
|
2022-01-23 11:42:23 -05:00
|
|
|
|
|
|
|
#### Optional Features I might add if there is interest
|
|
|
|
|
2022-01-23 13:16:43 -05:00
|
|
|
1. Mirror the files which it downloads to an I2P Site
|
2022-02-07 15:54:51 -05:00
|
|
|
- Probably works on everything
|
2022-01-23 13:16:43 -05:00
|
|
|
2. Mirror the files which it downloads to I2P torrents
|
2022-02-07 15:54:51 -05:00
|
|
|
- Not done
|
2022-01-23 13:16:43 -05:00
|
|
|
3. Set up an onion site which announces an I2P mirror exists
|
2022-02-07 15:54:51 -05:00
|
|
|
- Not done
|
2022-01-23 13:16:43 -05:00
|
|
|
4. Use Bittorrent-over-I2P to download the Tor Browser software
|
2022-02-07 15:54:51 -05:00
|
|
|
- Not Done
|
2022-01-23 11:42:23 -05:00
|
|
|
|
2022-02-07 15:44:06 -05:00
|
|
|
### Usage as a Library
|
|
|
|
|
|
|
|
[More information at the GoDoc](https://pkg.go.dev/i2pgit.org/idk/i2p.plugins.tor-manager)
|
|
|
|
|
|
|
|
This is also useful as a library for downloading a Tor Browser Bundle. This API
|
|
|
|
isn't really stable, more "stabilizing." Feel free to use it, but it may still
|
|
|
|
change a little.
|
|
|
|
|
|
|
|
To create a new instance, use:
|
|
|
|
|
|
|
|
``` Go
|
|
|
|
client, err = tbserve.NewClient(*verbose, *lang, *system, *arch, &content)
|
|
|
|
```
|
|
|
|
|
|
|
|
Customize the client using the exposed variables and methods:
|
|
|
|
|
|
|
|
``` Go
|
|
|
|
client.Host = *host
|
|
|
|
client.Port = *port
|
|
|
|
client.TBS.Profile = &content
|
|
|
|
client.TBS.PassThroughArgs = flag.Args()
|
|
|
|
```
|
|
|
|
|
|
|
|
And serve the controller:
|
|
|
|
|
|
|
|
``` Go
|
|
|
|
if err := client.Serve(); err != nil {
|
|
|
|
log.Fatal(err)
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2022-01-23 11:42:23 -05:00
|
|
|
### Similar Projects:
|
|
|
|
|
|
|
|
- https://github.com/micahflee/torbrowser-launcher
|
|
|
|
- https://github.com/whonix/tb-updater
|
2022-01-28 00:09:18 -05:00
|
|
|
|
|
|
|
<a href="https://www.flaticon.com/free-icons/garlic" title="garlic icons">Garlic icons created by Icongeek26 - Flaticon</a>
|
2022-01-30 18:43:08 -05:00
|
|
|
<a href="https://www.flaticon.com/free-icons/onion" title="onion icons">Onion icons created by Freepik - Flaticon</a>
|
|
|
|
|
|
|
|
### More Screenshots:
|
|
|
|
|
|
|
|
- 
|
|
|
|
- 
|