#+title: admin-scripts
#+options: toc:nil
These are scripts I use to automate various sysadmin tasks.
** bin
- ~add_qbt_trackers.py~ : Fetches torrent tracker URLs from plaintext files hosted on the web and adds them to each torrent in a qBittorrent instance.
- ~add_scihub_torrents.py~ : Uses [[https://github.com/charmbracelet/gum][gum]] to select paginated text files that contain URLs of Sci Hub torrent files. For each selected file, the URLs are read and added to a qBittorrent instance.
- ~fetch_combined_trackers_list.py~ : Fetches a combined list of tracker URLs from plaintext files hosted on the web and writes them to a file in the current working directory.
- ~fetch_scihub_infohashes.py~ : Fetches the infohashes of all Sci Hub torrents and writes them to a plaintext file.
- ~qbth.py~ : A helper program for adding Linux and BSD distros to a qBittorrent instance. It's a bit crude, and the Python linter yells at me for it, but it gets the job done, and that's all I need it to do. Thank you.
#+BEGIN_EXPORT html
#+END_EXPORT
- ~qbt_sum_size.py~ : Prints the total size of completed torrents and the total size of all torrents added to a qBittorrent instance. The former is a subset of the latter.
- ~scihub_knapsack.py~ : Adds Sci Hub torrents to a qBittorrent instance until a specified size limit is reached.
- ~seed_armbian_torrents.py~ : Downloads an archive from Armbian, extracts the torrent files within to a temporary directory, and adds each file to a qBittorrent instance. It first removes older Armbian torrents from the qBittorrent instance.
- ~seed_scihub_max_seeders.py~ : Finds which torrents have less than or equal to N seeders, where N is an integer argument supplied by the user. It then adds these torrents to a qBittorrent instance.
- ~update_tracker.py~ : Fetches infohashes of all torrents in each qBittorrent instance referenced in the config file, and updates my public torrent tracker's whitelist.
#+BEGIN_EXPORT html
#+END_EXPORT