diff options
author | Nicolas B. Pierron <nicolas.b.pierron@gmail.com> | 2014-12-19 22:33:24 +0100 |
---|---|---|
committer | Nicolas B. Pierron <nicolas.b.pierron@gmail.com> | 2014-12-19 22:33:24 +0100 |
commit | 9db6a84f0bcce1602f17eca3fa17f5a016a93aac (patch) | |
tree | 6f1c108500a313c7364a797d6b261ef0688a8c59 /nixos | |
parent | d15cd4875f7d20f6e1db6fa83852da5af466d208 (diff) | |
download | nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar.gz nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar.bz2 nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar.lz nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar.xz nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.tar.zst nixlib-9db6a84f0bcce1602f17eca3fa17f5a016a93aac.zip |
nixos-option: Print the outPath of derivation for option values.
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/installer/tools/nixos-option.sh | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/nixos/modules/installer/tools/nixos-option.sh b/nixos/modules/installer/tools/nixos-option.sh index 96d09c3a6058..a2b963d7661b 100644 --- a/nixos/modules/installer/tools/nixos-option.sh +++ b/nixos/modules/installer/tools/nixos-option.sh @@ -76,7 +76,18 @@ evalAttr(){ local prefix="$1" local strict="$2" local suffix="$3" - echo "(import <nixos> {}).$prefix${option:+.$option}${suffix:+.$suffix}" | evalNix ${strict:+--strict} + evalNix ${strict:+--strict} <<EOF +let + reach = attrs: attrs${option:+.$option}${suffix:+.$suffix}; + nixos = import <nixos> {}; + nixpkgs = import <nixpkgs> {}; + cleanOutput = x: with nixpkgs.lib; + if isDerivation x then x.outPath + else if isFunction x then "<CODE>" + else x; +in + cleanOutput (reach nixos.$prefix) +EOF } evalOpt(){ |