to /).
* Stage 2: use sysvinit to create a bunch of mingetty's on virtual
consoles 1-6. Show a nice welcoming message. Start syslogd and log
everything to tty10.
svn path=/nixu/trunk/; revision=6963
(and nuke its references so that we don't get glibc etc.). The
initrd is now 3.2 MB (and that includes the entire staticTools from
the stdenv bootstrap, most of which we don't actually need).
svn path=/nixu/trunk/; revision=6942
`modules-closure.nix' produces a module tree in
$out/lib/modules/VERSION that contains only the modules identified
by `rootModules', plus their dependencies. It also generates an
appropriate modules.dep. This is useful for initrds, as we
obviously don't want a copy of the entire kernel module tree in the
initial RAM disk.
svn path=/nixu/trunk/; revision=6939
* 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
bash doesn't check the exit status of the inner commands. Replace
the $(nix-store -r $(nix-instantiate)) calls with nix-build.
* Some of the diet packages are gone now, use the dietlibc stdenv.
svn path=/nixu/trunk/; revision=6920
situation. I don't know how it will it work with something like dual booting
and chain loading, so that is unsupported right now :P
svn path=/nixu/trunk/; revision=6282
* user is dropped into a shell, where the user can run tools like fdisk to partition a disk
* user needs to add a file called "disklayout" where it specifies SWAP, INSTALLDEVICE and TARGETDRIVE
* depending on the values of these the installscript might need to be fixed to get the GRUB configuration right
It's still somewhat inflexible, but it gives the user a bit more control than the old scheme
svn path=/nixu/trunk/; revision=6271
actually bad, because in theory a different kernel could be chosen to be
installed and then we could not load any modules...but even communism
works...in theory!
svn path=/nixu/trunk/; revision=6068
TODO: rewrite some of the tools to use the busybox tools instead of the "normal" utilities during installation, so we can shave off another 15 MB from the
installer
svn path=/nixu/trunk/; revision=6063
the latest patches to Nix itself, which were committed the last few days.
Biggest changes:
make-disk.sh:
* use nix-push to generate NAR files and a manifest
* use only copy a "few" packages (but probably still too many than we want) to the Nix store on the CD
fill-disk.sh:
* use nix-pull to register a manifest with a lot of packages. Only copy and
register as valid the few packages that are in the Nix store on the installer
CD, install the rest via nix-env and other tools (this needs to be reviewed
thoroughly for optimizations).
All in all the install process is a lot cleaner now, the login script is broken
however (but should be relatively easy to fix with some Nix wizardry). NIX_ROOT
is still broken, but we can work around most issues with relative ease now.
svn path=/nixu/trunk/; revision=6025