From f04ace3912319410bfa2abdb433a5843e8e8adcd Mon Sep 17 00:00:00 2001 From: noonamer Date: Thu, 12 Feb 2026 18:13:32 +0000 Subject: [PATCH] nixos/cross-seed: allow null outputDir --- nixos/modules/services/torrent/cross-seed.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/torrent/cross-seed.nix b/nixos/modules/services/torrent/cross-seed.nix index ed25edbb2f8c..2bf7da623370 100644 --- a/nixos/modules/services/torrent/cross-seed.nix +++ b/nixos/modules/services/torrent/cross-seed.nix @@ -105,7 +105,7 @@ in }; outputDir = mkOption { - type = types.path; + type = types.nullOr types.path; default = "${cfg.configDir}/output"; defaultText = "\${cfg.configDir}/output"; description = "Directory where cross-seed will place torrent files it finds."; @@ -193,7 +193,8 @@ in inherit (cfg) group user; mode = "700"; }; - + } + // lib.optionalAttrs (cfg.settings.outputDir != null) { ${cfg.settings.outputDir}.d = { inherit (cfg) group user; mode = "750"; @@ -222,7 +223,7 @@ in LoadCredential = lib.mkIf (cfg.settingsFile != null) "secretSettingsFile:${cfg.settingsFile}"; StateDirectory = "cross-seed"; - ReadWritePaths = [ cfg.settings.outputDir ]; + ReadWritePaths = lib.optional (cfg.settings.outputDir != null) cfg.settings.outputDir; ReadOnlyPaths = lib.optional (cfg.settings.torrentDir != null) cfg.settings.torrentDir; }; @@ -231,7 +232,7 @@ in RequiresMountsFor = lib.flatten [ cfg.settings.dataDirs cfg.settings.linkDirs - cfg.settings.outputDir + (lib.optional (cfg.settings.outputDir != null) cfg.settings.outputDir) ]; }; };