2021-12-23 03:25:59 +08:00
# This is an example configuration file that documents all the options.
# It will need to be modified for your specific use case.
2022-01-01 08:28:45 +08:00
# Please refer to the link below for more details on how to set up the configuration file
# https://github.com/StuffAnThings/qbit_manage/wiki/Config-Setup
2021-12-23 03:25:59 +08:00
2022-08-22 02:40:57 +08:00
commands:
# The commands defined below will IGNORE any commands used in command line and docker env variables.
dry_run: True
cross_seed: False
recheck: False
cat_update: False
tag_update: False
rem_unregistered: False
tag_tracker_error: False
rem_orphaned: False
tag_nohardlinks: False
2023-05-31 09:26:54 +08:00
share_limits: False
skip_qb_version_check: False
2022-09-26 09:48:57 +08:00
skip_cleanup: False
2022-08-22 02:40:57 +08:00
2021-02-20 13:04:02 +08:00
qbt:
2022-08-14 04:49:02 +08:00
# qBittorrent parameters
2021-11-09 11:31:47 +08:00
host: "localhost:8080"
user: "username"
pass: "password"
2021-03-02 09:59:47 +08:00
2021-12-27 06:19:17 +08:00
settings:
2023-05-31 09:39:49 +08:00
force_auto_tmm: False # Will force qBittorrent to enable Automatic Torrent Management for each torrent.
tracker_error_tag: issue # Will set the tag of any torrents that do not have a working tracker.
2023-04-01 23:25:01 +08:00
nohardlinks_tag: noHL # Will set the tag of any torrents with no hardlinks.
2023-06-12 04:31:59 +08:00
share_limits_tag: ~share_limit # Will add this tag when applying share limits to provide an easy way to filter torrents by share limit group/priority for each torrent
2023-03-14 09:53:04 +08:00
ignoreTags_OnUpdate: # When running tag-update function, it will update torrent tags for a given torrent even if the torrent has at least one or more of the tags defined here. Otherwise torrents will not be tagged if tags exist.
2022-01-14 04:00:05 +08:00
- noHL
- issue
- cross-seed
2021-02-27 04:59:52 +08:00
directory:
# Do not remove these
2022-01-11 11:00:43 +08:00
# Cross-seed var: </your/path/here/> # Output directory of cross-seed
# root_dir var: </your/path/here/> # Root downloads directory used to check for orphaned files, noHL, and RecycleBin.
# <OPTIONAL> remote_dir var: </your/path/here/> # Path of docker host mapping of root_dir.
2023-10-14 23:08:33 +08:00
# remote_dir must be set if you're running qbit_manage locally and qBittorrent/cross_seed is in a docker
# remote_dir should not be set if qbit_manage is running in a container
2022-01-11 11:00:43 +08:00
# <OPTIONAL> recycle_bin var: </your/path/here/> # Path of the RecycleBin folder. Default location is set to remote_dir/.RecycleBin
# <OPTIONAL> torrents_dir var: </your/path/here/> # Path of the your qbittorrent torrents directory. Required for `save_torrents` attribute in recyclebin
2023-06-06 01:55:28 +08:00
# <OPTIONAL> orphaned_dir var: </your/path/here/> # Path of the the Orphaned Data folder. This is similar to RecycleBin, but only for orphaned data.
2021-11-09 11:31:47 +08:00
cross_seed: "/your/path/here/"
root_dir: "/data/torrents/"
remote_dir: "/mnt/user/data/torrents/"
2021-12-31 08:21:41 +08:00
recycle_bin: "/mnt/user/data/torrents/.RecycleBin"
2022-01-01 08:28:45 +08:00
torrents_dir: "/qbittorrent/data/BT_backup"
2022-09-25 04:11:55 +08:00
orphaned_dir: "/data/torrents/orphaned_data"
2021-03-12 06:41:17 +08:00
2021-02-20 13:04:02 +08:00
cat:
2022-08-14 04:49:02 +08:00
# Category & Path Parameters
2022-01-11 11:00:43 +08:00
# <Category Name> : <save_path> # Path of your save directory.
2021-11-09 11:31:47 +08:00
movies: "/data/torrents/Movies"
2021-12-28 22:24:21 +08:00
tv: "/data/torrents/TV"
2021-02-27 19:05:17 +08:00
2022-08-14 04:49:02 +08:00
cat_change:
# This moves all the torrents from one category to another category. This executes on --cat-update
# WARNING: if the paths are different and Default Torrent Management Mode is set to automatic the files could be moved !!!
# <Old Category Name> : <New Category>
Radarr-HD.cross-seed: movies-hd
Radarr-UHD.cross-seed: movies-uhd
movies-hd.cross-seed: movies-hd
movies-uhd.cross-seed: movies-uhd
2021-12-26 21:49:20 +08:00
tracker:
2023-03-14 09:53:04 +08:00
# Mandatory
2022-08-14 04:49:02 +08:00
# Tag Parameters
2023-06-12 05:19:43 +08:00
# <Tracker URL Keyword>: # <MANDATORY> This is the keyword in the tracker url. You can define multiple tracker urls by splitting with `|` delimiter
2022-01-14 04:00:05 +08:00
# <MANDATORY> Set tag name. Can be a list of tags or a single tag
2021-11-29 02:55:55 +08:00
# tag: <Tag Name>
2023-10-14 23:08:33 +08:00
# <OPTIONAL> Set the category based on tracker URL. This category option takes priority over the category defined by save directory
# cat: <Category Name>
2021-12-20 02:51:52 +08:00
# <OPTIONAL> Set this to the notifiarr react name. This is used to add indexer reactions to the notifications sent by Notifiarr
2021-12-17 22:19:40 +08:00
# notifiarr: <notifiarr indexer>
2021-12-14 23:18:10 +08:00
animebytes.tv:
tag: AnimeBytes
2021-12-20 02:51:52 +08:00
notifiarr: animebytes
2021-11-29 02:55:55 +08:00
avistaz:
2022-01-14 04:00:05 +08:00
tag:
- Avistaz
- tag2
- tag3
2021-12-20 02:51:52 +08:00
notifiarr: avistaz
2021-12-14 23:18:10 +08:00
beyond-hd:
2022-01-14 04:00:05 +08:00
tag: [Beyond-HD, tag2, tag3]
2021-12-17 22:19:40 +08:00
notifiarr: beyondhd
2021-12-14 23:18:10 +08:00
blutopia:
tag: Blutopia
2021-12-20 02:51:52 +08:00
notifiarr: blutopia
2021-12-14 23:18:10 +08:00
cartoonchaos:
tag: CartoonChaos
2021-12-18 03:44:54 +08:00
digitalcore:
2021-11-29 02:55:55 +08:00
tag: DigitalCore
2021-12-23 03:25:59 +08:00
notifiarr: digitalcore
2021-11-29 02:55:55 +08:00
gazellegames:
tag: GGn
hdts:
tag: HDTorrents
2021-12-14 23:18:10 +08:00
landof.tv:
tag: BroadcasTheNet
2021-12-17 22:19:40 +08:00
notifiarr: broadcasthenet
2021-12-14 23:18:10 +08:00
myanonamouse:
tag: MaM
passthepopcorn:
tag: PassThePopcorn
2021-12-17 22:19:40 +08:00
notifiarr: passthepopcorn
2021-12-14 23:18:10 +08:00
privatehd:
tag: PrivateHD
2021-12-17 22:19:40 +08:00
notifiarr:
2021-12-14 23:18:10 +08:00
torrentdb:
tag: TorrentDB
2021-12-23 03:25:59 +08:00
notifiarr: torrentdb
2023-06-12 05:19:43 +08:00
torrentleech|tleechreload:
2021-12-14 23:18:10 +08:00
tag: TorrentLeech
2021-12-23 03:25:59 +08:00
notifiarr: torrentleech
2021-12-14 23:18:10 +08:00
tv-vault:
tag: TV-Vault
2022-12-04 00:07:52 +08:00
# The "other" key is a special keyword and if defined will tag any other trackers that don't match the above trackers into this tag
other:
tag: other
2021-09-25 08:58:56 +08:00
nohardlinks:
2023-05-20 09:52:06 +08:00
# Tag Movies/Series that are not hard linked outside the root directory
2021-09-25 08:58:56 +08:00
# Mandatory to fill out directory parameter above to use this function (root_dir/remote_dir)
2021-09-27 04:23:50 +08:00
# This variable should be set to your category name of your completed movies/completed series in qbit. Acceptable variable can be any category you would like to tag if there are no hardlinks found
2023-05-31 10:38:46 +08:00
- movies-completed-4k
- series-completed-4k
- movies-completed:
# <OPTIONAL> exclude_tags var: Will exclude torrents with any of the following tags when searching through the category.
exclude_tags:
- Beyond-HD
- AnimeBytes
- MaM
2021-12-23 03:25:59 +08:00
# Can have additional categories set with separate ratio/seeding times defined.
2023-05-31 10:38:46 +08:00
- series-completed:
# <OPTIONAL> exclude_tags var: Will exclude torrents with any of the following tags when searching through the category.
exclude_tags:
- Beyond-HD
- BroadcasTheNet
2023-05-31 09:26:54 +08:00
share_limits:
2023-05-31 09:39:49 +08:00
# Control how torrent share limits are set depending on the priority of your grouping
2023-06-05 02:06:00 +08:00
# Each torrent will be matched with the share limit group with the highest priority that meets the group filter criteria.
# Each torrent can only be matched with one share limit group
2023-05-31 09:39:49 +08:00
# This variable is mandatory and is a text defining the name of your grouping. This can be any string you want
2023-05-31 09:26:54 +08:00
noHL:
# <MANDATORY> priority: <int/float> # This is the priority of your grouping. The lower the number the higher the priority
priority: 1
2023-06-01 05:01:40 +08:00
# <OPTIONAL> include_all_tags: <list> # Filter the group based on one or more tags. Multiple include_all_tags are checked with an AND condition
# All tags defined here must be present in the torrent for it to be included in this group
include_all_tags:
2023-05-31 09:39:49 +08:00
- noHL
2023-06-01 05:01:40 +08:00
# <OPTIONAL> include_any_tags: <list> # Filter the group based on one or more tags. Multiple include_any_tags are checked with an OR condition
# Any tags defined here must be present in the torrent for it to be included in this group
include_any_tags:
- noHL
# <OPTIONAL> exclude_all_tags: <list> # Filter by excluding one or more tags. Multiple exclude_all_tags are checked with an AND condition
# This is useful to combine with the category filter to exclude one or more tags from an entire category
# All tags defined here must be present in the torrent for it to be excluded in this group
exclude_all_tags:
- Beyond-HD
# <OPTIONAL> exclude_any_tags: <list> # Filter by excluding one or more tags. Multiple exclude_any_tags are checked with an OR condition
2023-05-31 09:26:54 +08:00
# This is useful to combine with the category filter to exclude one or more tags from an entire category
2023-06-01 05:01:40 +08:00
# Any tags defined here must be present in the torrent for it to be excluded in this group
exclude_any_tags:
2023-05-31 09:39:49 +08:00
- Beyond-HD
2023-06-07 18:22:38 +08:00
# <OPTIONAL> categories: <list> # Filter by including one or more categories. Multiple categories are checked with an OR condition
2023-05-31 09:26:54 +08:00
# Since one torrent can only be associated with a single category, multiple categories are checked with an OR condition
categories:
2023-05-31 09:39:49 +08:00
- RadarrComplete
- SonarrComplete
2023-05-31 09:26:54 +08:00
# <OPTIONAL> max_ratio <float>: Will set the torrent Maximum share ratio until torrent is stopped from seeding/uploading.
2023-06-05 02:06:00 +08:00
# Will default to -1 (no limit) if not specified for the group.
2023-05-31 09:26:54 +08:00
max_ratio: 5.0
# <OPTIONAL> max_seeding_time <int>: Will set the torrent Maximum seeding time (minutes) until torrent is stopped from seeding.
2023-06-05 02:06:00 +08:00
# Will default to -1 (no limit) if not specified for the group.
2023-05-31 09:26:54 +08:00
max_seeding_time: 129600
# <OPTIONAL> min_seeding_time <int>: Will prevent torrent deletion by cleanup variable if torrent has not yet minimum seeding time (minutes).
2023-06-25 00:40:20 +08:00
# If the torrent has not yet reached this minimum seeding time, it will change the share limits back to no limits and resume the torrent to continue seeding.
2023-06-05 02:06:00 +08:00
# Will default to 0 if not specified for the group.
2023-03-31 23:16:46 +08:00
min_seeding_time: 43200
2023-10-14 23:08:33 +08:00
# <OPTIONAL> last_active <int>: Will prevent torrent deletion by cleanup variable if torrent has been active within the last x minutes.
# If the torrent has been active within the last x minutes, it will change the share limits back to no limits and resume the torrent to continue seeding.
# Will default to 0 if not specified for the group.
last_active: 43200
2023-05-31 09:26:54 +08:00
# <OPTIONAL> Limit Upload Speed <int>: Will limit the upload speed KiB/s (KiloBytes/second) (`-1` : No Limit)
limit_upload_speed: 0
# <OPTIONAL> cleanup <bool>: WARNING!! Setting this as true Will remove and delete contents of any torrents that satisfies the share limits
cleanup: false
# <OPTIONAL> resume_torrent_after_change <bool>: This variable will resume your torrent after changing share limits. Default is true
resume_torrent_after_change: true
2023-06-17 18:55:01 +08:00
# <OPTIONAL> add_group_to_tag <bool>: This adds your grouping as a tag with a prefix defined in settings . Default is true
# Example: A grouping defined as noHL will have a tag set to ~share_limit.noHL (if using the default prefix)
2023-05-31 09:26:54 +08:00
add_group_to_tag: true
2023-06-25 00:40:20 +08:00
# <OPTIONAL> min_num_seeds <int>: This will prevent torrent deletion by cleanup variable if the number of seeds is less than the value set here.
# If the torrent has less number of seeds than the min_num_seeds, the share limits will be changed back to no limits and resume the torrent to continue seeding.
# Will default to 0 if not specified for the group.
min_num_seeds: 0
2023-05-31 09:26:54 +08:00
cross-seed:
priority: 2
2023-06-05 00:33:15 +08:00
include_all_tags:
- cross-seed
2023-05-31 09:26:54 +08:00
max_seeding_time: 10200
cleanup: false
PTP:
priority: 3
2023-06-05 00:33:15 +08:00
include_all_tags:
2023-05-31 09:39:49 +08:00
- PassThePopcorn
2023-05-31 09:26:54 +08:00
max_ratio: 2.0
max_seeding_time: 130000
cleanup: false
default:
priority: 999
max_ratio: -1
max_seeding_time: -1
cleanup: false
2021-11-20 10:11:13 +08:00
recyclebin:
2022-08-14 04:49:02 +08:00
# Recycle Bin method of deletion will move files into the recycle bin (Located in /root_dir/.RecycleBin) instead of directly deleting them in qbit
# By default the Recycle Bin will be emptied on every run of the qbit_manage script if empty_after_x_days is defined.
2021-11-20 10:11:13 +08:00
enabled: true
2022-10-29 23:19:09 +08:00
# <OPTIONAL> empty_after_x_days var:
2022-01-01 08:28:45 +08:00
# Will automatically remove all files and folders in recycle bin after x days. (Checks every script run)
# If this variable is not defined it, the RecycleBin will never be emptied.
# WARNING: Setting this variable to 0 will delete all files immediately upon script run!
2021-11-22 10:28:20 +08:00
empty_after_x_days: 60
2022-01-01 08:28:45 +08:00
# <OPTIONAL> save_torrents var:
# If this option is set to true you MUST fill out the torrents_dir in the directory attribute.
# This will save a copy of your .torrent and .fastresume file in the recycle bin before deleting it from qbittorrent
save_torrents: true
2022-01-03 06:06:51 +08:00
# <OPTIONAL> split_by_category var:
2022-10-29 23:19:09 +08:00
# This will split the recycle bin folder by the save path defined in the `cat` attribute
2022-01-03 06:06:51 +08:00
# and add the base folder name of the recycle bin that was defined in the `recycle_bin` sub-attribute under directory.
split_by_category: false
2021-11-22 10:28:20 +08:00
orphaned:
2022-08-14 04:49:02 +08:00
# Orphaned files are those in the root_dir download directory that are not referenced by any active torrents.
2022-09-26 09:48:57 +08:00
# Will automatically remove all files and folders in orphaned data after x days. (Checks every script run)
# If this variable is not defined it, the orphaned data will never be emptied.
# WARNING: Setting this variable to 0 will delete all files immediately upon script run!
empty_after_x_days: 60
2021-12-23 03:25:59 +08:00
# File patterns that will not be considered orphaned files. Handy for generated files that aren't part of the torrent but belong with the torrent's files
exclude_patterns:
- "**/.DS_Store"
- "**/Thumbs.db"
- "**/@eaDir"
- "/data/torrents/temp/**"
- "**/*.!qB"
2023-06-26 10:29:05 +08:00
- "**/*_unpackerred"
2021-12-17 22:19:40 +08:00
2021-12-19 01:38:41 +08:00
apprise:
2022-08-14 04:49:02 +08:00
# Apprise integration with webhooks
# Leave Empty/Blank to disable
2021-12-23 03:25:59 +08:00
# Mandatory to fill out the url of your apprise API endpoint
2021-12-19 01:38:41 +08:00
api_url: http://apprise-api:8000
2021-12-23 03:25:59 +08:00
# Mandatory to fill out the notification url/urls based on the notification services provided by apprise. https://github.com/caronc/apprise/wiki
2021-12-19 01:38:41 +08:00
notify_url:
2021-12-17 22:19:40 +08:00
notifiarr:
2022-08-14 04:49:02 +08:00
# Notifiarr integration with webhooks
# Leave Empty/Blank to disable
2021-12-23 03:25:59 +08:00
# Mandatory to fill out API Key
2021-12-17 22:19:40 +08:00
apikey: ####################################
2021-12-23 03:29:13 +08:00
# <OPTIONAL> Set to a unique value (could be your username on notifiarr for example)
2021-12-18 09:21:27 +08:00
instance:
2021-12-17 22:19:40 +08:00
webhooks:
2022-08-14 04:49:02 +08:00
# Webhook notifications:
# Possible values:
# Set value to notifiarr if using notifiarr integration
# Set value to apprise if using apprise integration
# Set value to a valid webhook URL
2023-03-14 09:53:04 +08:00
# Set value to nothing (leave Empty/Blank) to disable
2021-12-19 05:55:38 +08:00
error: https://mywebhookurl.com/qbt_manage
2021-12-17 22:19:40 +08:00
run_start: notifiarr
2021-12-19 05:55:38 +08:00
run_end: apprise
2021-12-17 22:19:40 +08:00
function:
2021-12-20 02:51:52 +08:00
cross_seed: https://mywebhookurl.com/qbt_manage
recheck: notifiarr
cat_update: apprise
tag_update: notifiarr
rem_unregistered: notifiarr
2022-01-11 11:00:43 +08:00
tag_tracker_error: notifiarr
2021-12-20 02:51:52 +08:00
rem_orphaned: notifiarr
tag_nohardlinks: notifiarr
2023-06-05 02:06:00 +08:00
share_limits: notifiarr
2022-09-26 09:48:57 +08:00
cleanup_dirs: notifiarr
2021-12-28 03:53:24 +08:00
bhd:
2022-08-14 04:49:02 +08:00
# BHD Integration used for checking unregistered torrents
2022-10-29 23:19:09 +08:00
apikey: