sweetbbak / tget

wget but for torrents

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


wget but for torrents

example of toru in progress

Introducing tget, a user-friendly command-line tool for effortless torrent downloading.

Install

Install Go Install go This project requires go 1.21.7 or higher.
go install github.com/sweetbbak/tget@latest

With Nix (warning, these are my first ever flakes.)

nix profile install github:sweetbbak/tget
Build from source
git clone https://github.com/sweetbbak/tget.git && cd toru
go build -o tget .

you can also use the justfile

git clone https://github.com/sweetbbak/tget.git && cd tget
just

Building for different platforms and architectures

Run to find your target architecture and platform:

go tool dist list

then use the environment variables GOOS and GOARCH before running the build command.

Example:

GOOS=linux GOARCH=arm64 go build -o tget

Examples

download a torrent from a magnet:

tget --torrent "magnet:..."
tget --torrent "/path/to/file.torrent"
tget --torrent "https://example.tld/files/file.torrent"
# or you can non-explicitly supply the same arguments without a flag if you wish
tget "magnet:..."

Use IPv4 (instead of IPv6) and specify an output directory:

tget --ipv4 --output=/path/to/output --torrent "magnet:..."

Use a Proxy and an IP Blocklist:

tget                       \
  --ipv4                   \
  --output=/path/to/output \
  --proxy=123.123.123.1    \
  --blocklist https://myblocklist/ip-blocklist.txt \
  --torrent "magnet:..."

You can supply a blocklist from a remote URL or locally on the filesystem. Currently, this only supports non-compressed and non-packed blocklists but that will come in the future.

Support

Consider creating a PR, taking up a minor issue on the TODO list, leaving an issue to help improve functionality or buy me a coffee!

moe-visitor-counter

About

wget but for torrents

License:MIT License


Languages

Language:Go 93.2%Language:Nix 6.1%Language:Just 0.7%