Replacing grub with systemd-boot (UEFI system)

Since Manjaro is my only OS on all my systems, I want to try out systemd-boot on one of them (Thinkpad with UEFI). Let’s just say, I want to get it running, for the sake of argument. Until now, my esp was mounted to /boot/efi and I was using grub. /boot was part of the root fs and ext4.

I followed the recommendations of the Arch Wiki and I’m pretty sure I got it right, since it is pretty straight forward. But at some point I realized, that Manjaro seems to handle the vmlinuz and initramfs files differently. While Arch uses filenames without version numbers, Manjaro does. Am I correct in this assumption?

Since I’ve changed the /boot mountpoint to the esp partition (and moved the content from old /boot to the new one, which, of course, needs to be FAT32, I also can’t create symlinks, which would be my first idea.

So I need to update the /boot/loader/entries/…conf files every time, I change Kernel versions or uninstall one. Obviously that is not an option for the long run. So I was wondering if there is already a solution or facility for that?

I’ve only found sporadic information about that. What would be the recommend way to achieve this?

try this

sudo mkinitcpio -P

@stephane, close, but not quite.

Correct.

No, you don’t.

Look here.

1 Like

I found exactly what I was looking for:

After booting into the system, I did:
$ sudo pacman -S systemd-boot-manager

Set my preferences in /etc/sdboot-manage.conf and then (default values work also fine):
$ sudo sdboot-manage gen

Done.

It automatically runs when Kernels are installed/removed. Works great! :slight_smile:

2 Likes

I’ve marked this answer as the solution to your question as it is by far the best answer you’ll get.

However, if you disagree with my choice, please feel free to take any other answer as the solution to your question or even remove the solution altogether: You are in control! (If you disagree with my choice, just send me a personal message and explain why I shouldn’t have done this or :heart: or :+1: if you agree)

:innocent:
P.S. In the future, please don’t forget to come back and click the 3 dots below the answer to mark a solution like this below the answer that helped you most:
Solution
so that the next person that has the exact same problem you just had will benefit from your post as well as your question will now be in the “solved” status.

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