https://github.com/sweetbbak/tget
wget but for torrents
https://github.com/sweetbbak/tget
Last synced: 4 months ago
JSON representation
wget but for torrents
- Host: GitHub
- URL: https://github.com/sweetbbak/tget
- Owner: sweetbbak
- License: mit
- Created: 2024-03-02T05:45:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-20T19:42:21.000Z (about 1 year ago)
- Last Synced: 2024-03-20T20:47:46.700Z (about 1 year ago)
- Language: Go
- Size: 224 KB
- Stars: 31
- Watchers: 1
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
wget but for torrents
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.```sh
go install github.com/sweetbbak/tget/cmd/tget@latest
```With Nix (warning, these are my first ever flakes.)
```sh
nix profile install github:sweetbbak/tget
```Build from source
```sh
git clone https://github.com/sweetbbak/tget.git && cd toru
go build -o tget .
```you can also use the justfile
```sh
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:
```sh
go tool dist list
```then use the environment variables `GOOS` and `GOARCH` before running
the build command.Example:
```sh
GOOS=linux GOARCH=arm64 go build -o tget
```## Examples
download a torrent from a magnet:
```sh
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:
```sh
tget --ipv4 --output=/path/to/output --torrent "magnet:..."```
Use a Proxy and an IP Blocklist:
```sh
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.## Changelog
07/14/2024 - added support for setting internal host and port or port through `--proxy` and `--torrent-port` respectively
and added support for setting a upload/download rate limit in Kilobytes per second through `--limit`## 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!