An open API service indexing awesome lists of open source software.

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

Awesome Lists containing this project

README

        












wget but for torrents

![example of toru in progress](assets/ex.png)

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!

![moe-visitor-counter](https://count.getloli.com/get/@sweetbbak?theme=asoul)