summary refs log tree commit diff
path: root/lib/modules.nix
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2014-05-07 16:43:18 -0400
committerNicolas B. Pierron <nicolas.b.pierron@gmail.com>2015-03-12 23:42:57 +0100
commit772b8869d28e9901370277ff3ba82c1d912482ef (patch)
treed2be128c1187615baa43c98ba432226b9e3e35e9 /lib/modules.nix
parentf69ce50529c5108d4dababfd221652ace55264bd (diff)
downloadnixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar.gz
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar.bz2
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar.lz
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar.xz
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.tar.zst
nixpkgs-772b8869d28e9901370277ff3ba82c1d912482ef.zip
Add comment about limitation on __internal.check
Diffstat (limited to 'lib/modules.nix')
-rw-r--r--lib/modules.nix4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/modules.nix b/lib/modules.nix
index 26193b26941..9ed2917df50 100644
--- a/lib/modules.nix
+++ b/lib/modules.nix
@@ -61,6 +61,10 @@ rec {
       # Traverse options and extract the option values into the final
       # config set.  At the same time, check whether all option
       # definitions have matching declarations.
+      # !!! __internal.check's value can't depend on any other config values
+      # without an infinite recursion. One way around this is to make the
+      # 'config' passed around to the modules be unconditionally unchecked,
+      # and only do the check in 'result'.
       config = yieldConfig prefix options;
       yieldConfig = prefix: set:
         let res = removeAttrs (mapAttrs (n: v: