Hello,
I am posting here because my English is not very good. Hoping to find someone who has had experience with the problem.
So, here it is, I have a triple boot installation on Btrfs.
Having, always hated grub (especially when it breaks) I saw that there was the bootloader of systemd.
So I read the doc, which is not very explicit, on how to install. I first installed it next to my current install and it didn’t work.
So after cloning my installation, I did a new installation in simple-boot on Btrfs file system, which booted normally.
It allowed me to understand better how it worked and in particular that after the installation a directory with the id of the machine was created in the esp partition. This last one contains a subdirectory with the name of the current kernel version and inside the initrd and the linux image. (which I didn’t get) on my triple-boot installation…
After a stroke of luck I ticked on a sentence of the doc about the shell reinstall-kernel (sentence that arrives there without understanding why), I launched this shell after having restored my triple-boot install, and the directory was created. After having filled in the boot file, I was able to boot on EOS.
Only now, I would like to boot on Sid and Mint too. And there the doc doesn’t seem clear to me:
here, on this point:
https://discovery.endeavouros.com/installation/systemd-boot/2022/12/
How to change the default entry to boot
There is a default entry inside /efi/loader/loader.conf that determine the default boot entry.
On a new install, it will look something like this:
default 665eca4ae83246df8ec17d1cbc6a1763*
That first string of characters is you entry token which identifies the install. That is important if you are dual-booting with another Linux, otherwise it can be replaced with *. That line supports wildcards and so if you want to boot the LTS kernel by default you could use something like this:
default 665eca4ae83246df8ec17d1cbc6a1763*lts.conf
Alternatively, if you want to boot the mainline kernel by default, something like this should work:
default 665eca4ae83246df8ec17d1cbc6a1763-*-arch?-?.conf
These changes will take effect on the next reboot and nothing else is required except modifying the file.
This means that if I want to boot on a mint for example, I have to create under entries/
a directory
665eca4ae83246df8ec17d1cbc6a1763-mint ?
which will contain my kernel images and the mint initrd
and this entry will be listed in the menu, thanks to the entry
665eca4ae83246df8ec17d1cbc6a1763* (which refers to all directories …763* so oes, mint ???
Last question reinstall-kernels updates the name of the subdirectory for the Eos install, but for the other distros, there is no tool to put the new kernels there when they are updated in the distribution.
In this case, did I understand correctly that you have to copy them there? In this case it is heavy…
nevertheless, I found a topic on this subject :
https://forums.linuxmint.com/viewtopic.php?t=299662
where curtvaughan seems to solve the problem with a script :
well, it’s nice but it’s still heavy, and I hope that systemd-boot has evolved and that it’s now easy to do.
paradoxically, I end up liking grub, and the chaining …even if the parade of screens with different styles is ugly as anything.
Thanks for your clarifications, probably you have with a little change a multiboot install with systemd-boot.