diff --git a/nixos/roles/laminar/default.nix b/nixos/roles/laminar/default.nix index 2f1e84ac..b95068dd 100644 --- a/nixos/roles/laminar/default.nix +++ b/nixos/roles/laminar/default.nix @@ -9,7 +9,7 @@ cfgDir = "${stateDir}/cfg"; cfg = config.services.laminar; mkTimeoutConf = run_name: {"${lib.removeSuffix ".run" run_name}.conf" = builtins.toFile "timeout.conf" "TIMEOUT=10800";}; - addTimeouts = cfg_files: builtins.zipAttrsWith (throw "Job has config file and we attempted to set a TIMEOUT.") ([cfg_files] ++ map mkTimeoutConf (builtins.filter (lib.hasSuffix ".run") (lib.attrNames cfg_files))); + addTimeouts = cfg_files: cfg_files // {jobs = lib.foldr lib.mergeAttrs cfg_files.jobs (map mkTimeoutConf (builtins.filter (lib.hasSuffix ".run") (lib.attrNames cfg_files.jobs)));}; in { options = { services.laminar = { @@ -77,7 +77,7 @@ in { LimitNOFILE = "1024000"; }; after = ["network.target"]; - preStart = "ln -sfT ${pkgs.setToDirectories cfg.cfgFiles} ${cfgDir}"; + preStart = "ln -sfT ${pkgs.setToDirectories (addTimeouts cfg.cfgFiles)} ${cfgDir}"; }; services = { nginx = {