* Create /bin on the CD to suppress the /bin/sh symlink creation

error.
* Put the top-level system config on the CD, otherwise root doesn't
  get a working login shell on the CD (and the system PATH is broken
  as well).

svn path=/nixos/trunk/; revision=8658
This commit is contained in:
Eelco Dolstra 2007-05-09 17:32:41 +00:00
parent a779e582cb
commit 7243eb1d1d
3 changed files with 10 additions and 4 deletions

View File

@ -79,6 +79,7 @@ needWritableDir /tmp 01777
needWritableDir /var 0755
needWritableDir /nix/var 0755
needWritableDir /root 0700
needWritableDir /bin 0755 # for the /bin/sh symlink
# Miscellaneous boot time cleanup.

View File

@ -92,7 +92,7 @@ rec {
cdMountPoints = pkgs.runCommand "mount-points" {} "
ensureDir $out
cd $out
mkdir proc sys tmp etc dev var mnt nix nix/var root
mkdir proc sys tmp etc dev var mnt nix nix/var root bin
touch $out/${configuration.boot.rootLabel}
";
@ -174,6 +174,9 @@ rec {
{ object = system.bootStage2;
symlink = "/init";
}
{ object = system.system;
symlink = "/system";
}
# To speed up the installation, provide the full stdenv.
{ object = pkgs.stdenv;
symlink = "none";

View File

@ -1,6 +1,9 @@
#! @shell@
systemConfig="$1"
if test -z "$systemConfig"; then
systemConfig="/system" # for the installation CD
fi
export PATH=/empty
for i in @path@; do PATH=$PATH:$i/bin:$i/sbin; done
@ -140,9 +143,8 @@ hostname @hostName@
# Make this configuration the current configuration.
if test -n "$systemConfig"; then
ln -sfn "$systemConfig" /var/run/current-system
fi
ln -sfn "$systemConfig" /var/run/current-system
# Prevent the current configuration from being garbage-collected.
ln -sfn /var/run/current-system /nix/var/nix/gcroots/current-system