sonarr: init

This commit is contained in:
2026-02-19 19:06:40 -05:00
parent 093f7de8c7
commit 57c69e91ef
3 changed files with 48 additions and 0 deletions

View File

@@ -33,6 +33,7 @@
./services/bitmagnet.nix ./services/bitmagnet.nix
./services/arr/prowlarr.nix ./services/arr/prowlarr.nix
./services/arr/sonarr.nix
./services/soulseek.nix ./services/soulseek.nix

View File

@@ -126,6 +126,7 @@
livekit = 7880; livekit = 7880;
lk_jwt = 8081; lk_jwt = 8081;
prowlarr = 9696; prowlarr = 9696;
sonarr = 8989;
}; };
https = { https = {
@@ -197,6 +198,10 @@
prowlarr = { prowlarr = {
dataDir = services_dir + "/prowlarr"; dataDir = services_dir + "/prowlarr";
}; };
sonarr = {
dataDir = services_dir + "/sonarr";
};
}; };
}; };

42
services/arr/sonarr.nix Normal file
View File

@@ -0,0 +1,42 @@
{
pkgs,
config,
service_configs,
lib,
...
}:
{
imports = [
(lib.serviceMountWithZpool "sonarr" service_configs.zpool_ssds [
service_configs.sonarr.dataDir
])
(lib.serviceMountWithZpool "sonarr" service_configs.zpool_hdds [
service_configs.torrents_path
])
(lib.serviceFilePerms "sonarr" [
"Z ${service_configs.sonarr.dataDir} 0700 ${config.services.sonarr.user} ${config.services.sonarr.group}"
])
];
systemd.tmpfiles.rules = [
"d /torrents/media 2775 root ${service_configs.media_group} -"
"d ${service_configs.media.tvDir} 2775 root ${service_configs.media_group} -"
"d ${service_configs.media.moviesDir} 2775 root ${service_configs.media_group} -"
];
services.sonarr = {
enable = true;
dataDir = service_configs.sonarr.dataDir;
settings.server.port = service_configs.ports.sonarr;
settings.update.mechanism = "external";
};
services.caddy.virtualHosts."sonarr.${service_configs.https.domain}".extraConfig = ''
import ${config.age.secrets.caddy_auth.path}
reverse_proxy :${builtins.toString service_configs.ports.sonarr}
'';
users.users.${config.services.sonarr.user}.extraGroups = [
service_configs.media_group
];
}