Merge pull request #7824 from lumarogit/grub

grub: upgrade to 2.12
This commit is contained in:
Luis
2023-12-26 08:02:22 +01:00
committed by GitHub
7 changed files with 92 additions and 53 deletions

View File

@@ -1,3 +1,2 @@
da388905710bb4cbfbc7bd7346ff9174 grub-2.06-upstream_fixes-1.patch
cf0fd928b1e5479c8108ee52cb114363 grub-2.06.tar.xz
db39d7824d533b793007bde59bceae69 unifont-13.0.06.bdf.gz
60c564b1bdc39d8e43b3aab4bc0fb140 grub-2.12.tar.xz
b15a98490517eda47dd495a84d918699 unifont-15.1.04.bdf.gz

View File

@@ -1,4 +1,4 @@
grub-efi-2.06-2
grub-efi-2.12-1
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib/
drwxr-xr-x root/root usr/lib/grub/
@@ -35,6 +35,8 @@ drwxr-xr-x root/root usr/lib/grub/x86_64-efi/
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/bitmap.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/bitmap_scale.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/bitmap_scale.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/bli.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/bli.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/blocklist.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/blocklist.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/boot.mod
@@ -114,6 +116,8 @@ drwxr-xr-x root/root usr/lib/grub/x86_64-efi/
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/efifwsetup.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/efinet.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/efinet.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/efitextmode.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/efitextmode.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/ehci.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/ehci.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/elf.mod
@@ -189,6 +193,7 @@ drwxr-xr-x root/root usr/lib/grub/x86_64-efi/
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gcry_whirlpool.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/gcry_whirlpool.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gdb_grub
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gdb_helper.py
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/geli.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/geli.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gettext.mod
@@ -201,7 +206,6 @@ drwxr-xr-x root/root usr/lib/grub/x86_64-efi/
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/gfxterm_background.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gfxterm_menu.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/gfxterm_menu.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gmodule.pl
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gptsync.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/gptsync.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/gzio.mod
@@ -386,6 +390,8 @@ drwxr-xr-x root/root usr/lib/grub/x86_64-efi/
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/pcidump.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/pgp.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/pgp.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/plainmount.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/plainmount.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/play.mod
-rwxr-xr-x root/root usr/lib/grub/x86_64-efi/play.module-efi
-rw-r--r-- root/root usr/lib/grub/x86_64-efi/png.mod
@@ -555,3 +561,33 @@ drwxr-xr-x root/root usr/share/grub/
-rw-r--r-- root/root usr/share/grub/euro.pf2
-rw-r--r-- root/root usr/share/grub/unicode.pf2
-rw-r--r-- root/root usr/share/grub/widthspec.h
drwxr-xr-x root/root usr/share/man/
drwxr-xr-x root/root usr/share/man/man1/
-rw-r--r-- root/root usr/share/man/man1/grub-editenv-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-file-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-fstest-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-glue-efi-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-kbdcomp-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-menulst2cfg-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkfont-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkimage-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mklayout-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mknetdir-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkpasswd-pbkdf2-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkrelpath-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkrescue-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mkstandalone-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-mount-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-render-label-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-script-check-efi.1.gz
-rw-r--r-- root/root usr/share/man/man1/grub-syslinux2cfg-efi.1.gz
drwxr-xr-x root/root usr/share/man/man8/
-rw-r--r-- root/root usr/share/man/man8/grub-bios-setup-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-install-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-macbless-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-mkconfig-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-ofpathname-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-probe-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-reboot-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-set-default-efi.8.gz
-rw-r--r-- root/root usr/share/man/man8/grub-sparc64-setup-efi.8.gz

View File

