From a4b6e457b8cef338277a4059aecabec0e120b0f2 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 23 Mar 2024 15:59:50 +0100 Subject: nixos/lib: Support derivations in escapeSystemdExecArg They can be transformed into their outpath string, which is useful for config generators. --- nixos/lib/utils.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'nixos/lib') diff --git a/nixos/lib/utils.nix b/nixos/lib/utils.nix index 49ba2e5c83868..22a2c79843c66 100644 --- a/nixos/lib/utils.nix +++ b/nixos/lib/utils.nix @@ -64,8 +64,8 @@ rec { let s = if builtins.isPath arg then "${arg}" else if builtins.isString arg then arg - else if builtins.isInt arg || builtins.isFloat arg then toString arg - else throw "escapeSystemdExecArg only allows strings, paths and numbers"; + else if builtins.isInt arg || builtins.isFloat arg || lib.isDerivation arg then toString arg + else throw "escapeSystemdExecArg only allows strings, paths, numbers and derivations"; in replaceStrings [ "%" "$" ] [ "%%" "$$" ] (builtins.toJSON s); -- cgit 1.4.1