admin-scripts/README.org
2024-07-30 19:45:17 -05:00

2.3 KiB

homelab-scripts

These are scripts I use to automate various tasks in my homelab.

bin

  • add_qbt_trackers.py : This script 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 : This script uses 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 : This script 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.
  • qbth.py : This is 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.
  • qbt_sum_size.py : This script 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.
  • seed_armbian_torrents.py : This script 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 : This script 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.
  • server0_backup : This script dumps my Mastodon instance's PostgreSQL database, then uses rclone to sync /etc, /var/log, and /home/jas to an S3-compatible object storage bucket (MinIO). It also copies the dumped Mastodon database and .env.production to the object storage bucket.

systemd

system

  • server0-backup.service : A systemd service unit that runs the server0_backup script.
  • server0-backup.timer : A systemd timer unit that triggers the corresponding service unit.

user

  • glances.service : A systemd service unit for the user scope that runs a glances server.
  • gmcapsuled.service : A systemd service unit for the user scope that runs the gmcapsuled Gemini server.