summary refs log tree commit diff
path: root/nixos/modules/installer/tools/nixos-enter.sh
diff options
context:
space:
mode:
authorSamuel Dionne-Riel <samuel@dionne-riel.com>2018-04-22 16:02:57 -0400
committerSamuel Dionne-Riel <samuel@dionne-riel.com>2018-04-22 16:02:57 -0400
commit14cab1ac57b44decdbf12a854f9cddd02af54004 (patch)
tree263f6ea36331751fb68e78aa7349190029e6e628 /nixos/modules/installer/tools/nixos-enter.sh
parent6c064e6b1f34a8416f990db0cc617a7195f71588 (diff)
downloadnixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar.gz
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar.bz2
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar.lz
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar.xz
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.tar.zst
nixpkgs-14cab1ac57b44decdbf12a854f9cddd02af54004.zip
nixos-enter: Ensures presence of full /sys tree.
This partially reverts a change from e88f28965a7d76e83478d3ae6fcddc165b1c94f1
which removed the `mount --rbind /sys`.

While true that the activation scripts will mount `sysfs` at `/sys`,
none of the mountpoints lower in the `/sys` tree are handled by the
activation script, which includes `efivarfs`.

This fixes #38477 since it ensures the presence of `efivarfs` in the
`/sys` tree, which is why the systemd-boot installation failed.
Diffstat (limited to 'nixos/modules/installer/tools/nixos-enter.sh')
-rw-r--r--nixos/modules/installer/tools/nixos-enter.sh3
1 files changed, 2 insertions, 1 deletions
diff --git a/nixos/modules/installer/tools/nixos-enter.sh b/nixos/modules/installer/tools/nixos-enter.sh
index 67939118961..518dbbbf21e 100644
--- a/nixos/modules/installer/tools/nixos-enter.sh
+++ b/nixos/modules/installer/tools/nixos-enter.sh
@@ -51,8 +51,9 @@ if [[ ! -e $mountPoint/etc/NIXOS ]]; then
     exit 126
 fi
 
-mkdir -m 0755 -p "$mountPoint/dev"
+mkdir -m 0755 -p "$mountPoint/dev" "$mountPoint/sys"
 mount --rbind /dev "$mountPoint/dev"
+mount --rbind /sys "$mountPoint/sys"
 
 # Run the activation script. Set $LOCALE_ARCHIVE to supress some Perl locale warnings.
 LOCALE_ARCHIVE=$system/sw/lib/locale/locale-archive chroot "$mountPoint" "$system/activate" >&2 || true