diff --git a/pkgs/lib/types.nix b/pkgs/lib/types.nix index c1d7240f693..2c85ee0077a 100644 --- a/pkgs/lib/types.nix +++ b/pkgs/lib/types.nix @@ -64,7 +64,7 @@ rec { string = mkOptionType { name = "string"; - check = lib.traceValIfNot (x: builtins ? isString -> builtins.isString x); + check = lib.traceValIfNot builtins.isString; merge = lib.concatStrings; }; @@ -86,6 +86,12 @@ rec { check = lib.traceValIfNot isDerivation; }; + path = mkOptionType { + name = "path"; + # Hacky: there is no ‘isPath’ primop. + check = lib.traceValIfNot (x: builtins.substring 0 1 (toString x) == "/"); + }; + listOf = types.list; list = elemType: mkOptionType { name = "list of ${elemType.name}s";