diff --git a/system/modules/services/default.nix b/system/modules/services/default.nix index f120163..9cbbb38 100644 --- a/system/modules/services/default.nix +++ b/system/modules/services/default.nix @@ -4,12 +4,14 @@ imports = [ ./mediaServer ./system76Scheduler + ./nixarr ]; options.systemModules.services = { mediaServer = { enable = lib.mkEnableOption "Enable mediaserver service module"; }; + }; } diff --git a/system/modules/services/nixarr/default.nix b/system/modules/services/nixarr/default.nix new file mode 100644 index 0000000..f9e9976 --- /dev/null +++ b/system/modules/services/nixarr/default.nix @@ -0,0 +1,28 @@ +{ lib, config, pkgs, ... }: + +let + cfg = config.systemModules.services.nixarr; + inherit (lib) mkEnableOption mkIf; +in + +{ + options.systemModules.services.nixarr.enable = mkEnableOption "Enable nixarr module"; + + config = mkIf cfg.enable { + nixarr = { + enable = true; + mediaDir = "/jellyfin"; + stateDir = "/var/lib/nixarr"; + + jellyfin.enable = true; + sonarr.enable = true; + radarr.enable = true; + prowlarr.enable = true; + transmission.enable = true; + }; + fileSystems."/jellyfin" = { + device = "/dev/disk/by-label/jellyfin"; + fsType = "btrfs"; + }; + }; +} diff --git a/system/profiles/mediaServer/default.nix b/system/profiles/mediaServer/default.nix index 38559e5..e7adefb 100644 --- a/system/profiles/mediaServer/default.nix +++ b/system/profiles/mediaServer/default.nix @@ -10,7 +10,7 @@ in config = lib.mkIf cfg.enable { systemModules = { services = { - mediaServer.enable = true; + nixarr.enable = true; }; }; };