Install EndeavourOS without overwriting bootloader entry

Hello, I have a laptop with two hard drives, in one of which EOS with KDE is installed. Whenever I have tried to install EOS on the other drive (for testing purpose), the bootloader entry of the first drive is overwritten in the boot menu by the new install. I can still boot from “Boot from EFI” option in boot menu in the first drive and then reinstall grub with a different bootloader-id but it’s a hassle, to say the list.
I have also tried modifying bootloader-id in /etc/calamares/modules/bootloader.conf in the live usb but the overwrite still happens.
Could you please suggest any other way to avoid it?

Hello @shirshendu ,
I would install the test system with no grub option in Calamares.
From your primary system
remove hashmark from the following line in /etc/default/grub
save it
grub-mkconfig -o /boot/grub/grub.cfg
will find your new test system and insert it to grub menu
This might be interesting for you

The fact that you

means that the bootloader is not overwritten.

Installing Grub bootloader for your second system just gives the boot priority to this system and since os-prober is disabled by default you are not seeing a boot option in the Grub boot menu for your first system.

Instead of reinstalling the bootloader for your first system each time, you could have just gone into the firmware settings and put it back on top of the boot priority list.

I installed the 2nd drive with btrfs and enabled os-prober in the 1st drive and updated grub … But the 2nd EOS isn’t detected

Just to clarify myself, in the 1st post, what I referred was the entry being deleted in the system boot screen (which contains the entry “Boot From EFI”), not Grub.

For it to work, you have to give the two installations different bootloader IDs.

First rename the directory in /boot/efi/EFI that contains the grubx64.efi file. A lot of distros set it up so this directory is named after the distro, but I think for EOS it might just be named “Grub”. Take a peek in /boot/efi/EFI to be sure.

sudo mv /boot/efi/EFI/[old name] /boot/efi/EFI/[new name]

Change the GRUB_DISTRIBUTOR= line in /etc/default/grub to match whatever you just named the boot directory in /boot/efi/EFI/.

sudo nano /etc/default/grub

Next, run the Grub installation script.

sudo grub-install ...

I have put “...” to mean “add whatever options are specifically relevant for your Grub installation”. In some cases, grub-install or grub-install --no-nvram is enough. If you are not sure, refer to the document here:

Bear in mind, if you reinstall with the --bootloader-id flag you need to make sure it is set to =[new name] (whatever your new GRUB_DISTRIBUTOR value is).

For example:

sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=[new name]

Like I mentioned however, for many systems grub-install --no-nvram will be enough.

Regenerate the Grub configuration file.

sudo grub-mkconfig -o /boot/grub/grub.cfg

Now you should be all set to set up the bootloader on the second installation, either with the default bootloader ID or with whatever bootloader ID you choose.

1 Like

Thanks for the reply. That is exactly what I did after installing both systems.
I did a little more testing and to install the two systems with separate bootloader entries, we have to edit the bootloaderid entry in /etc/calamares/modules/bootloader.conf in live media before launching calamares and then install as usual.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.