yoink MrMarble
winget install --id=MrMarble.yoink -e
yoink is an app designed to help you download torrents marked as free leech in order to mantain your ratio in private trackers.
Yoink is a software tool designed to help users maintain their seeding ratios on private trackers by automating the download of torrents marked as free leech.
Key Features:
- Integration with Prowlarr as an indexer to search for free leech torrents.
- Automatic connection to qBitTorrent to add and manage downloaded torrents.
- Configurable filters for indexers, including maximum seeders, file size, and minimum leechers.
- Support for multiple trackers with customizable settings for each indexer.
- Environment variable support to override configuration settings securely.
Audience & Benefit:
Ideal for torrent users who prioritize maintaining their seeding ratios on private trackers. Yoink streamlines the process of downloading free leech torrents, helping users effortlessly contribute to their tracker communities while managing downloads efficiently.
Yoink can be installed via winget and is designed with a focus on simplicity and automation for those looking to enhance their torrent management experience.
README
Yoink - Free leech manager
> An exclamation that transfers ownership of an object to the person who utters it, regardless of previous property rights.
yoink
is an app designed to help you download torrents marked as free leech
in order to mantain your ratio in private trackers.
yoink
can search all your trackers using prowlarr as the indexer and automatically add them to your qBitTorrent client to start seeding
Basic behavior
- Get a list of torrents marked as freeleech from prowlarr.
- Connect to qBitTorrent and filter-out any already downloaded torrent.
- Upload remaining torrents to qBitTorrent and start seeding.
Configuration
Some properties can be passed by environment variable.
File
total_freeleech_size: "200GB" # Max space to use for downloads. If 0, no limit is applied
category: "FreeLeech" # Category to use for downloads.
paused: true # Whether to pause torrents after adding them to qBittorrent
qbittorrent: # Connection details for qBittorrent
host: "http://localhost:8080"
username: "admin"
password: "adminadmin"
prowlarr: # Connection details for Prowlarr
host: "http://localhost:8081"
api_key: "1234567890"
indexers: # List of indexers to use. Filters out any indexers not in this list
- id: 1 # ID of the indexer in Prowlarr
max_seeders: 20 # Maximum number of seeders to allow. 0 = no limit
max_size: "50GB" # Maximum file size to allow. 0 = no limit
min_leechers: 0 # Minimum number of leechers to allow. 0 = no limit
- id: 3 # ID of the indexer in Prowlarr
max_seeders: 10 # Maximum number of seeders to allow. 0 = no limit
max_size: "50GB" # Maximum file size to allow. 0 = no limit
min_leechers: 0 # Minimum number of leechers to allow. 0 = no limit
Environment
Environment variables will override config file
Environment variables:
TOTAL_FREELEECH_SIZE string
Max space to use for downloads. If 0, no limit is applied (default "200GB")
CATEGORY string
Category to use for downloads. (default "FreeLeech")
PAUSED bool
Whether to pause torrents after adding them to qBittorrent (default "true")
QBIT_HOST string
Connection details for qBittorrent
QBIT_USER string
Connection details for qBittorrent
QBIT_PASS string
Connection details for qBittorrent
PROWLARR_HOST string
Connection details for Prowlarr
PROWLARR_API_KEY string
Connection details for Prowlarr
Usage
CLI parameters will override environment variables
$ yoink --help
Usage: yoink --config=STRING
Yoink! Command line tool for finding and downloading freeleech torrents.
Flags:
-h, --help Show context-sensitive help.
-c, --config=STRING configuration file.
--dry-run Dry run. Don't upload torrents to qBittorrent.
--version print version information and quit
Commands:
indexers --config=STRING
List indexers.
print-config --config=STRING
Print the configuration.
Run "yoink --help" for more information on a command.
Example:
# don't save sensitive info in config file
$ PROWLARR_API_KEY=XXXXXXXXXX QBIT_PASS=SecurePassword yoink --config ./config.yaml
Docker:
$ docker run -e "PROWLARR_API_KEY=XXXXXXXXXX" \
-e "QBIT_PASS=SecurePassword" \
-v ./config.yaml:/config.yaml:ro \
ghcr.io/mrmarble/yoink:latest