Hello all, newly arrived Arch escapee here.
I am trying to install Void with musl on an encrypted root, using an lvm group inside a luks container. I think I’m having the same issue as this guy. I set it up according to these two different wiki pages and set up syslinux as described on the Arch wiki.
Syslinux appears to boot fine. I’m using the following config:
APPEND cryptdevice=UUID="th3-uu1d-h3re":lvm root=/dev/mapper/base-void resume=/dev/mapper/base-swap add_efi_memmap rw
At first I tried with dracut generated initramfs, which failed and gave a kernel panic without much useful info. Then I tried with mkinitcpio, and added the hooks
encrypt lvm2 resume (in that order) between
filesystems in /etc/mkinitcpio.conf. When running mkinitcpio, it gives the error “Hook ‘udev’ cannot be found”, which I assume is because Void uses a non-systemd version of udev.
When booting the mkinitcpio generated initramfs, it seems to go through the hooks in the wrong order. lvm comes before encrypt, for example, making them both useless.
Edit: I tried changing the mkinitcpio hook scripts to make
encrypt an “earlyhook” and
lvm a regular “hook”, which changed their initialized order, but still won’t boot. Running the usual
cryptsetup luksOpen /dev/sda2 base from the initramfs system complains that the device doesn’t exist, which should indicate that I need udev.
How do I add udev to the initramfs generated by mkinitcpio?