dots/modules/services/media/arr.nix
Nico eff7cf084e caddy: use more topic-based subdomains for services
ex.
jellyfin -> watch
sonarr   -> shows.arr
miniflux -> rss
2025-05-03 16:34:35 +10:00

98 lines
2.2 KiB
Nix

{ config, lib, pkgs, ...}:
{
users.groups.media = {};
# Finding/Requesting downloading
services.radarr = {
enable = true;
openFirewall = false;
dataDir = "/var/lib/radarr";
group = "media";
};
services.sonarr = {
enable = true;
openFirewall = false;
dataDir = "/var/lib/sonarr";
group = "media";
};
services.lidarr = {
enable = true;
openFirewall = false;
dataDir = "/var/lib/lidarr";
group = "media";
};
services.prowlarr = {
enable = true;
openFirewall = false;
};
services.bazarr = {
enable = true;
openFirewall = false;
group = "media";
};
# Downloading files
services.deluge = {
enable = true;
web.enable = true;
web.openFirewall = false;
group = "media";
};
# Requesting Frontend
services.jellyseerr = {
enable = true;
port = 5055;
openFirewall = false;
package = pkgs.jellyseerr;
};
services.caddy.virtualHosts."movies.arr.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:7878
'';
};
services.caddy.virtualHosts."shows.arr.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:8989
'';
};
services.caddy.virtualHosts."music.arr.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:8686
'';
};
services.caddy.virtualHosts."index.arr.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:9696
'';
};
services.caddy.virtualHosts."subtitles.arr.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:6767
'';
};
services.caddy.virtualHosts."torrent.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:8112
'';
};
services.caddy.virtualHosts."jellyseer.${config.homelab.domain}" = {
useACMEHost = config.homelab.domain;
extraConfig = ''
reverse_proxy http://localhost:5055
'';
};
}