Auto Remove Torrents
This unofficial app installation script is provided for your convenience. The script is provided as-is and may not be updated or maintained by Ultra.cc. Clients are welcome to use and customize unofficial app installers for their unique needs and requirements. Unofficial support may be offered via Discord only and at the sole discretion of Ultra.cc staff. Use at your own risk and only proceed if you are comfortable managing the application on your own.
Autoremove Torrents is an open-source Python project that allows the automatic removal of torrents from various torrent clients based on configurable criteria. It can help manage disk space by deleting torrents when they are finished seeding. Here's the GitHub page of the project.
Features
- Remove torrents automatically based on ratio, seeding time, inactivity and more
- Monitor disk space and remove torrents if space runs low
- Remove oldest, biggest, smallest torrents first
- Support for all major torrent clients
- Dry run mode to test without removing
- Schedule via crontab for hands-off automation
Supported Clients
Autoremove Torrents works with the following torrent clients:
It supports connecting to the web UI for
qBittorrent, Transmission,qBittorrent andμTorrentTransmission.(not on Ultra.cc).-
For Deluge, it connects directly to the daemon via the RPC protocol.
Installation
- Connect to your Ultra.cc service via SSH
ThereExecutearethetwofollowingways to install Autoremove Torrents:command:
From PyPI
This will install the latest stable release:
pipbash install<(wget autoremove-torrents-qO- https://scripts.ultra.cc/main-v2/AutoRemove-Torrents/main.sh)
From
Source
This1
allowsand installingpress ENTER
to proceed with the developmentinstallation.
git clone https://github.com/jerrymakesjelly/autoremove-torrents.git
cd autoremove-torrents
python setup.py install --user
Configuration
Autoremove Torrents uses a YAML configuration file to define the torrent clients and removal rules. By default, Autoremove Torrents will look for a configuration file in the shell's current working directory. But, you can store the configuration file somewhere else and point to it while using Autoremove Torrents. See the below usage instructions for more information.
Client Configuration
First,The youscript will create a bare minimum configuration file located at ~/.config/autoremove-torrents/config.yml
. You will need to specifyedit connectionthe detailsconfiguration forfile eachwith torrentyour client:login credentials and removal task/strategies.
- Open the configuration file with the editor by executing the following command.
qbittorrent:nano client: qbittorrent
host: https:~//username.hostname.usbx.me/qbittorrent
username: <your-username>
password: <your-password>
deluge:
client: deluge
host: IP:Daemon port
username: <your-username>
password: <your-password>.config/autoremove-torrents/config.yml
Theclientparameter specifies the client name, whilehostcontains the URL or IP address + port.TheFindusername
andpassword
areand replace with the login credentialsforof your torrent client.- Login credentials can be found on the
webAppsUItaborofdaemon.the UCP.
- Login credentials can be found on the
- Make any other changes specific to your setup, such as removal task/strategies. See examples here.
- Exit the editor with
ctrl+x
andy
, pressENTER
to confirm. - You can test your configuration with a preview dry-run. To do so, execute the following command.
- Make sure to replace
username
with your specific Ultra service username.
- Make sure to replace
autoremove-torrents --conf=/home/username/.config/autoremove-torrents/config.yml --view
Removal Strategies
Next, define removal strategies under each client. For example:
strategies:
delete_seeds:
remove: ratio > 2
clear_space:
free_space:
min: 10
path: /downloads
action: remove-big-seeds
-
You can customize removal rules based on ratio, seed time, activity, disk space and more. See the full documentation for details on all available options.
-
Strategies will only apply to the client they are defined under. You can create multiple strategies per client.
Usage
- Specify a custom config path:
autoremove-torrents --conf=/path/to/config.yml
- Single Task:
autoremove-torrents --conf=/path/to/config.yml --task transmission
- Dry run:
autoremove-torrents --view --conf=/path/to/config.yml --task transmission
Dry run allows you to see what would be deleted without actually removing anything.
Automation
- Open Crontab using
crontab -e
. - Select
1
for the nano editor. - You can setup a cron job or scheduled task to run autoremove-torrents automatically. For example:
# Run at 2AM every day
0 2 * * * /path/to/autoremove-torrents --conf=/path/to/config.yml
- Save the crontab file using
ctrl + o
& exit usingctrl + x
. - A simple and quick resource for cron schedule expressions: Crontab Guru
Uninstallation
IfConnectinstalledto your Ultra.cc service viapip:SSH- Execute the following command:
pipbash uninstall<(wget autoremove-torrents-qO- https://scripts.ultra.cc/main-v2/AutoRemove-Torrents/main.sh)
Also, if there is a config directory left atType~/.config2orand press~/.appsENTERrunto:proceed with the uninstallation.
rm -rf ~/.config/autoremove-torrents && rm -rf ~/.apps/autoremove-torrents
For manual installs, delete the autoremove-torrents folder and any installed files/packages.