Compare commits

...

7 Commits

Author SHA1 Message Date
Mike Wilson
e994a98016 Add Anthelion to qbitmanage and cross-seed configs 2025-12-02 15:02:06 -05:00
Mike Wilson
c85576a56a Update beets config 2025-12-02 15:01:25 -05:00
Mike Wilson
886bc6aa71 README updates 2025-11-04 16:12:28 -05:00
Mike Wilson
45951ba93f Do not restart qbittorrent when updating cross-seed and qbitmanage configs 2025-10-13 09:50:19 -04:00
Mike Wilson
364e1a9628 Allow releases with no rlsgroup in the 'Old' profiles 2025-10-09 15:40:37 -04:00
Mike Wilson
47000fc6f3 Set speed limits on torrents from high bandwidth trackers (TL, FL, AR) 2025-10-08 16:47:53 -04:00
dda45245f5 Add AnimeBytes 2025-09-13 14:00:07 -04:00
7 changed files with 41 additions and 30 deletions

View File

@@ -23,12 +23,13 @@ Having Plex and Jellyfin separate from the rest of my docker infrastructure allo
**Storage:**
* `/`: 1 TB NVME SSD
* `/vm_storage`: 2x 240 GB SSD in ZFS mirror for config and data files
* `/mnt/storage`: mergerfs + SnapRAID pool totaling ~90 TiB usable storage. Currently single parity disk but hoping to add a second one soon. Drives run btrfs allowing me to utilize [snapraid-btrfs](https://wiki.selfhosted.show/tools/snapraid-btrfs/) for instant snapshotting
* `/mnt/storage`: mergerfs + SnapRAID pool totaling 150 TiB usable storage with single disk parity (YOLO). Drives run btrfs allowing me to utilize [snapraid-btrfs](https://wiki.selfhosted.show/tools/snapraid-btrfs/) for instant snapshotting
## Roadmap
* Flesh out backup strategy with btrfs snapshots and restic (separately)
* Move everything to Arch VMs on Proxmox
* Potentially migrate media pool to ZFS. I've been lucky so far with no drive failures but realistically if I did have one fail, it would take ages to rebuild with single disk parity and I'd be wishing I had a more robust setup.
* Move everything to Arch LXCs on Proxmox
* Possibly set up second Proxmox node for backups
* Immich for photo management
* Look into [Wazuh](https://github.com/wazuh/wazuh) for threat prevention/detection

View File

@@ -1,7 +1,7 @@
directory: /music
per_disc_numbering: yes
plugins: fetchart web inline lyrics
plugins: fetchart embedart web inline lyrics musicbrainz scrub lastgenre replaygain
paths:
default: $albumartist/$album%aunique{}/%if{$multidisc,$disc}$track - $title
@@ -12,7 +12,7 @@ item_fields:
import:
write: yes
hardlink: yes
move: yes
resume: ask
incremental: yes
quiet_fallback: skip
@@ -28,13 +28,32 @@ embedart:
fetchart:
auto: yes
high_resolution: yes
source:
- filesystem
- itunes
- coverart
- amazon
match:
strong_rec_thresh: 0.10
ignored_media: ['12" Vinyl']
lyrics:
sources: [lrclib, genius]
sources: [lrclib, genius, tekstowo]
scrub:
auto: yes
replaygain:
auto: yes
backend: ffmpeg
# Consider directory empty even if files matching the below patterns are present
clutter:
- "*.jpg"
- "*.png"
- "*.nfo"
replace:
'^\.': _
'[\x00-\x1f]': _

View File

@@ -30,7 +30,6 @@
dest: "{{ data_dir }}/qbitmanage/config.yml"
owner: "{{ service_user.uid }}"
mode: "{{ docker_compose_file_mask }}"
notify: restart qbittorrent
become: true
- name: Create cross-seed config directory
@@ -47,7 +46,6 @@
dest: "{{ data_dir }}/cross-seed/config.js"
owner: "{{ service_user.uid }}"
mode: "{{ docker_compose_file_mask }}"
notify: restart qbittorrent
become: true
- name: Start docker containers

View File

@@ -4,10 +4,10 @@ module.exports = {
delay: 30,
torznab: [
"http://prowlarr.local.{{ personal_domain }}/3/api?apikey={{ prowlarr_api_key }}", // ImmortalSeed
"http://prowlarr.local.{{ personal_domain }}/6/api?apikey={{ prowlarr_api_key }}", // Aither
"http://prowlarr.local.{{ personal_domain }}/7/api?apikey={{ prowlarr_api_key }}", // Reelflix
"http://prowlarr.local.{{ personal_domain }}/9/api?apikey={{ prowlarr_api_key }}", // LST
"http://prowlarr.local.{{ personal_domain }}/10/api?apikey={{ prowlarr_api_key }}", // MyAnonaMouse
"http://prowlarr.local.{{ personal_domain }}/12/api?apikey={{ prowlarr_api_key }}", // Blutopia
"http://prowlarr.local.{{ personal_domain }}/13/api?apikey={{ prowlarr_api_key }}", // hawke-uno
"http://prowlarr.local.{{ personal_domain }}/16/api?apikey={{ prowlarr_api_key }}", // AlphaRatio
@@ -15,6 +15,9 @@ module.exports = {
"http://prowlarr.local.{{ personal_domain }}/19/api?apikey={{ prowlarr_api_key }}", // Cathode-Ray.Tube
"http://prowlarr.local.{{ personal_domain }}/25/api?apikey={{ prowlarr_api_key }}", // seedpool
"http://prowlarr.local.{{ personal_domain }}/27/api?apikey={{ prowlarr_api_key }}", // Upload.cx
"http://prowlarr.local.{{ personal_domain }}/30/api?apikey={{ prowlarr_api_key }}", // DocsPedia
"http://prowlarr.local.{{ personal_domain }}/31/api?apikey={{ prowlarr_api_key }}", // OnlyEncodes+
"http://prowlarr.local.{{ personal_domain }}/32/api?apikey={{ prowlarr_api_key }}", // Anthelion
],
outputDir: null,
@@ -24,8 +27,7 @@ module.exports = {
excludeOlder: "12w",
excludeRecentSearch: "3w",
action: "inject",
rtorrentRpcUrl: undefined,
qbittorrentUrl: "https://qbittorrent.local.{{ personal_domain }}",
torrentClients: ["qbittorrent:https://admin:password@qbittorrent.local.{{ personal_domain }}"],
sonarr: ["https://sonarr.local.{{ personal_domain }}/?apikey={{ sonarr_api_key }}"],
radarr: ["https://radarr.local.{{ personal_domain }}/?apikey={{ radarr_api_key }}"],
seasonsFromEpisodes: 0.8,
@@ -36,4 +38,7 @@ module.exports = {
port: 2468,
rssCadence: "16min",
searchCadence: "1w",
blockList: [
"category:upload",
],
};

View File

@@ -83,6 +83,10 @@ tracker:
tag: ULCX
archlinux:
tag: archlinux
animebytes:
tag: AB
anthelion:
tag: ANT
other:
tag: other
@@ -109,28 +113,14 @@ share_limits:
max_seeding_time: 129600 # 90 days
cleanup: true
add_group_to_tag: false
tl_cross-seed:
big: # Set speed limit on bandwidth hogs
priority: 9
include_all_tags:
- cross-seed
include_any_tags:
- TorrentLeech
- FileList
- AlphaRatio
limit_upload_speed: 100 # 100 KiBps
add_group_to_tag: false
public_trackers:
priority: 10
include_any_tags:
- Nyaa
- AnimeTosho
- rutracker
categories:
- movies
- tv
max_ratio: 2
max_seeding_time: 21600 # 15 days
limit_upload_speed: 5000 # 5 MiBps
cleanup: true
add_group_to_tag: false
recyclebin:
enabled: true

View File

@@ -85,7 +85,6 @@ custom_formats:
- fbcb31d8dabd2a319072b84fc0b7249c # Extras
- 15a05bc7c1a36e2b57fd628f8977e2fc # AV1
- 32b367365729d530ca1c124a0b180c64 # Bad Dual Groups
- 82d40da2bc6923f41e14394075dd4b03 # No-RlsGroup
- e1a997ddb54e3ecbfe06341ad323c458 # Obfuscated
- 06d66ab109d4d2eddb2794d21526d140 # Retags
- b735f09d3c025cbb7d75a5d38325b73b # Upscaled

View File

@@ -85,7 +85,6 @@ custom_formats:
- fbcb31d8dabd2a319072b84fc0b7249c # Extras
- 15a05bc7c1a36e2b57fd628f8977e2fc # AV1
- 32b367365729d530ca1c124a0b180c64 # Bad Dual Groups
- 82d40da2bc6923f41e14394075dd4b03 # No-RlsGroup
- e1a997ddb54e3ecbfe06341ad323c458 # Obfuscated
- 06d66ab109d4d2eddb2794d21526d140 # Retags
- b735f09d3c025cbb7d75a5d38325b73b # Upscaled