diff --git a/pkgs/lib/modules.nix b/pkgs/lib/modules.nix
index 1b278e65f3d..0df5c63da55 100644
--- a/pkgs/lib/modules.nix
+++ b/pkgs/lib/modules.nix
@@ -192,16 +192,13 @@ rec {
# locations to sub-options declarations
decls =
map (m:
- mapSubOptions (subModule:
- let module = lib.applyIfFunction subModule {}; in
+ mapSubOptions (subModule: (args:
+ let module = lib.applyIfFunction subModule args; in
if lib.isModule module then
- { inherit (m) key; } // subModule
+ { inherit (m) key; } // module
else
- args: {
- inherit (m) key;
- options = lib.applyIfFunction subModule args;
- }
- ) m.options
+ { inherit (m) key; options = module; }
+ )) m.options
) (declarationsOf name);
in
addOptionMakeUp