diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-07-30 15:44:47 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-07-30 16:04:15 +0200 |
commit | e68b0c7f5f14b4bef23303ec0316bcce88f05300 (patch) | |
tree | f22415f5075e5f622a7e9b990b2d36292566627a /nixos/modules/system | |
parent | d45dcf348e451dd56c0c994a894f4c22b653fb71 (diff) | |
download | nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar.gz nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar.bz2 nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar.lz nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar.xz nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.tar.zst nixlib-e68b0c7f5f14b4bef23303ec0316bcce88f05300.zip |
Mount unionfs-fuse filesystems using the normal fileSystems option
Diffstat (limited to 'nixos/modules/system')
-rw-r--r-- | nixos/modules/system/boot/stage-1-init.sh | 10 | ||||
-rw-r--r-- | nixos/modules/system/boot/stage-1.nix | 8 |
2 files changed, 13 insertions, 5 deletions
diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh index 7adb932aba7f..1b51c11e351a 100644 --- a/nixos/modules/system/boot/stage-1-init.sh +++ b/nixos/modules/system/boot/stage-1-init.sh @@ -4,7 +4,8 @@ targetRoot=/mnt-root console=tty1 export LD_LIBRARY_PATH=@extraUtils@/lib -export PATH=@extraUtils@/bin:@extraUtils@/sbin +export PATH=@extraUtils@/bin +ln -s @extraUtils@/bin /bin fail() { @@ -262,6 +263,13 @@ mountFS() { checkFS "$device" "$fsType" + # Create backing directories for unionfs-fuse. + if [ "$fsType" = unionfs-fuse ]; then + for i in $(IFS=:; echo ${options##*,dirs=}); do + mkdir -m 0700 -p /mnt-root"${i%=*}" + done + fi + echo "mounting $device on $mountPoint..." mkdir -p "/mnt-root$mountPoint" || true diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index b51ca9f7a362..58ff97671f3d 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -35,6 +35,7 @@ let } '' mkdir -p $out/bin $out/lib + ln -s $out/bin $out/sbin # Copy what we need from Glibc. cp -pv ${pkgs.glibc}/lib/ld*.so.? $out/lib @@ -46,11 +47,10 @@ let cp -pv ${pkgs.gcc.gcc}/lib*/libgcc_s.so.* $out/lib # Copy BusyBox. - cp -rvd ${pkgs.busybox}/{bin,sbin} $out/ - chmod -R u+w $out + cp -pvd ${pkgs.busybox}/bin/* ${pkgs.busybox}/sbin/* $out/bin/ # Copy some utillinux stuff. - cp -v ${pkgs.utillinux}/sbin/blkid $out/bin + cp -vf ${pkgs.utillinux}/sbin/blkid $out/bin cp -pdv ${pkgs.utillinux}/lib/libblkid*.so.* $out/lib cp -pdv ${pkgs.utillinux}/lib/libuuid*.so.* $out/lib @@ -73,7 +73,7 @@ let # Copy modprobe. cp -v ${pkgs.kmod}/bin/kmod $out/bin/ - ln -s kmod $out/bin/modprobe + ln -sf kmod $out/bin/modprobe ${config.boot.initrd.extraUtilsCommands} |