mkinitcpio 42 breaks LUKS auto-unlock using crypttab.initramfs


Updated the Dell XPS 15 this morning using the latest Linux 7.2.6 and mkinitcpio 42 only to be repeatedly greeted by the LUKS unlock prompt. After some quick Kagi searching, I noted this little nugget in the release notes:

  • install/sd-encrypt deprecates the mkinitcpio-specific
    /etc/crypttab.initramfs file in favour of using the x-initrd.attach
    option in /etc/crypttab (in the fourth field). This matches the
    behaviour of other initramfs generators.

If you’re using crypttab.initramfs take heed! Your shit’s gonna break! (Mine did!) No amount of re-enrolling is going to fix this one.

The fix is easy enough, and documented on the Wiki here. Merge your crypttab.initramfs into /etc/crypttab and include x-initrd.attach in the 4th field like so:

/etc/crypttab

root  UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX  none  x-initrd.attach,tpm2-device=auto

Update your initrd and reboot!

Hold on to your butts….