Kernel 7.0.0 kills limine-dracut

I’ve been using limine-dracut instead of limine-mkinitcpio-hook to support the use of my TPM for LUKS, but the 7.0.0 kernel seems to have broken it. I will have to get it to work in a rescue terminal now. What is the proper way to use limine-dracut and ban limine-mkinitcpio-hook so that kernel updates don’t do things like this?

You need to remove limine-mkinitcpio-hook

sudo pacman -Rns limine-mkinitcpio-hook

Double check if dracut is installed (yes I know but check anyways)

paru -S --needed limine-dracut-support   # or yay, etc.

Optional but recommended if you still have mkinitcpio installed, Stop mkinitcpio’s own pacman hooks from running on kernel updates(dracut’s hooks will handle initramfs generation instead)

sudo ln -sf /dev/null /etc/pacman.d/hooks/90-mkinitcpio-install.hook
sudo ln -sf /dev/null /etc/pacman.d/hooks/60-mkinitcpio-remove.hook

You can keep the mkinitcpio package installed; it just won’t be used for your kernels

Re-generate for new kernel

sudo limine-dracut

This does both the dracut initramfs build and updates your limine.conf with the correct entries.

Re-deploy Limine EFI binary (just in case)

sudo limine-install

reboot and test.

After troubleshooting this was not an issue with limine-dracut but an issue with zfs-dkms with the bore kernel that is no longer needed with kernel 7. Ultimately removing dkms and install zfs from pacman resolved the dracut init process.