Skip to content
pingfuPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

19 Commits

Folders and files

Repository files navigation

dlt

A dead simple torrent downloader, like curl, but for torrents.

dlt downloading a torrent

dlt is a single binary with nothing to install that exits when the download is done. A lightweight torrent client for when you're not seeding, and don't want to install anything, or change the file system other than the torrent being downloaded. No pause, queue or state is maintained. dlt downloads the torrent and goes away.

Use with torrents or magnet links:

user@host:~$ dlt https://webtorrent.io/torrents/big-buck-bunny.torrent
user@host:~$ dlt "magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c&dn=Big+Buck+Bunny&tr=udp://tracker.opentrackr.org:1337"

Full torrent clients can be heavy, built to manage a library of active torrents: background services, tray icons, web UIs, open ports, download and upload queues, ratios, scheduling. dlt is the opposite.

  • Single executable. Drop it in a folder, or on a USB stick, and run it.
  • Lightweight. No daemon, web server, database, or tray icon.
  • Foreground only. Downloads and goes away. Nothing left running.
  • One torrent per run. No queue, no pause. Run again after an interruption and it checks what's already on disk and fetches the rest.
  • Leaves no trace. The download is the only thing written. No config, no state, no history.
  • Tracker and DHT. Probes every tracker and picks the strongest, with DHT alongside. --no-dht for tracker only. No local peer discovery.
  • Download only. No uploads, no open ports, unless you pass --seed.

Install

Download the binary for your platform from the latest release.

macOS

Install for all users into /usr/local/bin, which is on everyone's PATH. Use dlt-osx-arm64 on Apple Silicon, or dlt-osx-x64 on Intel.

sudo curl -L -o /usr/local/bin/dlt https://github.com/pingfu/dlt/releases/latest/download/dlt-osx-arm64
sudo chmod +x /usr/local/bin/dlt

If you downloaded it with a browser instead, macOS quarantines the file and Gatekeeper will refuse to run it. Move it into place and clear the flag:

sudo mv ~/Downloads/dlt-osx-arm64 /usr/local/bin/dlt
sudo chmod +x /usr/local/bin/dlt
sudo xattr -d com.apple.quarantine /usr/local/bin/dlt

Open a new terminal, or run hash -r, then check it with dlt --version.

Usage

dlt <magnet | file.torrent | https://.../file.torrent> [--out <dir>] [--select-tracker] [--seed] [--no-dht]
Option Description
--out <dir> Save into this directory. Created if missing. Default is the current directory.
--select-tracker Prompts the user to select which tracker to use, instead of picking the one with the most seeds.
--seed Turn uploads on, accept incoming peers, and keep running as a seed after the download. Stop it with Ctrl+C.
--no-dht Tracker only. The DHT binds one UDP port for its own replies; this removes it. A magnet with no working tracker then fails instead of searching.
--version Print the version and exit.

Alternatives

If you want a client that runs in the background, seeds for the long haul, keeps a warm DHT routing table, pauses and resumes, queues torrents, picks individual files out of a multi-file torrent, or forwards ports, use a full one:

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages