grub2 rebuild

This commit is contained in:
Rmys
2024-07-11 17:04:18 +03:00
parent dbb49b8478
commit 22df58a515
3 changed files with 93 additions and 2 deletions
+1 -1
View File
@@ -76,4 +76,4 @@ cat << EOF
}
EOF
fi
fi
@@ -0,0 +1,84 @@
#! /bin/sh
set -e
# grub-mkconfig helper script.
# Copyright (C) 2012 Free Software Foundation, Inc.
#
# GRUB is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# GRUB is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GRUB. If not, see <http://www.gnu.org/licenses/>.
prefix="/usr"
exec_prefix="/usr"
datarootdir="/usr/share"
export TEXTDOMAIN=grub
export TEXTDOMAINDIR="${datarootdir}/locale"
. "${datarootdir}/grub/grub-mkconfig_lib"
efi_vars_dir=/sys/firmware/efi/efivars
EFI_GLOBAL_VARIABLE=8be4df61-93ca-11d2-aa0d-00e098032b8c
OsIndications="$efi_vars_dir/OsIndicationsSupported-$EFI_GLOBAL_VARIABLE"
if [ -e "$OsIndications" ] && \
[ "$(( $(printf 0x%x \'"$(cat $OsIndications | cut -b1)") & 1 ))" = 1 ]; then
LABEL="System setup"
gettext_printf "Adding boot menu entry for EFI firmware configuration\n" >&2
onstr="$(gettext_printf "(on %s)" "${DEVICE}")"
cat << EOF
if [ "\$grub_platform" = "efi" ]; then
fwsetup --is-supported
if [ "\$?" = 0 ]; then
menuentry '$LABEL' \$menuentry_id_option 'uefi-firmware' {
fwsetup
}
fi
fi
EOF
fi
#See for EFI present
if [ -d /sys/firmware/efi ]; then
. "/usr/share/grub/grub-mkconfig_lib"
#See for Windows EFI string in EFI BIOS
WINDOWS_EFI=$(/usr/sbin/efibootmgr -v | grep -E -m 1 '(WINDOWS|Windows Boot Manager)' | sed 's/.*\(HD([^()]*)File([^()]*)\).*/\1/i')
if [ -z "$WINDOWS_EFI" ]; then
exit 0
fi
WIN_EFI_PATH_LINUX=/EFI/Microsoft/Boot/bootmgfw.efi
#Determine EFI UUID
WIN_EFI_UUID=$(grub2-probe --target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi)
ESP_SEARCH_HINTS=$(grub2-probe --target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi)
cat << EOF
menuentry "Windows Boot Manager" {
EOF
save_default_entry | sed -e "s/^/ /"
cat << EOF
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root ${ESP_SEARCH_HINTS} ${WIN_EFI_UUID}
chainloader $WIN_EFI_PATH_LINUX
}
EOF
fi
+8 -1
View File
@@ -105,13 +105,20 @@
<AdditionalFiles>
<AdditionalFile owner="root" permission="0644" target="/usr/share/grub/pisi-grub-bg.png">pisi-grub-bg.png</AdditionalFile>
<AdditionalFile owner="root" permission="0644" target="/etc/default/grub">grub-defaults</AdditionalFile>
<AdditionalFile owner="root" permission="0755" target="/etc/grub.d/30_uefi-firmware">30_uefi-firmware</AdditionalFile>
<AdditionalFile owner="root" permission="0755" target="/etc/grub.d/30_uefi-firmware">30_uefi-firmware-new</AdditionalFile>
<AdditionalFile owner="root" permission="0755" target="/usr/bin/update-grub">update-grub</AdditionalFile>
<AdditionalFile owner="root" permission="0755" target="/etc/grub.d/30_os-prober">30_os-prober2</AdditionalFile>
</AdditionalFiles>
</Package>
<History>
<Update release="32">
<Date>2024-07-11</Date>
<Version>2.12</Version>
<Comment>Rebuild.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="31">
<Date>2024-06-09</Date>
<Version>2.12</Version>