replace a lot of tools we initially use with statically linked versions.
This reduces the ramdisk installer size with a few megabytes when gzipped, but with about 40 MB when unpacked in memory. There are a few improvements possible: - strip the binaries. This saves another few MBs. - only copy the binaries we really need to /bin or /sbin. This could reduce the size of the installer a lot, especially with util-linux, of which we don't use that many tools at all. - try to move some packages we link with glibc right now (like util-linux) to dietlibc. This will not work for bash, already tried that. - try to use busybox as a replacement for everything. svn path=/nixu/trunk/; revision=4428
This commit is contained in:
parent
f130123af5
commit
fe355bba78
@ -9,9 +9,11 @@ for i in $boot $halt $login $env; do
|
|||||||
dst=$out/bin/$(basename $i | cut -c34-)
|
dst=$out/bin/$(basename $i | cut -c34-)
|
||||||
sed \
|
sed \
|
||||||
-e "s^@bash\@^$bash^g" \
|
-e "s^@bash\@^$bash^g" \
|
||||||
|
-e "s^@bashStatic\@^$bashStatic^g" \
|
||||||
-e "s^@coreutils\@^$coreutils^g" \
|
-e "s^@coreutils\@^$coreutils^g" \
|
||||||
-e "s^@findutilsWrapper\@^$findutilsWrapper^g" \
|
-e "s^@findutilsWrapper\@^$findutilsWrapper^g" \
|
||||||
-e "s^@utillinux\@^$utillinux^g" \
|
-e "s^@utillinux\@^$utillinux^g" \
|
||||||
|
-e "s^@utillinuxStatic\@^$utillinuxStatic^g" \
|
||||||
-e "s^@sysvinit\@^$sysvinit^g" \
|
-e "s^@sysvinit\@^$sysvinit^g" \
|
||||||
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
||||||
-e "s^@nettools\@^$nettools^g" \
|
-e "s^@nettools\@^$nettools^g" \
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, kernel, bash, coreutils, findutilsWrapper, utillinux, sysvinit, e2fsprogs
|
{ stdenv, kernel, bash, bashStatic, coreutils, findutilsWrapper, utillinux, utillinuxStatic, sysvinit, e2fsprogs
|
||||||
, nettools, nix, subversion, gcc, wget, which, vim, less, screen, openssh
|
, nettools, nix, subversion, gcc, wget, which, vim, less, screen, openssh
|
||||||
, binutils, strace, shadowutils, iputils, gnumake, curl, gnused, gnugrep
|
, binutils, strace, shadowutils, iputils, gnumake, curl, gnused, gnugrep
|
||||||
, gnutar, gzip, mingettyWrapper, grubWrapper, parted, module_init_tools, hotplug
|
, gnutar, gzip, mingettyWrapper, grubWrapper, parted, module_init_tools, hotplug
|
||||||
@ -12,7 +12,7 @@ derivation {
|
|||||||
halt = ./halt.sh;
|
halt = ./halt.sh;
|
||||||
login = ./login.sh;
|
login = ./login.sh;
|
||||||
env = ./env.sh;
|
env = ./env.sh;
|
||||||
inherit stdenv kernel bash coreutils findutilsWrapper utillinux sysvinit
|
inherit stdenv kernel bash bashStatic coreutils findutilsWrapper utillinux sysvinit
|
||||||
e2fsprogs nettools nix subversion gcc wget which vim less screen
|
e2fsprogs nettools nix subversion gcc wget which vim less screen
|
||||||
openssh binutils strace shadowutils iputils gnumake curl gnused
|
openssh binutils strace shadowutils iputils gnumake curl gnused
|
||||||
gnutar gnugrep gzip mingettyWrapper grubWrapper parted module_init_tools
|
gnutar gnugrep gzip mingettyWrapper grubWrapper parted module_init_tools
|
||||||
|
18
fill-disk.sh
18
fill-disk.sh
@ -1,6 +1,6 @@
|
|||||||
#! @bash@/bin/sh -e
|
#! @bash@/bin/sh -e
|
||||||
|
|
||||||
export PATH=@bash@/bin:@coreutilsdiet@/bin:@coreutils@/bin:@findutils@/bin:@utillinux@/bin:@utillinux@/sbin:@e2fsprogs@/sbin:@grub@/sbin:@sysvinitPath@/sbin:@gnugrep@/bin:@which@/bin:@gnutar@/bin:@eject@/bin
|
export PATH=@bash@/bin:@coreutilsdiet@/bin:@coreutils@/bin:@findutils@/bin:@utillinux@/bin:@utillinux@/sbin:@utilLinux@/bin:@utilLinux@/sbin:@e2fsprogs@/sbin:@grub@/sbin:@sysvinitPath@/sbin:@gnugrep@/bin:@which@/bin:@gnutar@/bin:@eject@/bin:@kudzu@/sbin
|
||||||
|
|
||||||
##
|
##
|
||||||
## In the beginning we want to have a minimalistic environment, built with
|
## In the beginning we want to have a minimalistic environment, built with
|
||||||
@ -194,6 +194,7 @@ mknod -m 0444 $root/dev/urandom c 1 9
|
|||||||
rm -f $root/etc/mtab
|
rm -f $root/etc/mtab
|
||||||
ln -s /proc/mounts $root/etc/mtab
|
ln -s /proc/mounts $root/etc/mtab
|
||||||
|
|
||||||
|
|
||||||
## Probe for CD device which contains our CD here and mount /nix and
|
## Probe for CD device which contains our CD here and mount /nix and
|
||||||
## /nixpkgs from it inside the ramdisk. Anaconda uses kudzu for this.
|
## /nixpkgs from it inside the ramdisk. Anaconda uses kudzu for this.
|
||||||
## Find out how Knoppix and SUSE do this...
|
## Find out how Knoppix and SUSE do this...
|
||||||
@ -221,6 +222,9 @@ echo switch to /nix and /nixpkgs from CD
|
|||||||
ln -s /cdrom/nixpkgs /nixpkgs
|
ln -s /cdrom/nixpkgs /nixpkgs
|
||||||
mount --bind /cdrom/nix /nix
|
mount --bind /cdrom/nix /nix
|
||||||
|
|
||||||
|
echo probing for hardware...
|
||||||
|
|
||||||
|
kudzu
|
||||||
|
|
||||||
export NIX_DATA_DIR=$root/nix/share
|
export NIX_DATA_DIR=$root/nix/share
|
||||||
export NIX_LOG_DIR=$root/nix/log/nix
|
export NIX_LOG_DIR=$root/nix/log/nix
|
||||||
@ -228,6 +232,10 @@ export NIX_STATE_DIR=$root/nix/var/nix
|
|||||||
export NIX_CONF_DIR=$root/nix/etc
|
export NIX_CONF_DIR=$root/nix/etc
|
||||||
NIX_CMD_PATH=@nix@/bin
|
NIX_CMD_PATH=@nix@/bin
|
||||||
|
|
||||||
|
echo bringing up networking...
|
||||||
|
|
||||||
|
nic=`kudzu -p | grep eth | sort | uniq | cut -d ' ' -f 2`
|
||||||
|
|
||||||
echo initialising Nix DB...
|
echo initialising Nix DB...
|
||||||
$NIX_CMD_PATH/nix-store --init
|
$NIX_CMD_PATH/nix-store --init
|
||||||
|
|
||||||
@ -290,13 +298,15 @@ echo "#2:2345:respawn:$mingetty/sbin/mingetty tty2" >> $root/etc/inittab
|
|||||||
#echo "2:2345:respawn:$bootPath/bin/login.sh /dev/ttys/1" >> $root/etc/inittab
|
#echo "2:2345:respawn:$bootPath/bin/login.sh /dev/ttys/1" >> $root/etc/inittab
|
||||||
|
|
||||||
echo setting up networking information...
|
echo setting up networking information...
|
||||||
|
|
||||||
make_dir 00755 /etc/networking
|
make_dir 00755 /etc/networking
|
||||||
echo 192.168.150.1 > $root/etc/networking/local-ip
|
|
||||||
echo 192.168.150.3 > $root/etc/networking/gateway-ip
|
|
||||||
#cp /etc/resolv.conf $root/etc
|
#cp /etc/resolv.conf $root/etc
|
||||||
rm -f $root/etc/hosts
|
rm -f $root/etc/hosts
|
||||||
echo "127.0.0.1 localhost" >> $root/etc/hosts
|
echo "127.0.0.1 localhost" >> $root/etc/hosts
|
||||||
#echo "192.168.150.1 uml" >> $root/etc/hosts
|
|
||||||
|
echo storing hardware information...
|
||||||
|
|
||||||
|
kudzu -p > $root/etc/sysconfig/hwconf
|
||||||
|
|
||||||
echo setting up initial account information...
|
echo setting up initial account information...
|
||||||
|
|
||||||
|
62
make-disk.sh
62
make-disk.sh
@ -53,10 +53,10 @@ do
|
|||||||
tar -cf - $i | tar --directory=$archivesDir -xf -
|
tar -cf - $i | tar --directory=$archivesDir -xf -
|
||||||
done
|
done
|
||||||
|
|
||||||
utilLinux=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).utillinux' | $NIX_CMD_PATH/nix-instantiate -)))
|
utilLinux=$(nix-store -r $(echo '(import ./pkgs.nix).utillinuxStatic' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
coreUtilsDiet=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).coreutilsDiet' | $NIX_CMD_PATH/nix-instantiate -)))
|
coreUtilsDiet=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).coreutilsDiet' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
e2fsProgs=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).e2fsprogsDiet' | $NIX_CMD_PATH/nix-instantiate -)))
|
e2fsProgs=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).e2fsprogsDiet' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
modUtils=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).module_init_tools' | $NIX_CMD_PATH/nix-instantiate -)))
|
modUtils=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).module_init_toolsStatic' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
Grub=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).grubWrapper' | $NIX_CMD_PATH/nix-instantiate -)))
|
Grub=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).grubWrapper' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
#gnuSed=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).gnused' | $NIX_CMD_PATH/nix-instantiate -)))
|
#gnuSed=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).gnused' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
#gnuGrep=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).gnugrep' | $NIX_CMD_PATH/nix-instantiate -)))
|
#gnuGrep=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).gnugrep' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
@ -64,13 +64,14 @@ Kernel=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).
|
|||||||
SysVinit=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).sysvinit' | $NIX_CMD_PATH/nix-instantiate -)))
|
SysVinit=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).sysvinit' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
BootPath=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).boot' | $NIX_CMD_PATH/nix-instantiate -)))
|
BootPath=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).boot' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
|
|
||||||
bash=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).bash' | $NIX_CMD_PATH/nix-instantiate -))
|
#bash=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).bash' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
|
bash=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).bashStatic' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
coreutilsdiet=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).coreutilsDiet' | $NIX_CMD_PATH/nix-instantiate -))
|
coreutilsdiet=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).coreutilsDiet' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
coreutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).coreutils' | $NIX_CMD_PATH/nix-instantiate -))
|
coreutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).coreutils' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
findutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).findutilsWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
findutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).findutilsWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
utillinux=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).utillinux' | $NIX_CMD_PATH/nix-instantiate -))
|
utillinux=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).utillinux' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
e2fsprogs=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).e2fsprogsDiet' | $NIX_CMD_PATH/nix-instantiate -))
|
e2fsprogs=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).e2fsprogsDiet' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
modutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).module_init_tools' | $NIX_CMD_PATH/nix-instantiate -))
|
modutils=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).module_init_toolsStatic' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
grub=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).grubWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
grub=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).grubWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
mingettyWrapper=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).mingettyWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
mingettyWrapper=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).mingettyWrapper' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
hotplug=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).hotplug' | $NIX_CMD_PATH/nix-instantiate -))
|
hotplug=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).hotplug' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
@ -82,22 +83,23 @@ which=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).which' | $NIX_CMD
|
|||||||
gnutar=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).gnutar' | $NIX_CMD_PATH/nix-instantiate -))
|
gnutar=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).gnutar' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
eject=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).eject' | $NIX_CMD_PATH/nix-instantiate -))
|
eject=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).eject' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
sysklogd=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).sysklogd' | $NIX_CMD_PATH/nix-instantiate -))
|
sysklogd=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).sysklogd' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
|
kudzu=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./pkgs.nix).kudzu' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
|
|
||||||
#(while read storepath; do
|
#(while read storepath; do
|
||||||
#cp -fa --parents ${storepath} ${archivesDir}
|
#cp -fa --parents ${storepath} ${archivesDir}
|
||||||
#done) < $storePaths
|
#done) < $storePaths
|
||||||
|
|
||||||
echo utillinux $utilLinux
|
#echo utillinux $utilLinux
|
||||||
|
|
||||||
for i in $utilLinux; do
|
#for i in $utilLinux; do
|
||||||
echo i $i
|
# echo i $i
|
||||||
deps=( $($NIX_CMD_PATH/nix-store -q --references $i) )
|
# deps=( $($NIX_CMD_PATH/nix-store -q --references $i) )
|
||||||
echo length ${#deps[@]}
|
# echo length ${#deps[@]}
|
||||||
if test "${#deps[@]}" = 0
|
# if test "${#deps[@]}" = 0
|
||||||
then
|
# then
|
||||||
echo zarro
|
# echo zarro
|
||||||
fi
|
# fi
|
||||||
done
|
#done
|
||||||
|
|
||||||
echo creating directories for bootimage
|
echo creating directories for bootimage
|
||||||
|
|
||||||
@ -106,6 +108,7 @@ mkdir ${initdir}/bin
|
|||||||
mkdir ${initdir}/cdrom
|
mkdir ${initdir}/cdrom
|
||||||
mkdir ${initdir}/dev
|
mkdir ${initdir}/dev
|
||||||
mkdir ${initdir}/etc
|
mkdir ${initdir}/etc
|
||||||
|
mkdir ${initdir}/etc/sysconfig
|
||||||
mkdir ${initdir}/installimage
|
mkdir ${initdir}/installimage
|
||||||
mkdir ${initdir}/modules
|
mkdir ${initdir}/modules
|
||||||
mkdir ${initdir}/proc
|
mkdir ${initdir}/proc
|
||||||
@ -138,7 +141,7 @@ cp -fa ${nixpkgs} ${archivesDir}
|
|||||||
#cp -fvau --parents ${nano} ${archivesDir}
|
#cp -fvau --parents ${nano} ${archivesDir}
|
||||||
#cp -fvau --parents ${gnutar} ${archivesDir}
|
#cp -fvau --parents ${gnutar} ${archivesDir}
|
||||||
|
|
||||||
bashdeps=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).bash' | $NIX_CMD_PATH/nix-instantiate -)))
|
bashdeps=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).bashStatic' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
|
|
||||||
echo copying scripts
|
echo copying scripts
|
||||||
|
|
||||||
@ -155,6 +158,7 @@ sed -e "s^@sysvinitPath\@^$sysvinitPath^g" \
|
|||||||
-e "s^@findutils\@^$findutils^g" \
|
-e "s^@findutils\@^$findutils^g" \
|
||||||
-e "s^@coreutilsdiet\@^$coreutilsdiet^g" \
|
-e "s^@coreutilsdiet\@^$coreutilsdiet^g" \
|
||||||
-e "s^@coreutils\@^$coreutils^g" \
|
-e "s^@coreutils\@^$coreutils^g" \
|
||||||
|
-e "s^@utilLinux\@^$utilLinux^g" \
|
||||||
-e "s^@utillinux\@^$utillinux^g" \
|
-e "s^@utillinux\@^$utillinux^g" \
|
||||||
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
||||||
-e "s^@modutils\@^$modutils^g" \
|
-e "s^@modutils\@^$modutils^g" \
|
||||||
@ -163,7 +167,7 @@ sed -e "s^@sysvinitPath\@^$sysvinitPath^g" \
|
|||||||
-e "s^@hotplug\@^$hotplug^g" \
|
-e "s^@hotplug\@^$hotplug^g" \
|
||||||
-e "s^@gnugrep\@^$gnugrep^g" \
|
-e "s^@gnugrep\@^$gnugrep^g" \
|
||||||
-e "s^@which\@^$which^g" \
|
-e "s^@which\@^$which^g" \
|
||||||
-e "s^@eject\@^$eject^g" \
|
-e "s^@kudzu\@^$kudzu^g" \
|
||||||
-e "s^@sysklogd\@^$sysklogd^g" \
|
-e "s^@sysklogd\@^$sysklogd^g" \
|
||||||
-e "s^@gnutar\@^$gnutar^g" \
|
-e "s^@gnutar\@^$gnutar^g" \
|
||||||
-e "s^@mingetty\@^$mingettyWrapper^g" \
|
-e "s^@mingetty\@^$mingettyWrapper^g" \
|
||||||
@ -177,7 +181,7 @@ sed -e "s^@sysvinitPath\@^$sysvinitPath^g" \
|
|||||||
-e "s^@findutils\@^$findutils^g" \
|
-e "s^@findutils\@^$findutils^g" \
|
||||||
-e "s^@coreutilsdiet\@^$coreutilsdiet^g" \
|
-e "s^@coreutilsdiet\@^$coreutilsdiet^g" \
|
||||||
-e "s^@coreutils\@^$coreutils^g" \
|
-e "s^@coreutils\@^$coreutils^g" \
|
||||||
-e "s^@utillinux\@^$utillinux^g" \
|
-e "s^@utillinux\@^$utilLinux^g" \
|
||||||
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
-e "s^@e2fsprogs\@^$e2fsprogs^g" \
|
||||||
-e "s^@modutils\@^$modutils^g" \
|
-e "s^@modutils\@^$modutils^g" \
|
||||||
-e "s^@grub\@^$grub^g" \
|
-e "s^@grub\@^$grub^g" \
|
||||||
@ -203,6 +207,10 @@ echo copying kernel
|
|||||||
# of the kernel here.
|
# of the kernel here.
|
||||||
cp -L $kernel/vmlinuz ${archivesDir}/isolinux
|
cp -L $kernel/vmlinuz ${archivesDir}/isolinux
|
||||||
|
|
||||||
|
echo linking kernel modules
|
||||||
|
|
||||||
|
ln -s $kernel/lib $archivesDir/lib
|
||||||
|
|
||||||
echo creating ramdisk
|
echo creating ramdisk
|
||||||
|
|
||||||
rm -f ${initrd}
|
rm -f ${initrd}
|
||||||
@ -210,16 +218,24 @@ rm -f ${initrd}
|
|||||||
cp ${archivesDir}/scripts/fill-disk.sh ${initdir}/
|
cp ${archivesDir}/scripts/fill-disk.sh ${initdir}/
|
||||||
cp ${archivesDir}/scripts/ramdisk-login.sh ${initdir}/
|
cp ${archivesDir}/scripts/ramdisk-login.sh ${initdir}/
|
||||||
cp ${archivesDir}/scripts/init.sh ${initdir}/init
|
cp ${archivesDir}/scripts/init.sh ${initdir}/init
|
||||||
ln -s ${bash}/bin/bash ${initdir}/bin/sh
|
#ln -s ${bash}/bin/bash ${initdir}/bin/sh
|
||||||
|
cp ${bash}/bin/bash ${initdir}/bin/sh
|
||||||
chmod u+x ${initdir}/init
|
chmod u+x ${initdir}/init
|
||||||
chmod u+x ${initdir}/fill-disk.sh
|
chmod u+x ${initdir}/fill-disk.sh
|
||||||
chmod u+x ${initdir}/ramdisk-login.sh
|
chmod u+x ${initdir}/ramdisk-login.sh
|
||||||
cp -fau --parents ${bashdeps} ${initdir}
|
#cp -fau --parents ${bashdeps} ${initdir}
|
||||||
|
#cp -fau --parents ${utilLinux} ${initdir}
|
||||||
|
#cp -fau --parents ${coreUtilsDiet} ${initdir}
|
||||||
|
#cp -fau --parents ${e2fsProgs} ${initdir}
|
||||||
|
#cp -fau --parents ${modUtils} ${initdir}
|
||||||
|
#cp -fau --parents ${hotplug} ${initdir}
|
||||||
|
cp -fau --parents ${bash} ${initdir}
|
||||||
cp -fau --parents ${utilLinux} ${initdir}
|
cp -fau --parents ${utilLinux} ${initdir}
|
||||||
cp -fau --parents ${coreUtilsDiet} ${initdir}
|
cp -fau --parents ${coreutilsdiet} ${initdir}
|
||||||
cp -fau --parents ${e2fsProgs} ${initdir}
|
cp -fau --parents ${e2fsprogs} ${initdir}
|
||||||
cp -fau --parents ${modUtils} ${initdir}
|
cp -fau --parents ${modutils} ${initdir}
|
||||||
cp -fau --parents ${hotplug} ${initdir}
|
cp -fau --parents ${hotplug} ${initdir}
|
||||||
|
#cp -fau --parents ${kudzu} ${initdir}
|
||||||
#cp -fau --parents ${eject} ${initdir}
|
#cp -fau --parents ${eject} ${initdir}
|
||||||
|
|
||||||
touch ${archivesDir}/NIXOS
|
touch ${archivesDir}/NIXOS
|
||||||
@ -243,4 +259,4 @@ mkisofs -rJ -o ${bootiso} -b isolinux/isolinux.bin -c isolinux/boot.cat \
|
|||||||
echo cleaning up
|
echo cleaning up
|
||||||
|
|
||||||
chmod -f -R +w ${archivesDir}/*
|
chmod -f -R +w ${archivesDir}/*
|
||||||
rm -rf ${archivesDir}/*
|
#rm -rf ${archivesDir}/*
|
||||||
|
14
pkgs.nix
14
pkgs.nix
@ -1,21 +1,21 @@
|
|||||||
rec {
|
rec {
|
||||||
inherit (import /nixpkgs/trunk/pkgs/system/i686-linux.nix)
|
inherit (import /nixpkgs/trunk/pkgs/system/i686-linux.nix)
|
||||||
stdenv kernel bash coreutils coreutilsDiet findutilsWrapper utillinux sysvinit
|
stdenv kernel bash bashStatic coreutils coreutilsDiet findutilsWrapper utillinux utillinuxStatic sysvinit
|
||||||
e2fsprogsDiet e2fsprogs
|
e2fsprogsDiet e2fsprogs
|
||||||
nettools nix subversion gcc wget which vim less screen openssh binutils
|
nettools nix subversion gcc wget which vim less screen openssh binutils
|
||||||
strace shadowutils iputils gnumake curl gnused gnutar gnugrep gzip
|
strace shadowutils iputils gnumake curl gnused gnutar gnugrep gzip
|
||||||
mingettyWrapper grubWrapper syslinux parted module_init_tools hotplug udev
|
mingettyWrapper grubWrapper syslinux parted module_init_tools module_init_toolsStatic hotplug udev
|
||||||
dhcpWrapper man nano eject sysklogd;
|
dhcpWrapper man nano eject sysklogd kudzu;
|
||||||
|
|
||||||
boot = (import ./boot) {inherit stdenv kernel bash coreutils findutilsWrapper
|
boot = (import ./boot) {inherit stdenv kernel bash bashStatic coreutils findutilsWrapper
|
||||||
utillinux sysvinit e2fsprogs nettools nix subversion gcc wget which vim
|
utillinux utillinuxStatic sysvinit e2fsprogs nettools nix subversion gcc wget which vim
|
||||||
less screen openssh binutils strace shadowutils iputils gnumake curl
|
less screen openssh binutils strace shadowutils iputils gnumake curl
|
||||||
gnused gnutar gnugrep gzip mingettyWrapper grubWrapper parted module_init_tools
|
gnused gnutar gnugrep gzip mingettyWrapper grubWrapper parted module_init_tools
|
||||||
hotplug udev dhcpWrapper man nano;};
|
hotplug udev dhcpWrapper man nano;};
|
||||||
|
|
||||||
init = (import ./init) {inherit stdenv bash coreutilsDiet utillinux e2fsprogsDiet
|
init = (import ./init) {inherit stdenv bash bashStatic coreutilsDiet utillinux e2fsprogsDiet
|
||||||
nix shadowutils mingettyWrapper grubWrapper parted module_init_tools hotplug
|
nix shadowutils mingettyWrapper grubWrapper parted module_init_tools hotplug
|
||||||
dhcpWrapper man nano eject;};
|
dhcpWrapper man nano eject;};
|
||||||
|
|
||||||
everything = [boot sysvinit kernel sysklogd];
|
everything = [boot sysvinit kernel sysklogd kudzu];
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user