From 14cab1ac57b44decdbf12a854f9cddd02af54004 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 22 Apr 2018 16:02:57 -0400 Subject: [PATCH] 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. --- nixos/modules/installer/tools/nixos-enter.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/installer/tools/nixos-enter.sh b/nixos/modules/installer/tools/nixos-enter.sh index 679391189612..518dbbbf21e3 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