diff --git a/config/firefox/bookmarks.nix b/config/firefox/bookmarks.nix index 4f083c8..9a5e98d 100644 --- a/config/firefox/bookmarks.nix +++ b/config/firefox/bookmarks.nix @@ -103,6 +103,10 @@ name = "Radarr"; url = "https://radarr.yanlincs.com"; } + { + name = "Lidarr"; + url = "https://lidarr.yanlincs.com"; + } { name = "Deluge"; url = "https://deluge.yanlincs.com"; diff --git a/hosts/nixos/hs/system.nix b/hosts/nixos/hs/system.nix index bfaf2fb..c46953e 100644 --- a/hosts/nixos/hs/system.nix +++ b/hosts/nixos/hs/system.nix @@ -246,6 +246,7 @@ jellyfin.enable = true; deluge.enable = true; plex.enable = true; + lidarr.enable = true; }; # Borg backup configuration diff --git a/hosts/nixos/vps/proxy.nix b/hosts/nixos/vps/proxy.nix index 27a07f1..d1ee99e 100644 --- a/hosts/nixos/vps/proxy.nix +++ b/hosts/nixos/vps/proxy.nix @@ -78,6 +78,18 @@ }; }; + # Lidarr music management + lidarr = { + rule = "Host(`lidarr.yanlincs.com`)"; + service = "lidarr"; + tls = { + certResolver = "cloudflare"; + domains = [{ + main = "*.yanlincs.com"; + }]; + }; + }; + }; services = { @@ -136,6 +148,15 @@ }; }; + # Lidarr backend + lidarr = { + loadBalancer = { + servers = [{ + url = "http://lan.hs.yanlincs.com:8686"; + }]; + }; + }; + }; }; diff --git a/modules/media-server.nix b/modules/media-server.nix index be0023a..cbee9c6 100644 --- a/modules/media-server.nix +++ b/modules/media-server.nix @@ -22,6 +22,7 @@ in jellyfin.enable = lib.mkEnableOption "Jellyfin media server"; # port 8096 deluge.enable = lib.mkEnableOption "Deluge torrent client"; # web port 8112 plex.enable = lib.mkEnableOption "Plex media server"; # port 32400 + lidarr.enable = lib.mkEnableOption "Lidarr music management"; # port 8686 }; config = { @@ -67,5 +68,12 @@ in group = cfg.group; openFirewall = false; }; + + services.lidarr = lib.mkIf cfg.lidarr.enable { + enable = true; + user = cfg.user; + group = cfg.group; + openFirewall = false; + }; }; }