gtranslate/README.md

86 lines
2.6 KiB
Markdown

# gtranslate
Better front-end for Google Translate that is lightweight, doesn't track
you and works without JavaScript.
# Installation
```sh
git clone https://git.sr.ht/~yerinalexey/gtranslate
cd gtranslate
go build
```
Then run the server with
```sh
./gtranslate
```
If you want to use a different port:
```sh
./gtranslate -b :3000 # will run on port 3000
```
Note: if you're running it outside of development environment, you
should pass `--templates-dir` and `--static-dir` arguments pointing to
templates and static directories:
```sh
./gtranslate \
--templates-dir path/to/gtranslate/templates \
--static-dir path/to/gtranslate/static
```
Other settings (available with `./gtranslate --help`):
```
Usage of ./gtranslate:
-b, --bind string Address to bind the server to, [addr]:port (default ":5000")
--proxy string Proxy URL, with no scheme http is assumed
--static-dir string Static files directory (default "./static")
--templates-dir string Templates directory (default "./templates")
--user-agent string User-Agent header to use
```
# Using Tor
Routing requests through Tor has its benefits:
- Google will have a hard time tracking `gtranslate` servers as they act like normal Tor users
- You probably won't get banned as requests are made from different IPs
Despite that, it has some drawbacks:
- Much slower response time
- Might get capcha or some other junk that will block requests
- If doing the wrong thing, you might get your server compromised (in terms of anonymity)
- This feature is not tested in development
First of, you need to set up Tor daemon on the server. Here's a guide on
ArchWiki: [Tor].
[Tor]: https://wiki.archlinux.org/index.php/tor
With default settings, it should start a SOCKS5 proxy on localhost, port
9050.
Also, to minimize fingerprint, you need to use a very common user agent
on Tor network. And, you guessed it, get it straight from Tor Browser.
If you have one, you can just open https://httpbin.org/headers and copy
it from there. If not, the latest available is provided here:
[Tor Browser's User-Agent][tor-browser-user-agent].
[tor-browser-user-agent]: https://tor.stackexchange.com/questions/4890/tor-browser-user-agent-strings/21524#21524
Full setup:
```sh
./gtranslate \
--user-agent "Mozilla/5.0 (Windows NT 10.0; rv:68.0) Gecko/20100101 Firefox/68.0" \
--proxy "socks5://localhost:9050" \
...
```
If you have managed to set it up or experienced issues with this guide,
feel free to shoot an email to my [public inbox].
[public inbox]: https://lists.sr.ht/~yerinalexey/public-inbox