From 9cf323f35b902302097d5e97719b246358585ced Mon Sep 17 00:00:00 2001 From: Veneficium <85629831+veneficium42@users.noreply.github.com> Date: Tue, 24 Dec 2024 19:05:20 +0100 Subject: [PATCH] containers: add lidarr --- containers/default.nix | 2 ++ containers/lidarr.nix | 41 ++++++++++++++++++++++++++++ hosts/main-homelab/configuration.nix | 1 + 3 files changed, 44 insertions(+) create mode 100644 containers/lidarr.nix diff --git a/containers/default.nix b/containers/default.nix index 49dc569..0bbbc58 100644 --- a/containers/default.nix +++ b/containers/default.nix @@ -3,11 +3,13 @@ imports = [ ./jellyfin.nix ./qbittorrent.nix + ./lidarr.nix ]; settings.containers = { jellyfin.enable = lib.mkDefault false; qbittorrent.enable = lib.mkDefault false; + lidarr.enable = lib.mkDefault false; }; } diff --git a/containers/lidarr.nix b/containers/lidarr.nix new file mode 100644 index 0000000..7ee7b2c --- /dev/null +++ b/containers/lidarr.nix @@ -0,0 +1,41 @@ +{ + config, + lib, + pkgs, + ... +}: +{ + options.settings.containers.lidarr = { + enable = lib.mkEnableOption "enable lidarr arion container"; + }; + + config = lib.mkIf config.settings.containers.lidarr.enable { + virtualisation.arion.projects.lidarr = { + settings = { + project.name = "lidarr"; + services.lidarr = { + service.useHostStore = true; + nixos.useSystemd = true; + nixos.configuration = + { lib, ... }: + { + boot.isContainer = true; + boot.tmp.useTmpfs = true; + networking.useDHCP = false; + services.nscd.enable = false; + system.nssModules = lib.mkForce [ ]; + + services.lidarr.enable = true; + services.lidarr.openFirewall = true; + services.lidarr.dataDir = "/config"; + }; + service.ports = [ "8686:8686" ]; + service.volumes = [ + "/config/lidarr:/config" + "/data:/data" + ]; + }; + }; + }; + }; +} diff --git a/hosts/main-homelab/configuration.nix b/hosts/main-homelab/configuration.nix index 025f696..9cd4eb5 100644 --- a/hosts/main-homelab/configuration.nix +++ b/hosts/main-homelab/configuration.nix @@ -30,6 +30,7 @@ containers.jellyfin.enable = lib.mkForce true; containers.qbittorrent.enable = lib.mkForce true; + containers.lidarr.enable = lib.mkForce true; }; boot.kernelPackages = pkgs.linuxPackages_latest;