Yes, it is. And that’s also the reason why OSTree doesn’t update the bootloader to make sure that regressions don’t happen in the boot path and can be fallback to the previous kernel and rootfs.
But the bootloader not being updated is what caused the issue in this case since it means that contains any bugs that were fixed during the F30 release.
It looks like people who used f30 install media with an older grub2 that can’t read from the /boot/loader symlink will hit the “no boot entries” issue after updating to f31. And I’m guessing a lot more people are going to hit this once f31 hits GA. My suggestion now is to:
revert this patch (probably just in dist-git for now?)
document double boot entries (and possibly just a manual workaround by setting GRUB_ENABLE_BLSCFG=false )
enhance grub2-switch-to-blscfg , OSTree, and Anaconda as mentioned above
publicize that grub2-switch-to-blscfg on FSB now works
Should do at least do (1) and (2) before GA, and we could do (3) and (4) later. Does that make sense?
@javierm I’m now playing with grub2 shell, as suggested in this article, and I can see the grubenv file in the /grub2 directory, which contains blsdir=/loader.0/entries.
Yes, that’s exactly the bug I was talking about. That’s why I mentioned that you should unset the blsdir variable since that’s wrongly set (grub2-mkconfig getting confused about /boot/loader/ being a symlink).
You can get debug information about the blscfg command if you do set debug=blscfg and then run the blscfg command.
Maybe there’s more than one bug here, it would be good if you can test with the latest version of the grub2 efi binary as mentioned in a previous comment.
I still have the problem that every time reboot i have to go through the process again to find my boot entries,
did you figure out how to solve it permanently once you get in to the operating system?
Do you have the blsdir variable set in the grubenv? If that’s the case you need to unset it (grub2-editenv - unset blsdir) and that might solve your issue if you are facing the same bug.