I'm using systemd-boot as boot manager. It is enough for me and I want to keep it. For the moment, everything is working but for every new point(?)-release of the kernel I run into a problem that I have to fix manually in order to have a running system.
First, my setup:
I have a /boot partition with 512MB, is is mounted with
UUID=F67E-E175 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2
The folder structure currently looks like this:
/boot ├── EFI │ ├── BOOT │ │ └── BOOTX64.EFI │ ├── initramfs-5.3-x86_64-fallback.img │ ├── initramfs-5.3-x86_64.img │ ├── intel-ucode.img │ ├── systemd │ │ └── systemd-bootx64.efi │ └── vmlinuz-5.3-x86_64 ├── initramfs-5.3-x86_64-fallback.img ├── initramfs-5.3-x86_64.img ├── intel-ucode.img ├── linux53-x86_64.kver ├── loader │ ├── entries │ │ ├── manjarolinux5.3.conf │ │ ├── manjarolinux5.3-fallback.conf │ │ └── manjarolinux5.3-silent.conf │ └── loader.conf └── vmlinuz-5.3-x86_64 5 directories, 15 files
As you can see, I have the initramfs files, the intel microcode img and the vmlinuz file twice in the tree.
pacman will install the
vmlinuz-5.3-x86_64 and the
linux52-x86_64.kver directly into
mkinicpio will create the three img files also inside the
At least from a former setup, I had to manually copy the img files into the
/boot/EFI directory in order to boot with systemd-boot over UEFI.
The problem here is 1) that I have to manually copy the files 2) manually edit the
/boot/loader/entries/*.conf files to reflect the new kernel version and 3) when there is a new kernel version, it cannot be installed because
/boot does not have enough space for the new imgs.
Is this the intended behavior for systemd-boot, pacman, mkinitcpio, UEFI, and kernel updates? If there is no easy way, could anyone point me to the correct "manjaro" way?