Arch's grub implementation needs to not be odd man out

I multi-boot several distros.
My default distro is fedora 32
From the Fedora 32 system I can directly boot
Leap15 (SUSE Linux)
UbuntoDDE (Deepin) /Ubuntu 2020
Makulu Lindoz (Debian cinnamon)
Makulu 2020 flash (xfce)
Deepin (From China)

But not any arch based distro.

To boot EndeavourOS, I have to use the emergency repair option.

Why do I have so many distros.
I wrote some software in C, and I am looking at the completed executable size using the above.
Smallest executable is from Leap 15, Next is Fedora32, then Ubuntu, then the Makulu stuff (Debian) and then Arch.
The size is due to the application “strip” which removes debugging meta data. It would be great if ARCH’s grub was promoted to grub2. or if EndeavourOS could provide the file information to allow chain loading.

///////////////////////////////prototype /////////////////////
exec tail -n +3 $0

This file provides an easy way to add custom menu entries. Simply type the

menu entries you want to add after this comment. Be careful not to change

the ‘exec tail’ line above.

menuentry ‘EndeavourOS Arch’
search --fs-uuid --no-floppy --set=root 00BD-4E1F #<< change as necessary
chainloader (${root})/EFI/org.xxxx/bootloaderx64.efi

I don’t think the problem is with Arch’s grub implementation. The difficulty is with an Arch boot file choice and method. Arch chooses to load the microcode for Intel and AMD chips with initrd, rather than blending it in elsewhere. Other’s grub implementations and os-prober don’t allow for this, and try to boot the microcode instead of the initramfs.img.

There are several ways around this. One of them is to fix the grub - and EndeavourOS has a tool for this. Another is to use rEFInd for boot selecting, with the choice to avoid grub entirely if you wish.


Thank you from Montreal

I use my own grub.cfg, but tailor it after the said linux is installed. Then I just copy my grub.cfg to “/boot/grub”.

Also I now use a simpler label instead of uuid’s. Cleaner look.

I took eos’s grub.cfg and incorporated it into my grub.cfg.

I also change grub.efi to the older 2+ so I can still boot ISO’s from grub.