about summary refs log tree commit diff
path: root/lib/generators.nix
diff options
context:
space:
mode:
authorNaïm Favier <n@monade.li>2022-12-18 12:42:43 +0100
committerNaïm Favier <n@monade.li>2023-01-01 14:10:42 +0100
commit4af22aab8e239b1ca28da851755c6da1a35fc91b (patch)
tree09c1b65cbdf4973f56211a8729adae6adc79147f /lib/generators.nix
parent4df10debe79feba975631347b25f8699b7cd3554 (diff)
stdenv/check-meta: do deep type checks
Use a wrapper around `mergeDefinitions` to type-check values deeply, so
that e.g. `maintainers = [ 42 ];` is an error.
Diffstat (limited to 'lib/generators.nix')
-rw-r--r--lib/generators.nix6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/generators.nix b/lib/generators.nix
index 4c9c2d1e98693..968331a0ebde8 100644
--- a/lib/generators.nix
+++ b/lib/generators.nix
@@ -289,7 +289,9 @@ rec {
        (This means fn is type Val -> String.) */
     allowPrettyValues ? false,
     /* If this option is true, the output is indented with newlines for attribute sets and lists */
-    multiline ? true
+    multiline ? true,
+    /* Initial indentation level */
+    indent ? ""
   }:
     let
     go = indent: v: with builtins;
@@ -348,7 +350,7 @@ rec {
                 };") v)
         + outroSpace + "}"
     else abort "generators.toPretty: should never happen (v = ${v})";
-  in go "";
+  in go indent;
 
   # PLIST handling
   toPlist = {}: v: let