diff --git a/srcpkgs/grub/patches/0004-add-GRUB_COLOR_variables.patch b/srcpkgs/grub/patches/0004-add-GRUB_COLOR_variables.patch
index c113a81d57..903a39cc03 100644
--- a/srcpkgs/grub/patches/0004-add-GRUB_COLOR_variables.patch
+++ b/srcpkgs/grub/patches/0004-add-GRUB_COLOR_variables.patch
@@ -1,11 +1,11 @@
 diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
-index 3390ba9..c416489 100644
+index f8cbb8d..f271608 100644
 --- a/util/grub-mkconfig.in
 +++ b/util/grub-mkconfig.in
-@@ -218,6 +218,8 @@ export GRUB_DEFAULT \
+@@ -246,6 +246,8 @@ export GRUB_DEFAULT \
+   GRUB_BACKGROUND \
    GRUB_THEME \
    GRUB_GFXPAYLOAD_LINUX \
-   GRUB_DISABLE_OS_PROBER \
 +  GRUB_COLOR_NORMAL \
 +  GRUB_COLOR_HIGHLIGHT \
    GRUB_INIT_TUNE \
diff --git a/srcpkgs/grub/patches/grub-install-pvxen-paths.patch b/srcpkgs/grub/patches/grub-install-pvxen-paths.patch
index 0522bcd60e..0965c058f4 100644
--- a/srcpkgs/grub/patches/grub-install-pvxen-paths.patch
+++ b/srcpkgs/grub/patches/grub-install-pvxen-paths.patch
@@ -31,7 +31,7 @@ diff --git a/util/grub-install.c b/util/grub-install.c
 index b82c14d41..caadada98 100644
 --- a/util/grub-install.c
 +++ b/util/grub-install.c
-@@ -2057,6 +2057,28 @@ main (int argc, char *argv[])
+@@ -1962,6 +1962,28 @@ main (int argc, char *argv[])
  	}
        break;
  
@@ -60,7 +60,7 @@ index b82c14d41..caadada98 100644
      case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON:
      case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS:
      case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS:
-@@ -2066,8 +2088,6 @@ main (int argc, char *argv[])
+@@ -1971,8 +1971,6 @@ main (int argc, char *argv[])
      case GRUB_INSTALL_PLATFORM_MIPSEL_ARC:
      case GRUB_INSTALL_PLATFORM_ARM_UBOOT:
      case GRUB_INSTALL_PLATFORM_I386_QEMU:
diff --git a/srcpkgs/grub/patches/install_powerpc_machtypes.patch b/srcpkgs/grub/patches/install_powerpc_machtypes.patch
index 209b726c77..ca992d9d4b 100644
--- a/srcpkgs/grub/patches/install_powerpc_machtypes.patch
+++ b/srcpkgs/grub/patches/install_powerpc_machtypes.patch
@@ -28,7 +28,7 @@ diff --git a/grub-core/osdep/basic/platform.c b/grub-core/osdep/basic/platform.c
 index 4b5502aeb..2ab907976 100644
 --- a/grub-core/osdep/basic/platform.c
 +++ b/grub-core/osdep/basic/platform.c
-@@ -24,3 +24,8 @@ grub_install_get_default_x86_platform (void)
+@@ -30,3 +30,8 @@ grub_install_get_default_x86_platform (void)
    return "i386-pc";
  }
  
@@ -49,7 +49,7 @@ index 35f1bcc0e..9805c36d4 100644
  #include <string.h>
  
  #include <sys/utsname.h>
-@@ -145,3 +146,74 @@ grub_install_get_default_x86_platform (void)
+@@ -154,3 +154,74 @@ grub_install_get_default_x86_platform (void)
    grub_util_info ("... not found");
    return "i386-pc";
  }
@@ -128,7 +128,7 @@ diff --git a/grub-core/osdep/unix/platform.c b/grub-core/osdep/unix/platform.c
 index a3fcfcaca..28cb37e15 100644
 --- a/grub-core/osdep/unix/platform.c
 +++ b/grub-core/osdep/unix/platform.c
