From c48405716c2a12d38d289fddb635cf4e33cd234d Mon Sep 17 00:00:00 2001 From: Maxiem Geldhof Date: Fri, 31 Oct 2025 19:38:41 +0100 Subject: [PATCH] Add prowlarr --- keys/mullvad | 18 ++++++----- modules/servermodules/arr/arr.nix | 50 +++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 8 deletions(-) diff --git a/keys/mullvad b/keys/mullvad index 2518a52..dd2afb3 100644 --- a/keys/mullvad +++ b/keys/mullvad @@ -1,9 +1,11 @@ age-encryption.org/v1 --> ssh-ed25519 CJLJQg XUBaAf9KX0Ult6W3R7XuQ98NWj+5B2s+p5trfPXruB8 -AWyu3fmSxkRnmXwJLuu90sTaZ6rFSeeCwgpbEWm4bx8 --> ssh-ed25519 pvX1bw hmRs8NMgtjMTHofPgS34bdFWnFFXGC9PnOcbSamNAR8 -k+LnfbyRTarH4ZIlrqQdhmMeK1+KZBLT5gkFnTBDWs4 --> ssh-ed25519 M7OTMg 1USWDfFjCtxQIAilMUknDi9KM4g3WXOQVDP0Vu1O3QM -8wWkeDNFNcX1yGieJQa0SjTRx4dx3rdUILNVUJuNFG8 ---- WcMtQ7HqULtJgzGesYnHfmMA4XfuQrhFIriEoJzAwY8 -⪟$Db-osc,1˖tٝ@-KjV(wёð_ɇq\"2ؾ7PIsFg/U7A`m4v"023d]'/J(WX|SsI ؇W5 \ No newline at end of file +-> ssh-ed25519 CJLJQg sGqIUt3HqWqnKjx4nSP79NtoSgTrEt/anBDl8TF4AHA +wHfin0l4vjFel0hpJhwWtg82BGdfJIW8pJaOFTa7QdE +-> ssh-ed25519 pvX1bw iQBJrEJwDHjbXnmLosW9OQ89sHNbh9le5cjTaGa2giI +rS5fRP62V0Ytg9OHnnyxSUUp+k84b6AaBg4VRkJ7clQ +-> ssh-ed25519 M7OTMg onwxYM6wZLzvVn2r43ZHrfZli7pA163Rljc0T3s2+B8 +uNcI0LDsXVcqpcJtlrbfmo4XV8HrXHXQDJM072/q+Mw +--- fKkF6k08bDznE7oHPu9xHoSfhxQYi2LKHFJPjsmiNxk +6¹T~`[ØǡDǢp@lWTM9zG< m7 s5# WGӮ¡!])zk6"o+^(h;+)W=|<Vwڣ. utlY_;#ś#$eoޡKi +I.LLXDi [[ҼCB3M-rBwz}i_?@ m NI_yɷ"<*s9^${nP# +Gȋ/uMgk# +⑃EI8WX pOcžZ/v̓ȧwI!u"! \ No newline at end of file diff --git a/modules/servermodules/arr/arr.nix b/modules/servermodules/arr/arr.nix index 88a1804..4b7c807 100644 --- a/modules/servermodules/arr/arr.nix +++ b/modules/servermodules/arr/arr.nix @@ -1,6 +1,56 @@ +{ pkgs, ... }: +let + mediaGroup = "media"; +in { + users.users.torrenter = { + isSystemUser = true; + group = "${mediaGroup}"; + }; + users.groups.${mediaGroup} = { + members = [ + "ren" + "prowlarr" + "radarr" + ]; + }; + age.secrets.mullvad = { file = ../../../keys/mullvad; path = "/etc/wireguard/mullvad.conf"; }; + + networking.firewall.trustedInterfaces = [ "wg-selene" ]; + services.prowlarr.enable = true; + + services.transmission = { + enable = true; + user = "torrenter"; + group = mediaGroup; + settings = { + incomplete-dir-enabled = true; + incomplete-dir = "/media/torrents/.incomplete"; + blocklist-enabled = true; + blocklist-url = "https://github.com/Naunter/BT_BlockLists/raw/master/bt_blocklists.gz"; + utp-enabled = true; + bind-address-ipv4 = "10.64.108.193"; + }; + }; + + systemd.services.transmission.serviceConfig.IOSchedulingPriority = 7; + + services.radarr = { + enable = true; + group = mediaGroup; + openFirewall = false; + }; + + environment.systemPackages = [ + pkgs.flood-for-transmission + ]; + + systemd.tmpfiles.rules = [ + "d /media/torrents 0775 torrenter media -" + "d /media/torrents/.incomplete 0775 torrenter media -" + ]; }