@@ -2,40 +2,37 @@
# depends : grub efivar efibootmgr freetype2 dosfstools
name=grub-efi
version=2.06
unifont_version=13.0.06
release=2
version=2.12
unifont_version=15.1.04
release=1
source="https://ftp.gnu.org/gnu/grub/grub-$version.tar.xz
https://ftp.gnu.org/gnu/unifont/unifont-$unifont_version/unifont-$unifont_version.bdf.gz
https://www.linuxfromscratch.org/patches/blfs/svn/grub-2.06-upstream_fixes-1.patch"
https://ftp.gnu.org/gnu/unifont/unifont-$unifont_version/unifont-$unifont_version.bdf.gz"
build() {
# workaround for https://savannah.gnu.org/bugs/?60458
# some more info: https://www.linuxquestions.org/questions/showthread.php?p=6257712
# grub 2.06 reboots immediately when compiled with -O2, only affects legacy BIOS
export CFLAGS="-march=x86-64 -pipe -Os"
cd grub-$version
# Fix an issue causing grub-install to fail when the /boot partition
# (or the root partition if /boot is not a separate partition)
# is created by e2fsprogs-1.47.0 or later:
patch -Np1 -i $SRC/grub-2.06-upstream_fixes-1.patch
# Install font data
gunzip $SRC/unifont-$unifont_version.bdf.gz
cp $SRC/unifont-$unifont_version.bdf unifont.bdf
./configure --prefix=/usr \
--sbindir=/sbin \
--sysconfdir=/etc \
--disable-efiemu \
--enable-grub-mkfont \
--with-platform=efi \
--target=x86_64 \
--program-prefix="" \
--program-suffix="-efi" \
--with-bootdir="/boot" \
--disable-werror \
--disable-nls
# Unset any environment variables which may affect the build
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
# Add a file missing from the release tarball
echo depends bli part_gpt > grub-core/extra_deps.lst
./configure --prefix=/usr \
--sbindir=/sbin \
--sysconfdir=/etc \
--disable-efiemu \
--enable-grub-mkfont \
--with-platform=efi \
--target=x86_64 \
--program-prefix="" \
--program-suffix="-efi" \
--with-bootdir="/boot" \
--disable-werror \
--disable-nls
make
make DESTDIR=$PKG install

View File

@@ -1,5 +1,4 @@
da388905710bb4cbfbc7bd7346ff9174 grub-2.06-upstream_fixes-1.patch
cf0fd928b1e5479c8108ee52cb114363 grub-2.06.tar.xz
60c564b1bdc39d8e43b3aab4bc0fb140 grub-2.12.tar.xz
5555ecc4025d7b5cf01709ed7bfe6e5f grub.cfg
b4a4d287513091e7e66eca5853101a93 grub.default
78d2b0d53485e16754d17b54837eb3f0 venom-tweaks.patch
3a085024804f65fcfcaf6bef536743ff venom-multi.patch

View File

@@ -1,4 +1,4 @@
grub-2.06-6
grub-2.12-1
drwxr-xr-x root/root etc/
drwxr-xr-x root/root etc/bash_completion.d/
-rw-r--r-- root/root etc/bash_completion.d/grub
@@ -8,6 +8,7 @@ drwxr-xr-x root/root etc/grub.d/
-rwxr-xr-x root/root etc/grub.d/00_header
-rwxr-xr-x root/root etc/grub.d/10_linux
-rwxr-xr-x root/root etc/grub.d/20_linux_xen
-rwxr-xr-x root/root etc/grub.d/25_bli
-rwxr-xr-x root/root etc/grub.d/30_os-prober
-rwxr-xr-x root/root etc/grub.d/30_uefi-firmware
-rwxr-xr-x root/root etc/grub.d/40_custom
@@ -242,6 +243,7 @@ drwxr-xr-x root/root usr/lib/grub/i386-pc/
-rw-r--r-- root/root usr/lib/grub/i386-pc/gdb.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/gdb.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/gdb_grub
-rw-r--r-- root/root usr/lib/grub/i386-pc/gdb_helper.py
-rw-r--r-- root/root usr/lib/grub/i386-pc/geli.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/geli.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/gettext.mod
@@ -254,7 +256,6 @@ drwxr-xr-x root/root usr/lib/grub/i386-pc/
-rwxr-xr-x root/root usr/lib/grub/i386-pc/gfxterm_background.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/gfxterm_menu.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/gfxterm_menu.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/gmodule.pl
-rw-r--r-- root/root usr/lib/grub/i386-pc/gptsync.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/gptsync.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/gzio.mod
@@ -441,6 +442,8 @@ drwxr-xr-x root/root usr/lib/grub/i386-pc/
-rwxr-xr-x root/root usr/lib/grub/i386-pc/pcidump.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/pgp.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/pgp.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/plainmount.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/plainmount.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/plan9.mod
-rwxr-xr-x root/root usr/lib/grub/i386-pc/plan9.module
-rw-r--r-- root/root usr/lib/grub/i386-pc/play.mod

View File

@@ -2,34 +2,29 @@
# depends : gettext bash xz fuse2 python3
name=grub
version=2.06
release=6
version=2.12
release=1
backup="etc/default/grub"
source="https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz
venom-tweaks.patch
venom-multi.patch
grub.default
grub-2.06-upstream_fixes-1.patch
grub.cfg"
build() {
# workaround for https://savannah.gnu.org/bugs/?60458
# some more info: https://www.linuxquestions.org/questions/showthread.php?p=6257712
# grub 2.06 reboots immediately when compiled with -O2, only affects legacy BIOS
export CFLAGS="-march=x86-64 -pipe -Os"
cd $name-$version
# venom fallball and multikernel support
patch -Np1 -i $SRC/venom-tweaks.patch
# Fix an issue causing grub-install to fail when the /boot partition
# (or the root partition if /boot is not a separate partition)
# is created by e2fsprogs-1.47.0 or later:
patch -Np1 -i $SRC/grub-2.06-upstream_fixes-1.patch
# Unset any environment variables which may affect the build
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
# Venom multikernel support
patch -Np1 -i $SRC/venom-multi.patch
# Add a file missing from the release tarball
echo depends bli part_gpt > grub-core/extra_deps.lst
# Fix os name
sed 's|GNU/Linux|Linux|' -i "util/grub.d/10_linux.in"
autoreconf -fv
./configure --prefix=/usr \
--sbindir=/sbin \
--sysconfdir=/etc \
@@ -43,6 +38,6 @@ build() {
# Borrow from Arch
install -D -m0644 $SRC/grub.default $PKG/etc/default/grub
# liveiso stuff
# Liveiso stuff
cp $SRC/grub.cfg $PKG/usr/share/$name
}

View File

@@ -0,0 +1,10 @@
--- grub-2.12/util/grub.d/10_linux.in-ori 2023-12-22 12:16:58.386810228 +0100
+++ grub-2.12/util/grub.d/10_linux.in 2023-12-22 12:25:15.381835867 +0100
@@ -224,6 +224,7 @@
initrd_real=
for i in "initrd.img-${version}" "initrd-${version}.img" \
+ "initrd-venom-*.img" \
"initrd-${alt_version}.img.old" "initrd-${version}.gz" \
"initrd-${alt_version}.gz.old" "initrd-${version}" \
"initramfs-${version}.img" "initramfs-${alt_version}.img.old" \