I’ve been trying this modification/fix on my multi-boot system, and I have a couple of anomalies to report - or to expose my ignorance with
I ran the suggested commands above, but some oddities in /boot/grub/grub.cfg resulted:
The first EndeavourOS entry was trying to load up [ linux /boot/vmlinuz-linux.png ] (which is not likely to go well - this is a .png file of the EndeavourOS logo). This same entry contains the dreaded:
[ initrd /boot/amd-ucode.img ] on its own as well. Strangely, the second entry appears to be perfect, including the double initrd entries.
The second entry was for ArcoLinux - and would boot - but does not have amd-code.img mentioned in the initrd line.
The third entry is for an pre-existing Arch - and is perfect, would boot, and includes the amd-ucode.img
The other entries are for debian based systems, and show no sign of trouble.
I then tried the same thing on Arch itself. It worked fine for Arch’s own entries (as it should!) and they include amd-ucode.img where appropriate. However, although ALL entries would boot, neither Arcolinux nor EndeavourOS had any mention of amd-ucode.img in their entries, although they have the file in the boot directory.
So - I am doing something wrong, or something doesn’t quite work, or both! Overall, it strengthens my desire to sidestep and ignore the entire grub ecosystem and use rEFInd. Comments? Enlightenment? Hope I didn’t ruin anyone’s day …