From d465d6764ab6e11bdd01b2f8bf8bd5cb436e6870 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Thu, 6 Jun 2013 13:59:26 -0400 Subject: Allow imports in submodules Signed-off-by: Shea Levy --- pkgs/lib/modules.nix | 4 ++-- pkgs/lib/options.nix | 7 +------ 2 files changed, 3 insertions(+), 8 deletions(-) (limited to 'pkgs') diff --git a/pkgs/lib/modules.nix b/pkgs/lib/modules.nix index 286178a0fa7..74603e9c579 100644 --- a/pkgs/lib/modules.nix +++ b/pkgs/lib/modules.nix @@ -197,9 +197,9 @@ rec { recurseInto = name: moduleMerge (addName name) (modulesOf name); - recurseForOption = name: modules: + recurseForOption = name: modules: args: moduleMerge name ( - map unifyModuleSyntax modules + moduleClosure modules args ); errorSource = modules: diff --git a/pkgs/lib/options.nix b/pkgs/lib/options.nix index 3a8cc0006ef..d31a501cac9 100644 --- a/pkgs/lib/options.nix +++ b/pkgs/lib/options.nix @@ -82,16 +82,11 @@ rec { handleOptionSets = opt: if opt ? type && opt.type.hasOptions then let - - optionConfig = vals: args: - map (f: lib.applyIfFunction f args) - (opt.options ++ toList vals); - # Evaluate sub-modules. subModuleMerge = path: vals: lib.fix (args: let - result = recurseInto path (optionConfig vals args); + result = recurseInto path (opt.options ++ toList vals) args; name = lib.removePrefix (opt.name + ".") path; extraArgs = opt.extraArgs or {}; individualExtraArgs = opt.individualExtraArgs or {}; -- cgit 1.4.1