summary refs log tree commit diff
path: root/modules/installer/cd-dvd
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2009-06-10 21:46:42 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2009-06-10 21:46:42 +0000
commitcd1e4aefc13f463af7338c43eb74f0d70eb2f2cc (patch)
tree638656d08c2ab8f2970f446644ffdcc786200c77 /modules/installer/cd-dvd
parent1cea6b09efa23e4e2755d547193b1610d7ff6403 (diff)
downloadnixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar.gz
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar.bz2
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar.lz
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar.xz
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.tar.zst
nixpkgs-cd1e4aefc13f463af7338c43eb74f0d70eb2f2cc.zip
* Break the cyclic dependency between the system derivation and
  Grub's menu.lst.

svn path=/nixos/branches/modular-nixos/; revision=15931
Diffstat (limited to 'modules/installer/cd-dvd')
-rw-r--r--modules/installer/cd-dvd/iso-image.nix10
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/installer/cd-dvd/iso-image.nix b/modules/installer/cd-dvd/iso-image.nix
index bea9da2d03f..a3bd94805dc 100644
--- a/modules/installer/cd-dvd/iso-image.nix
+++ b/modules/installer/cd-dvd/iso-image.nix
@@ -132,6 +132,14 @@ in
         source = pkgs.runCommand "empty" {} "ensureDir $out";
         target = "/nix/store";
       }
+      { # Another quick hack: the kernel needs a systemConfig
+        # parameter in menu.lst, but the system config depends on
+        # menu.lst.  Break the cyclic dependency by having a /system
+        # symlink on the CD, and having menu.lst refer to /system.
+        source = pkgs.runCommand "system" {}
+          "ln -s ${config.system.build.system} $out";
+        target = "/system";
+      }
     ];
 
   # The Grub menu.
@@ -142,7 +150,7 @@ in
         chainloader +1
     
       title NixOS Installer / Rescue
-        kernel /boot/vmlinuz init=${config.system.build.bootStage2} systemConfig=${config.system.build.system} ${toString config.boot.kernelParams}
+        kernel /boot/vmlinuz init=${config.system.build.bootStage2} systemConfig=/system ${toString config.boot.kernelParams}
         initrd /boot/initrd
     '';