about summary refs log tree commit diff
path: root/nixos/release.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-09-25 17:51:09 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-10-09 16:35:28 +0200
commit93ff0d54966795f5ac295880ec2933f260cf6952 (patch)
treebb6ddcd7a1e64d2b5f9cb863b7b3f4b55ff74b60 /nixos/release.nix
parentc7a1944ad9e5ddbb9f94f42c973a1683c41c9e3c (diff)
Add an entire NixOS build to the channel
This causes some cruft to be uploaded (such as unit files) but it
ensures that every package used by the base system ends up in the
channel, not just environment.systemPackages.

(cherry picked from commit 4dfca8e14a5d1c2e62bb5ad267163a7a32ef872f)
Diffstat (limited to 'nixos/release.nix')
-rw-r--r--nixos/release.nix11
1 files changed, 7 insertions, 4 deletions
diff --git a/nixos/release.nix b/nixos/release.nix
index 1657dcf502d26..3307a3a674709 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -188,12 +188,15 @@ in rec {
 
   # Ensure that all packages used by the minimal NixOS config end up in the channel.
   dummy = forAllSystems (system: pkgs.runCommand "dummy"
-    { propagatedBuildInputs = (import lib/eval-config.nix {
+    { toplevel = (import lib/eval-config.nix {
         inherit system;
-        modules = lib.singleton ({ config, pkgs, ... }: { });
-      }).config.environment.systemPackages;
+        modules = lib.singleton ({ config, pkgs, ... }:
+          { fileSystems."/".device  = lib.mkDefault "/dev/sda1";
+            boot.loader.grub.device = lib.mkDefault "/dev/sda";
+          });
+      }).config.system.build.toplevel;
     }
-    "mkdir $out; fixupPhase");
+    "mkdir $out; ln -s $toplevel $out/dummy");
 
 
   # Provide a tarball that can be unpacked into an SD card, and easily