diff options
Diffstat (limited to 'os/etc/kernel/postinst.d/efi.sh.bak')
| -rw-r--r-- | os/etc/kernel/postinst.d/efi.sh.bak | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/os/etc/kernel/postinst.d/efi.sh.bak b/os/etc/kernel/postinst.d/efi.sh.bak deleted file mode 100644 index 5d63729..0000000 --- a/os/etc/kernel/postinst.d/efi.sh.bak +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh -set -eu - -VERSION=$1 -BOOTDIR=$(dirname "$2") - -label="Gentoo Linux" -efiPart=/boot/efi -efiDir="/EFI/Gentoo" - -mount "${efiPart}" || true -mount -o remount,rw /sys/firmware/efi/efivars -trap '{ umount ${efiPart}; mount -o remount,ro /sys/firmware/efi/efivars; }' EXIT - -efiKernel="vmlinuz-${VERSION}.efi" -efiInitramfs="initramfs-${VERSION}.img" - -while read -r line; do - id="${line:4:4}" - path=$(egrep -o 'File\([^(]*\)' <<<"${line}") - path="${path:5:-1}" - path="${path//\\/\/}" - path=$(basename "${path}") - kernel=$path - initramfs=${path//boot/initramfs} - initramfs=${initramfs//efi/img} - - # cleanup old boot entries - efibootmgr --delete-bootnum --bootnum "${id}" - rm -v "${efiPart}${efiDir}/${kernel}" || true - rm -v "${efiPart}${efiDir}/${initramfs}" || true - -done < <(efibootmgr -v | grep '^Boot0[^ ]*.*HD*' | grep "$label") - -cp -vf "${BOOTDIR}/vmlinuz-${VERSION}" "${efiPart}${efiDir}/${efiKernel}" -cp -vf "${BOOTDIR}/initramfs-${VERSION}.img" "${efiPart}${efiDir}/${efiInitramfs}" - -cp -vf "${BOOTDIR}/vmlinuz-${VERSION}.old" "${efiPart}${efiDir}/${efiKernel}.old" -cp -vf "${BOOTDIR}/initramfs-${VERSION}.img.old" "${efiPart}${efiDir}/${efiInitramfs}.old" - -efiDir="${efiDir,,}" # make lowercase -efiDir="${efiDir//\//\\}" # map to backslash seperators - -# create in reverse order so new kernel ends up at the top -efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "$label (old)" --loader "${efiDir}\\${efiKernel}.old" -u "initrd=${efiDir}\\${efiInitramfs}.old" -efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "$label" --loader "${efiDir}\\${efiKernel}" -u "initrd=${efiDir}\\${efiInitramfs}" - -echo -echo "done." |