Hi there!

I have a setup with an encrypted root partition using LUKS. When I updated my system today, I was unable to reboot it afterwards. It turned out, that mkinitcpio had some errors during the update, which I had not noticed:
/usr/lib/initcpio/functions: Line 196: add_udev_rule: Command not found.
These errors seem to originate in the new version of cryptsetup. In version 2.4.1-2 the use of add_udev_rule was added to the package (see this commit). Downgrading cryptsetup to 2.4.1-1 fixed the problem for me.

I am not familiar with (e)udev, but I guess that the problem stems from add_udev_rule being part of systemd's udev, but not being part of eudev. It would be nice if Obarun could provide a native cryptsetup package fixing the problem.

Best regards!
thededem
The problem have nothing to do with the eudev package not even the cryptsetup package. The add_udev_rule is a bash function used by mkinitcpio to incorporate some udev rule inside the initramfs at build time. This function is not provided by default with the mkinitcpio package and only come with the systemd package.
So, bad design here.
Anyway, i updated the mkinitcpio package. Just sync and update.
Many thanks for this reports, btw.
Thanks for looking into and fixing this!
25 days later
I guess, I have to bother you with this again. The update to cryptsetup 2.4.1-2 removed the line
    add_binary "dmsetup"
from the file install-encrpyt (/usr/lib/initcpio/install/encrypt). Without this line I get an error about /usr/sbin/dmsetup not being found, when booting from an encrypted partition.

Restoring the line in said file did fix the problem for me.

Powered by Obarun