On Wednesday 18 December 2024 12:13:59 GMT Alan Mackenzie wrote:

> I've been having fun with systemd-boot.

I've been using bootctl from systemd-utils for some years; ever since I 
graduated to an EFI system. I don't follow the wiki because of the resulting 
impenetrable thicket of unpronounceable names and 32-digit hex numbers. Fine 
for a distro builder, perhaps, but not for me thank you - especially as I want 
a selection of kernels to boot from, which I never did work out how to achieve 
following the official advice.

My method has only one related USE variable:
        sys-apps/systemd-utils  boot kernel-install

My EFI partition, unformatted and not mentioned in /etc/fstab, is /dev/
nvme0n1p1. 0n1p2 is the FAT-32 /boot.
# tree -L 3 /boot
/boot
├── [config files from make install]
├── early_ucode.cpio
├── EFI
│   ├── BOOT
│   │   └── BOOTX64.EFI
│   ├── Linux
│   └── systemd
│       └── systemd-bootx64.efi
├── intel-uc.img
├── loader
│   ├── entries
│   │   ├── 06-gentoo-rescue-6.6.52.conf
│   │   ├── 07-gentoo-rescue-6.6.52.nonet.conf
│   │   ├── 08-gentoo-rescue-6.6.62.conf
│   │   ├── 09-gentoo-rescue-6.6.62.nonet.conf
│   │   ├── 30-gentoo-6.6.62.conf
│   │   ├── 32-gentoo-6.6.62.nox.conf
│   │   └── 34-gentoo-6.6.62.nonet.conf
│   ├── entries.srel
│   ├── loader.conf
│   └── random-seed
├── [System.map files from make install]
├── vmlinuz-6.6.38-gentoo-rescue
├── vmlinuz-6.6.52-gentoo
├── vmlinuz-6.6.52-gentoo-rescue
├── vmlinuz-6.6.62-gentoo
└── vmlinuz-6.6.62-gentoo-rescue

This is the relevant parts of the kernel make script on my little i5 NUC box:
cd /usr/src/linux
time (make -j4 && make modules_install &&\
    make install && rm -f /boot/*old)
emerge @module-rebuild @x11-module-rebuild
rm -f /boot/early_ucode.cpio.new &&\
        iucode_tool -q -S --write-earlyfw=/boot/early_ucode.cpio.new \
          -tr /boot/early_ucode.cpio -tb /lib/firmware/intel-ucode &&\
        mv -v /boot/early_ucode.cpio.new /boot/early_ucode.cpio &&\
echo

Then all I have to do is some simple mmv and sed -i on the files in /boot/
loader/entries and loader.conf. Also remove obsolete kernels, configs and maps 
from /boot. Oh, and bootctl set-default 30-gentoo-6.6.62.conf if it's a remote 
machine and I won't be present at boot time.

--->8

> Could somebody perhaps suggest a better boot loader to me?  I need to be
> able to chose between several kernels at booting time, but I certainly
> don't want something "refined" like grub - I just need what I thought
> systemd-boot actually was before yesterday.

That's even worse than what I was suffering until I developed my own system.

> Thanks in advance!

Hope that helps.

-- 
Regards,
Peter.




Reply via email to