2cccff268d
kernel command line, instead of having a /init symlink. This allows us to switch between configurations. * Some debug support: adding `debug' to the kernel command line gives a stage 1 shell. svn path=/nixu/trunk/; revision=7107
44 lines
927 B
Nix
44 lines
927 B
Nix
let
|
|
|
|
# The root device.
|
|
rootDevice = "/dev/hda1";
|
|
|
|
# The device on which GRUB should be installed (leave empty if you
|
|
# don't want GRUB to be installed).
|
|
grubDevice = "/dev/hda";
|
|
|
|
# Build boot scripts.
|
|
bootEnv = import ./boot-environment.nix {
|
|
autoDetectRootDevice = false;
|
|
inherit rootDevice;
|
|
stage2Init = ""; # Passed on the command line via Grub.
|
|
readOnlyRoot = false;
|
|
};
|
|
|
|
in
|
|
|
|
with bootEnv;
|
|
|
|
rec {
|
|
|
|
|
|
systemConfiguration = pkgs.stdenv.mkDerivation {
|
|
name = "system-configuration";
|
|
builder = ./system-configuration.sh;
|
|
inherit (pkgs) grub coreutils gnused gnugrep diffutils;
|
|
inherit grubDevice;
|
|
inherit bootStage2;
|
|
inherit grubMenuBuilder;
|
|
kernel = pkgs.kernel + "/vmlinuz";
|
|
initrd = initialRamdisk + "/initrd";
|
|
};
|
|
|
|
|
|
grubMenuBuilder = pkgs.genericSubstituter {
|
|
src = ./grub-menu-builder.sh;
|
|
isExecutable = true;
|
|
inherit (pkgs) bash;
|
|
};
|
|
|
|
|
|
}
|