From fcf2866023abcf971f9aa21a795cb6fef57627b5 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 8 Feb 2016 14:30:24 +0100 Subject: lib/call-machine: Introduce .build shortcut The shortcut is mainly to make things a bit easier, instead of: nix-build '' \ -A aszlig.tishtushi.eval.config.system.build.toplevel We can now do something like this: nix-build '' \ -A aszlig.tishtushi.build ... in order to get a system store path out of a machine definition. This also fixes an evaluation error in the top-level default.nix. Thanks to @Profpatsch for bringing this to my attention. Signed-off-by: aszlig --- default.nix | 7 ++++--- lib/call-machine.nix | 1 + release.nix | 6 +++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/default.nix b/default.nix index f2ea79e2..a6ac9441 100644 --- a/default.nix +++ b/default.nix @@ -3,9 +3,10 @@ with (import (import ./nixpkgs-path.nix) { inherit system; }).lib; { - machines = mapAttrsRecursiveCond (m: !(m ? build)) (path: attrs: - attrs.build.config.system.build.toplevel - ) (import ./machines { inherit system; }); + machines = let + getBuild = const (getAttr "build"); + allMachines = import ./machines { inherit system; }; + in mapAttrsRecursiveCond (m: !(m ? eval)) getBuild allMachines; pkgs = import ./pkgs { pkgs = import (import ./nixpkgs-path.nix) args; diff --git a/lib/call-machine.nix b/lib/call-machine.nix index 95539114..0844e4eb 100644 --- a/lib/call-machine.nix +++ b/lib/call-machine.nix @@ -60,5 +60,6 @@ let }).vm; in { + build = eval.config.system.build.toplevel; inherit config eval iso vm; } diff --git a/release.nix b/release.nix index 04bc5218..74cf1149 100644 --- a/release.nix +++ b/release.nix @@ -48,9 +48,9 @@ let in with pkgsUpstream.lib; with builtins; { - machines = mapAttrsRecursiveCond (m: !(m ? eval)) (path: attrs: - attrs.eval.config.system.build.toplevel - ) allMachines; + machines = let + getBuild = const (getAttr "build"); + in mapAttrsRecursiveCond (m: !(m ? eval)) getBuild allMachines; isoImages = let buildIso = attrs: let -- cgit 1.4.1