diff --git a/modules/deluge/default.nix b/modules/deluge/default.nix new file mode 100644 index 0000000..b7a2bb6 --- /dev/null +++ b/modules/deluge/default.nix @@ -0,0 +1,61 @@ +{ lib, pkgs, config, ... }: +with lib; +let + cfg = config.luj.deluge; + port = 8112; +in +{ + + options.luj.deluge = { + enable = mkEnableOption "activate deluge service"; + + user = mkOption { + type = types.str; + default = "deluge"; + description = "User account under which deluge runs."; + }; + + group = mkOption { + type = types.str; + default = "deluge"; + description = "Group under which deluge runs."; + }; + + nginx.enable = mkEnableOption "activate nginx"; + nginx.subdomain = mkOption { + type = types.str; + }; + + }; + + config = mkIf cfg.enable ( + mkMerge [{ + + sops.secrets.deluge = { + owner = cfg.user; + format = "binary"; + sopsFile = ../../secrets/deluge-login; + }; + + services.deluge = { + enable = true; + user = cfg.user; + group = cfg.group; + openFirewall = true; + declarative = true; + authFile = "/run/secrets/deluge"; + web.enable = true; + config = { + download_location = "/home/mediaserver/downloads/complete/"; + allow_remote = true; + }; + dataDir = "/home/mediaserver/deluge"; + + }; + } + + (mkIf cfg.nginx.enable (mkSubdomain cfg.nginx.subdomain port))]); + + + +} diff --git a/modules/mediaserver/default.nix b/modules/mediaserver/default.nix index e239812..27d1121 100644 --- a/modules/mediaserver/default.nix +++ b/modules/mediaserver/default.nix @@ -34,7 +34,7 @@ in luj.flaresolverr.enable = true; - luj.transmission = { + luj.deluge = { enable = true; user = "mediaserver"; group = "mediaserver"; @@ -87,7 +87,7 @@ in user = "mediaserver"; group = "mediaserver"; nginx.enable = true; - nginx.subdomain = "music"; + nginx.subdomain = "musique"; };