From f65511c707e6a77a57869d9d2e0aa081645020d9 Mon Sep 17 00:00:00 2001 From: classabbyamp Date: Mon, 19 Jan 2026 20:04:33 -0500 Subject: [PATCH] grub: update to 2.14. --- srcpkgs/grub/patches/devicetree-loading.patch | 8 +-- srcpkgs/grub/patches/xfs.patch | 60 ------------------- srcpkgs/grub/template | 15 ++--- 3 files changed, 8 insertions(+), 75 deletions(-) delete mode 100644 srcpkgs/grub/patches/xfs.patch diff --git a/srcpkgs/grub/patches/devicetree-loading.patch b/srcpkgs/grub/patches/devicetree-loading.patch index b2284bf0f35937..9c4cb9c6f9f466 100644 --- a/srcpkgs/grub/patches/devicetree-loading.patch +++ b/srcpkgs/grub/patches/devicetree-loading.patch @@ -6,12 +6,12 @@ based on https://src.fedoraproject.org/rpms/grub2/blob/rawhide/f/0022-Add-device --- a/util/grub-mkconfig.in +++ b/util/grub-mkconfig.in -@@ -255,7 +255,8 @@ - GRUB_ENABLE_CRYPTODISK \ +@@ -256,7 +256,8 @@ GRUB_BADRAM \ GRUB_OS_PROBER_SKIP_LIST \ -- GRUB_DISABLE_SUBMENU -+ GRUB_DISABLE_SUBMENU \ + GRUB_DISABLE_SUBMENU \ +- GRUB_FORCE_EFI_ALL_VIDEO ++ GRUB_FORCE_EFI_ALL_VIDEO \ + GRUB_DEFAULT_DTB if test "x${grub_cfg}" != "x"; then diff --git a/srcpkgs/grub/patches/xfs.patch b/srcpkgs/grub/patches/xfs.patch deleted file mode 100644 index 6982be08f66720..00000000000000 --- a/srcpkgs/grub/patches/xfs.patch +++ /dev/null @@ -1,60 +0,0 @@ -fixes "unknown filesystem" error when installing grub on a system that -uses XFS for /boot. - -From 68dd65cfdaad08b1f8ec01b84949b0bf88bc0d8c Mon Sep 17 00:00:00 2001 -From: Jon DeVree -Date: Sun, 11 Feb 2024 10:34:58 -0500 -Subject: [PATCH] fs/xfs: Handle non-continuous data blocks in directory - extents - -The directory extent list does not have to be a continuous list of data -blocks. When GRUB tries to read a non-existant member of the list, -grub_xfs_read_file() will return a block of zero'ed memory. Checking for -a zero'ed magic number is sufficient to skip this non-existant data block. - -Prior to commit 07318ee7e (fs/xfs: Fix XFS directory extent parsing) -this was handled as a subtle side effect of reading the (non-existant) -tail data structure. Since the block was zero'ed the computation of the -number of directory entries in the block would return 0 as well. - -Fixes: 07318ee7e (fs/xfs: Fix XFS directory extent parsing) -Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2254370 - -Signed-off-by: Jon DeVree -Reviewed-By: Vladimir Serbinenko -Reviewed-by: Daniel Kiper ---- - grub-core/fs/xfs.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/grub-core/fs/xfs.c b/grub-core/fs/xfs.c -index bc2224dbb..8e02ab4a3 100644 ---- a/grub-core/fs/xfs.c -+++ b/grub-core/fs/xfs.c -@@ -902,6 +902,7 @@ grub_xfs_iterate_dir (grub_fshelp_node_t dir, - grub_xfs_first_de(dir->data, dirblock); - int entries = -1; - char *end = dirblock + dirblk_size; -+ grub_uint32_t magic; - - numread = grub_xfs_read_file (dir, 0, 0, - blk << dirblk_log2, -@@ -912,6 +913,15 @@ grub_xfs_iterate_dir (grub_fshelp_node_t dir, - return 0; - } - -+ /* -+ * If this data block isn't actually part of the extent list then -+ * grub_xfs_read_file() returns a block of zeros. So, if the magic -+ * number field is all zeros then this block should be skipped. -+ */ -+ magic = *(grub_uint32_t *)(void *) dirblock; -+ if (!magic) -+ continue; -+ - /* - * Leaf and tail information are only in the data block if the number - * of extents is 1. --- -2.44.0 - diff --git a/srcpkgs/grub/template b/srcpkgs/grub/template index 5bf8c1d7909f80..dce6ffa80b2c4f 100644 --- a/srcpkgs/grub/template +++ b/srcpkgs/grub/template @@ -1,9 +1,9 @@ # Template file for 'grub' pkgname=grub -version=2.12 -revision=2 +version=2.14 +revision=1 hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf help2man - automake gettext-devel-tools" + automake gettext-devel-tools autoconf-archive" makedepends="libusb-compat-devel ncurses-devel freetype-devel liblzma-devel device-mapper-devel fuse-devel" depends="os-prober" @@ -14,7 +14,7 @@ license="GPL-3.0-or-later" homepage="https://www.gnu.org/software/grub/" changelog="https://git.savannah.gnu.org/cgit/grub.git/plain/NEWS" distfiles="${GNU_SITE}/grub/grub-${version}.tar.xz" -checksum=f3c97391f7c4eaa677a78e090c7e97e6dc47b16f655f04683ebd37bef7fe0faa +checksum=bc8d3c73535b8838d8c8e2654d73edc4e6ae8c8acdb45d5df5dc9a1547446d43 archs="i686* x86_64* aarch64* ppc ppc-musl ppc64*" nopie=yes @@ -47,9 +47,6 @@ esac pre_configure() { autoreconf -fi - - # XXX: empty file missing from 2.12 release - touch grub-core/extra_deps.lst } do_configure() { @@ -158,10 +155,6 @@ do_install() { ${DESTDIR}/usr/bin/update-grub chmod 755 ${DESTDIR}/usr/bin/update-grub - vmkdir usr/share/bash-completion/completions - mv ${DESTDIR}/etc/bash_completion.d/grub \ - ${DESTDIR}/usr/share/bash-completion/completions - # Remove useless tools rm ${DESTDIR}/usr/bin/grub-ofpathname rm ${DESTDIR}/usr/bin/grub-sparc64-setup