-@@ -212,13 +212,29 @@ grub_install_register_ieee1275 (int is_prep, const char *install_device,
+@@ -218,13 +218,29 @@ grub_install_register_ieee1275 (int is_prep, const char *install_device,
    else
      boot_device = get_ofpathname (install_device);
  
@@ -185,21 +185,21 @@ diff --git a/include/grub/util/install.h b/include/grub/util/install.h
 index 5ca4811cd..9f517a1bb 100644
 --- a/include/grub/util/install.h
 +++ b/include/grub/util/install.h
-@@ -206,6 +206,9 @@ grub_install_create_envblk_file (const char *name);
+@@ -223,6 +223,9 @@ grub_install_get_default_arm_platform (void);
  const char *
  grub_install_get_default_x86_platform (void);
  
 +const char *
 +grub_install_get_default_powerpc_machtype (void);
 +
- void
+ int
  grub_install_register_efi (grub_device_t efidir_grub_dev,
  			   const char *efifile_path,
 diff --git a/util/grub-install.c b/util/grub-install.c
 index e1a0202da..70b22eec4 100644
 --- a/util/grub-install.c
 +++ b/util/grub-install.c
-@@ -1155,7 +1155,18 @@ main (int argc, char *argv[])
+@@ -1179,7 +1179,18 @@ main (int argc, char *argv[])
  
    if (platform == GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275)
      {
diff --git a/srcpkgs/grub/patches/os-prober-osx86.patch b/srcpkgs/grub/patches/os-prober-osx86.patch
index 5226a6def3..f0357c72d1 100644
--- a/srcpkgs/grub/patches/os-prober-osx86.patch
+++ b/srcpkgs/grub/patches/os-prober-osx86.patch
@@ -2,7 +2,7 @@ Patches OS X detection out of os-prober hook on non-x86 architectures. The
 menu entries generated for those are invalid for non-x86 Mac stuff.
 --- a/util/grub.d/30_os-prober.in
 +++ b/util/grub.d/30_os-prober.in
-@@ -42,6 +42,11 @@ if [ -z "${OSPROBED}" ] ; then
+@@ -45,6 +45,11 @@ if [ -z "${OSPROBED}" ] ; then
  fi
  
  osx_entry() {
diff --git a/srcpkgs/grub/template b/srcpkgs/grub/template
index 69cea9ae19..bf10fc6634 100644
--- a/srcpkgs/grub/template
+++ b/srcpkgs/grub/template
@@ -1,7 +1,7 @@
 # Template file for 'grub'
 pkgname=grub
-version=2.04
-revision=6
+version=2.06
+revision=1
 hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf help2man"
 makedepends="libusb-compat-devel ncurses-devel freetype-devel
  liblzma-devel device-mapper-devel fuse-devel"
@@ -12,7 +12,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://www.gnu.org/software/grub/"
 distfiles="${GNU_SITE}/grub/grub-${version}.tar.xz"
-checksum=e5292496995ad42dabe843a0192cf2a2c502e7ffcc7479398232b10a472df77d
+checksum=b79ea44af91b93d17cd3fe80bdae6ed43770678a9a5ae192ccea803ebb657ee1
 
 archs="i686* x86_64* aarch64* ppc ppc-musl ppc64*"
 nopie=yes
@@ -43,10 +43,6 @@ case "$XBPS_TARGET_MACHINE" in
 		;;
 esac
 
-post_extract() {
-	sed -i -e 's,freetype/ftsynth.h,freetype2/ftsynth.h,' util/grub-mkfont.c
-}
-
 do_configure() {
 	unset CC AS LD RANLIB CPP
 	local freestanding_cflags="-fno-stack-protector"
@@ -61,9 +57,6 @@ do_configure() {
 		--enable-grub-mkfont --enable-grub-mount --disable-werror
 		--sbindir=/usr/bin"
 
-	# fix unifont.bdf location so grub-mkfont can create *.pf2 files
-	sed -i 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|' configure
-
 	# build tools
 	msg_normal "Configuring grub tools...\n"
 	mkdir $wrksrc/build