Cannot change grub boot loader in

╰─❯ sudo ls /efi/EFI/
[sudo] password for fj:
BOOT dell GRUB Linux systemd UpdateCapsule

And what’s under?
sudo ls /efi/EFI/GRUB

╰─❯ sudo ls /efi/EFI/
[sudo] password for fj:
BOOT dell GRUB Linux systemd UpdateCapsule
╰─❯ sudo ls /efi/EFI/GRUB

grubx64.efi

Last thing I would try is the following, but can’t test it out myself.

  1. sudo grub-install --target=x86_64-efi --efi-directory=/efi/EFI --bootloader-id=GRUB
  2. sudo grub-mkconfig -o /boot/grub/grub.cfg

Can you then share the output of both commands?

╰─❯ sudo ls /efi/EFI/*
fish: No matches for wildcard '/efi/EFI/'. See help wildcards-globbing.
sudo ls /efi/EFI/

^~~~~~~~~^
╰─❯ sudo ls /efi/EFI/
[sudo] password for fj:
BOOT dell GRUB Linux systemd UpdateCapsule
╰─❯ sudo ls /efi/EFI/GRUB

grubx64.efi
╰─❯ sudo grub-install --target=x86_64-efi --efi-directory=/efi/EFI --bootloader-id=GRUB
Installing for x86_64-efi platform.
Installation finished. No error reported.
╰─❯ sudo grub-mkconfig -o /boot/grub/grub.cfg

Generating grub configuration file …
Found theme: /usr/share/grub/themes/endeavouros/theme.txt

Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings …
done
╰─❯

╭─    ~ ································································································································· 03:52:58 AM ─╮
╰─❯

Still not seeing what I was hoping for. I can reinstall my EndeavourOS vm with systemd-boot and then try to convert it to Grub if you like?

1 Like

Since I’ve used Grub and having had my efi partition under /efi so it’s not exactly fresh in my head so to hopefully figure it out I have to try it myself.

I’m out of ideas and I think it may have something where your motherboard has located it’s efi firmware you. You could still try this, but maybe someone else that actually uses Grub can help you figure out the last part.

You can still try this.

From having read it seems when using grub-install “–efi-directory=” should still be /efi since that’s your efi directory.

Just your friendly daily reminder to not use sudo with graphical programs.

Further gedit is polkit aware and will simply ask you for a password when/if required.

( Meaning just open the file with gedit .. then make edits .. then save. )

1 Like

THANK YOU!!! :slight_smile: appreciate the reminder! LOL

I did some more reading and checked out what grub-mkconfig says. So it seems grub-mkconfig expects your kernel files to be under /boot.

[root@endeavouros grub.d]# head /usr/bin/grub-mkconfig
#! /bin/sh
set -e

Generate grub.cfg by inspecting /boot contents.

Since this isn’t the case for you since they are located under /efi, you would have to redo your boot setup as in where the kernel files are located to get grub working.

You’ll have to decide if you want to do that.

I was able to convert my vm EndeavourOS installation from systemd-boot to grub but only thing I am running into which I haven’t figured out yet every time you update the kernel or install linuz-zen int generates an initramfs image with a version number. Not sure where that comes from but guessing it’s some hook that’s activated for that.

It looks like it’s a EndeavourOS specific hook because I don’t have that hook on my Arch Linux install. This one.

/usr/share/libalpm/scripts/kernel-install-hook

It seems to be adding versions to the generated initramfs images files. Maybe someone who knows more about the EndeavourOS specific scripts can help you out with that.

i think this is it but i am out… lol i don’t wanna screwup my system:

:frowning:

i run the risk of really screwing things up too so i quit LOL i am officially retiring this idea

I should have done a search myself as well. Okay with that I got it to work one extra step.

  1. sudo pacman -R kernel-install-for-dracut
  2. sudo pacman -S eos-dracut grub
  3. sudo dracut-rebuild
  4. Copy the contents of /etc/kernel/cmdline and put them in /etc/default/grub in the appropriate line(GRUB_CMDLINE_LINUX_DEFAULT).
  5. sudo grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=EndeavourOS
  6. You need to copy vmlinuz for each of your installed kernels to /boot since that doesn’t get placed when rebuilding the initramfs.

cp /usr/lib/modules/6.12.33-1-lts/vmlinuz /boot/vmlinuz-linux-lts
cp /usr/lib/modules/6.15.2-arch1-1/vmlinuz /boot/vmlinuz-linux
cp /usr/lib/modules/6.15.2-zen1-1-zen/vmlinuz /boot/vmlinuz-linux-zen

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

p.s Most of the credit goes to @dalto for this one.

We retired our grub theme a few years ago.

On grub, we just use a background image now.

1 Like