diff --git a/fill-disk.sh b/fill-disk.sh index 1e4e7a45f44..d7860316e4a 100755 --- a/fill-disk.sh +++ b/fill-disk.sh @@ -1,12 +1,51 @@ -#! @bash@ -e +#! @bash@/bin/sh -e export PATH=@bash@/bin:@coreutils@/bin:@findutils@/bin:@utillinux@/bin:@utillinux@/sbin sysvinitPath=@sysvinitPath@ bootPath=@bootPath@ -mknod /dev/null c 1 3 -mknod /dev/console c 5 1 +mount -t proc proc /proc +mount -t sysfs sys /sys + +#mount -t /dev/hdc /installimage + +# make a complete /dev filesystem +# ripped permissions and everything from anaconda (loader2/devices.h) + +# consoles + +mknod -m 0600 /dev/console c 5 1 +mknod -m 0600 /dev/ttyS0 c 4 64 +mknod -m 0600 /dev/ttyS1 c 4 65 +mknod -m 0600 /dev/ttyS2 c 4 66 +mknod -m 0600 /dev/ttyS3 c 4 67 + +# base UNIX devices +mknod -m 0600 /dev/mem c 1 1 +mknod -m 0666 /dev/null c 1 3 +mknod -m 0666 /dev/zero c 1 5 + +# tty +mknod -m 0600 /dev/tty c 5 0 +mknod -m 0600 /dev/tty0 c 4 0 +mknod -m 0600 /dev/tty1 c 4 1 +mknod -m 0600 /dev/tty2 c 4 2 +mknod -m 0600 /dev/tty3 c 4 3 +mknod -m 0600 /dev/tty4 c 4 4 +mknod -m 0600 /dev/tty5 c 4 5 +mknod -m 0600 /dev/tty6 c 4 6 +mknod -m 0600 /dev/tty7 c 4 7 +mknod -m 0600 /dev/tty8 c 4 8 +mknod -m 0600 /dev/tty9 c 4 9 + +mkdir -m 0755 /dev/pts +mknod -m 0666 /dev/ptmx c 5 2 + +# random + +mknod -m 0644 /dev/random c 1 8 +mknod -m 0644 /dev/urandom c 1 9 echo "blaat" diff --git a/isolinux.cfg b/isolinux.cfg index 40bd0186880..f46570c89ff 100755 --- a/isolinux.cfg +++ b/isolinux.cfg @@ -3,4 +3,4 @@ prompt 1 timeout 600 label linux kernel vmlinuz - append initrd=initram.img ramdisk_size=1000000 + append initrd=initram.img init=/bin/sh diff --git a/make-disk.sh b/make-disk.sh index 6bcfebcf7d9..0877d3ecf83 100755 --- a/make-disk.sh +++ b/make-disk.sh @@ -70,14 +70,16 @@ echo creating directories for bootimage mkdir ${initdir} mkdir ${initdir}/bin +mkdir ${initdir}/dev +mkdir ${initdir}/etc +mkdir ${initdir}/installimage +mkdir ${initdir}/proc mkdir ${initdir}/sbin +mkdir ${initdir}/sys +mkdir ${initdir}/tmp mkdir -p ${initdir}/usr/bin mkdir -p ${initdir}/usr/sbin -mkdir ${initdir}/tmp -mkdir ${initdir}/proc mkdir ${initdir}/var -mkdir ${initdir}/etc -mkdir ${initdir}/dev echo copying nixpkgs @@ -87,6 +89,7 @@ echo copying packges from store #cp -fa --parents ${nixDeps} ${archivesDir} cp -fau --parents ${utilLinux} ${archivesDir} +#cp -fau --parents ${kernel} ${archivesDir} bashdeps=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).bash' | $NIX_CMD_PATH/nix-instantiate -))) @@ -128,16 +131,12 @@ echo creating ramdisk rm -f ${initrd} cp ${archivesDir}/scripts/fill-disk.sh ${initdir}/init cp ${bash}/bin/* ${initdir}/bin -#cp /nix/store/570hmhmx3v57605cqg9yfvvyh0nnb8k8-bash ${initdir}/bin/sh +#cp -f /nix/store/570hmhmx3v57605cqg9yfvvyh0nnb8k8-bash ${initdir}/bin/sh chmod u+x ${initdir}/init cp -fau --parents ${bashdeps} ${initdir} -#mknod ${initdir}/dev/null c 1 3 -#mknod ${initdir}/dev/console c 5 1 - -(cd ${archivesDir}/initdisk; find . |cpio -c -o) | gzip -9 > ${initrd} - -#mkcramfs ${archivesDir} /tmp/initramdisk.img +#(cd ${initdir}; find . |cpio -c -o) | gzip -9 > ${initrd} +(cd ${archivesDir}/initdir; find . |cpio -c -o) | gzip -9 > ${initrd} cp ${initrd} ${archivesDir}/isolinux