A tool to automate downloading finished torrents from a seedbox
The seedbox tools will help you download all those Linux ISOs that you downloaded on your remote seedbox (whether it’s a Transmission Web, or TorrentFlux-b4rt, or a PulsedMedia seedbox) 100% automatically, without any manual intervention on your part.
With this program installed on your home computer, all you need to do is simply start a torrent in your seedbox, from anywhere you are; then, when you get back home, all your downloads will be fully downloaded at home, ready to use and enjoy.
Tools included in this set
This package contains several tools:
- leechtorrents: a tool that leeches finished downloads from a torrent seedbox to your local computer.
- configleecher: a configuration wizard to set up the clients to work properly against your seedbox.
What you need to have before using this package
- Python 2.7 on your local machine
- Python iniparse installed there
- Python requests installed there, version 0.11.1 or higher (with SSL support)
- a seedbox running TorrentFlux-b4rt or Transmission Web + API, or a PulsedMedia ruTorrent seedbox from PulsedMedia.com
- an SSH server on your seedbox
- an SSH client on your local machine
- a public key-authenticated user account in the seedbox, so that your user can log in without passwords and can read the torrents and downloads directories in the seedbox
- rsync installed on both machines
- if you are using TorrentFlux-b4rt on your seedbox:
- the command torrentinfo-console from the BitTorrent package, installed on the seedbox
- the command fluxcli installed and operational on the seedbox
- if you are using Transmission on your seedbox:
- the command transmission-remote from the Transmission package, installed on your local machine
- the API server port open so that transmission-remote can query it
- if you are using a PulsedMedia seedbox, you don’t need to do anything
You will need to install this package on your local machine.
You can install this package directly from PyPI using pip:
pip install seedboxtools
If you are on an RPM-based distribution, build an RPM from the source package and install the resulting RPM:
python setup.py bdist_rpm
Otherwise, just use the standard Python installation system:
python setup.py install
You can also run it directly from the unpacked source directory:
export PYTHONPATH=src bin/leechtorrents --help
The tools require some configuration after installation. There is a nifty configuration wizard that will set the configuration file up. Run it and answer a few questions:
The script will ask you for the necessary configuration values before you can run the tools here.
Note: Both TorrentFlux and Transmission protect their download and torrent directories using permissions. You should become part of the UNIX group they use to protect those directories, and change the permissions accordingly so you have at least read and list permissions (rx).
How to run the downloader script periodically
You can do it with cron, or in a systemd unit file.
Put this in your crontab to run it every minute:
* * * * * leechtorrents -Dql
Create a unit file:
# Listing: /etc/systemd/system/leechtorrents.service # ==================================================== [Unit] Description=Torrentleecher After=network.target [Service] Type=simple ExecStart=/usr/bin/leechtorrents -g .torrentleecher.log -ql -t 30 User=<YOUR_USERNAME_GOES_HERE> Restart=always [Install] WantedBy=network.target
Then run as root:
systemctl daemon-reload systemctl enable leechtorrents.service systemctl start leechtorrents.service