Bug in Fedora's GRUB Windows Bootloader
Bug in Fedora's GRUB Windows Bootloader
Be aware of the situation if you're pairing Windows with Fedora. The newest Grub update has a problem that prevents it from starting Windows properly. You might be able to launch Windows through the UEFI settings, but this issue completely ruined my installation. The system would automatically choose Repair and then fail to resolve the problem. Eventually, I had to reinstall both OSes to restore a bootable machine.
No, I didn't just think about reducing the performance settings.
Downgrading Grub didn't resolve my Windows partition issue. Regardless of my actions, I still couldn't access Windows. Even when I skipped GRUB and used the laptop's UEFI boot menu, it would jump into its repair mode, attempt to fix what it perceived as a problem, but ultimately fail and not boot properly. I might have managed to start a command prompt to try fixing the EFI partition, but the issue would reappear if I accidentally tried loading Windows through GRUB again. It was simpler to reinstall both operating systems (Windows required a fresh install) and delay updating Fedora until the bug is resolved.
They don’t seem to offer a "masking protocol" for ignoring specific package versions. I’ve noticed that using fresh install snapshots works well in virtual machines. There’s no need to split installations across drives and rely on UEFI boot menus until now. You can likely configure GRUB_DISABLE_OS_PROBER=true in /etc/default/grub to prevent accidental Windows entries. To verify, run grub-mkconfig >/dev/null and check the generated boot menu entries with grub-mkconfig -o /boot/grub/grub.cfg. I just prefer avoiding outdated systems because of potential package bugs.
I turn off OS Prober and create a manual GRUB entry for Windows. The configuration file /etc/grub.d/40_custom.conf looks like this: "Windows" --class windows { savedefault insmod part_gpt insmod fat search --set=root --fs-uuid XXXX chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi". Substitute the UUID for your Windows drive. Locate it with sudo lsblk -f. It works on Manjaro and Fedora.
I successfully implemented rEFInd as the EFI bootloader. Everything functions smoothly, allowing me to upgrade Fedora without using GRUB to wipe Windows. The system is running both Windows and Fedora without issues.