mkModule migration begin

This commit is contained in:
mjallen18
2025-12-14 22:47:51 -06:00
parent 34539045e5
commit fedba849a7
9 changed files with 302 additions and 667 deletions

View File

@@ -6,57 +6,63 @@
}:
with lib;
let
cfg = config.${namespace}.services.arrs;
in
{
imports = [ ./options.nix ];
name = "arrs";
cfg = config.${namespace}.services.${name};
config = mkIf cfg.enable {
# Enable radarr service
services.radarr = {
enable = cfg.radarr.enable;
openFirewall = true;
user = "nix-apps";
group = "jallen-nas";
dataDir = cfg.radarr.dataDir;
};
# Enable Sonarr service
services.sonarr = {
enable = cfg.sonarr.enable;
openFirewall = true;
user = "nix-apps";
group = "jallen-nas";
dataDir = cfg.sonarr.dataDir;
};
# Enable Sabnzbd service
services.sabnzbd = {
enable = cfg.sabnzbd.enable;
# openFirewall = true;
user = "nix-apps";
group = "jallen-nas";
configFile = "${cfg.sabnzbd.dataDir}/sabnzbd.ini";
};
services.deluge = {
enable = cfg.deluge.enable;
user = "nix-apps";
group = "jallen-nas";
openFirewall = true;
dataDir = "/media/nas/main";
web = {
arrsConfig = lib.${namespace}.mkModule {
inherit config name;
description = "*arr Services";
options = { };
moduleConfig = {
# Enable radarr service
services.radarr = {
enable = true;
port = cfg.deluge.port;
openFirewall = true;
openFirewall = cfg.openFirewall;
user = "nix-apps";
group = "jallen-nas";
dataDir = "${cfg.configDir}/radarr";
};
# Enable Sonarr service
services.sonarr = {
enable = true;
openFirewall = cfg.openFirewall;
user = "nix-apps";
group = "jallen-nas";
dataDir = "${cfg.configDir}/sonarr";
};
# Enable Sabnzbd service
services.sabnzbd = {
enable = true;
# openFirewall = cfg.openFirewall;
user = "nix-apps";
group = "jallen-nas";
configFile = "${cfg.configDir}/sabnzbd/sabnzbd.ini";
};
services.deluge = {
enable = false;
user = "nix-apps";
group = "jallen-nas";
openFirewall = cfg.openFirewall;
dataDir = cfg.dataDir;
web = {
enable = true;
port = 8112;
openFirewall = cfg.openFirewall;
};
};
services.jackett = {
enable = false;
user = "nix-apps";
group = "jallen-nas";
openFirewall = cfg.openFirewall;
};
};
services.jackett = {
enable = cfg.jackett.enable;
user = "nix-apps";
group = "jallen-nas";
openFirewall = true;
};
};
in
{
imports = [ arrsConfig ];
}