* make-initrd.nix: builds a initial RAM disk. The resulting initrd will contain just a Nix store containing the specified lists of packages, with a symlink `/init' to the actual init program in the Nix store. * make-iso9660-image.nix: builds a bootable ISO image. * rescue-system.nix: builds a bootable ISO image (using the two function above) that boots into a very minimal Linux environment containing (at the moment) the dietlibc-based bash and coreutils, loaded from the initrd. Eventually this should become a two-stage boot (load kernel modules from the initrd, mount the actual root file system (e.g., the installation CD), call the real init). The rescue system (probably a misnomer) should become the minimal environment necessary for the installer (on CD) and the boot process of an installed NixOS (on HD). svn path=/nixu/trunk/; revision=6926
11 lines
241 B
Bash
11 lines
241 B
Bash
source $stdenv/setup
|
|
|
|
ensureDir $out
|
|
|
|
if test -n "$bootable"; then
|
|
bootFlags="-b $bootImage -c boot.cat -no-emul-boot -boot-load-size 4"
|
|
fi
|
|
|
|
# !!! -f is a quick hack.
|
|
mkisofs -r -J -f -o $out/$isoName $bootFlags -graft-points $graftList
|