mirror of
https://github.com/LukeHagar/omarchy.git
synced 2025-12-06 04:20:23 +00:00
39 lines
1.4 KiB
Bash
39 lines
1.4 KiB
Bash
echo "Update UKI to custom named entry"
|
|
|
|
if command -v limine &>/dev/null && [[ -f /etc/default/limine ]]; then
|
|
if grep -q "^ENABLE_UKI=yes" /etc/default/limine; then
|
|
if ! grep -q "^CUSTOM_UKI_NAME=" /etc/default/limine; then
|
|
sudo sed -i '/^ENABLE_UKI=yes/a CUSTOM_UKI_NAME="omarchy"' /etc/default/limine
|
|
fi
|
|
|
|
# Remove the archinstall-created Limine entry
|
|
while IFS= read -r bootnum; do
|
|
sudo efibootmgr -b "$bootnum" -B >/dev/null 2>&1
|
|
done < <(efibootmgr | grep -E "^Boot[0-9]{4}\*? Arch Linux Limine" | sed 's/^Boot\([0-9]\{4\}\).*/\1/')
|
|
|
|
sudo limine-update
|
|
|
|
uki_file=$(find /boot/EFI/Linux/ -name "omarchy*.efi" -printf "%f\n" 2>/dev/null | head -1)
|
|
|
|
if [[ -n "$uki_file" ]]; then
|
|
while IFS= read -r bootnum; do
|
|
sudo efibootmgr -b "$bootnum" -B >/dev/null 2>&1
|
|
done < <(efibootmgr | grep -E "^Boot[0-9]{4}\*? Omarchy" | sed 's/^Boot\([0-9]\{4\}\).*/\1/')
|
|
|
|
# Skip EFI entry creation on Apple hardware
|
|
if ! cat /sys/class/dmi/id/bios_vendor 2>/dev/null | grep -qi "Apple"; then
|
|
sudo efibootmgr --create \
|
|
--disk "$(findmnt -n -o SOURCE /boot | sed 's/p\?[0-9]*$//')" \
|
|
--part "$(findmnt -n -o SOURCE /boot | grep -o 'p\?[0-9]*$' | sed 's/^p//')" \
|
|
--label "Omarchy" \
|
|
--loader "\\EFI\\Linux\\$uki_file"
|
|
fi
|
|
fi
|
|
else
|
|
echo "Not using UKI. Not making any changes."
|
|
fi
|
|
else
|
|
echo "Boot config is non-standard. Not making any changes."
|
|
fi
|
|
|