[arch-dev-public] Mkinitcpio replacement with Dracut

Maxime Gauduin alucryd at archlinux.org
Tue May 21 15:29:14 UTC 2019


On Mon, 2019-05-20 at 23:41 -0300, Giancarlo Razzolini via arch-dev-
public wrote:
> Hi All,
> 
> Recently, Dave announced his intention to step down as mkinitcpio
> maintainer. I have been
> handling a few things on it, made some small changes to our
> mkinitcpio-busybox [0], closed a few old
> bugs, while also made sure some of the other bug reports are still
> valid. [1]
> 
> I have been testing a few patches to mkinitcpio for a while to fix
> those bugs, but last week Dave
> and I had a discussion on IRC and we agreed that we could spend
> better time contributing somewhere
> else than keeping working with mkinitcpio.
> 
> Currently mkinitcpio cannot boot from NFS properly, mknitcpio-nfs-
> utils [2] uses very old code. Even
> though ipconfig works, it has several drawbacks compared to using
> more modern tools. Not to mention that
> we have two use cases for mkinitcpio, which are base and systemd
> enabled initramfs. Even though we use
> by default our base enabled initramfs, we have to support systemd
> related issues and we have to keep
> developing our systemd hooks.
> 
> I have been looking into dracut for some time now, I copied some
> stuff from them on a few of my own
> scripts and they also have an actual test suite, that we currently
> can't use on Arch, but I plan to
> change that.
> 
> With this in mind, I have packaged dracut for Arch and put it on
> Extra [3]. I have been using a dracut
> initramfs for a while now to boot my encrypted partition.
> Surprisingly, I only had to create a small patch
> to one of the dm-crypt module scripts [4]
> 
> In this initial phase I want to ask as many of you to test this as a
> replacement to mkinitcpio in your setups,
> as many as possible, and in as many scenarios as possible. We will
> probably have to keep both packages on
> our repos for a long time, but once we are confident it's a good fit,
> we can replace mkinitcpio on our iso and base,
> so new installs get dracut by default.
> 
> Please, drop in your comments as well.
> 
> Regards,
> Giancarlo Razzolini
> 
> [0] 
> https://git.archlinux.org/svntogit/packages.git/commit/trunk/PKGBUILD?h=packages/mkinitcpio-busybox&id=489fbd6f2ed1defd1c7f1b57e7d6edd25185e6d8
> [1] https://bugs.archlinux.org/index.php?string=mkinitcpio&project=0
> [2] https://git.archlinux.org/mkinitcpio-nfs-utils.git/
> [3] https://www.archlinux.org/packages/extra/x86_64/dracut/
> [4] 
> https://git.archlinux.org/svntogit/packages.git/tree/trunk/0001-90crypt-Change-the-module-setup.sh-to-use-uname-r-in.patch?h=packages/dracut

Hi Giancarlo,

Did some initial testing on my system, I was almost able to get a
working initrd after a few tweaks [0] and a little patching [1] to use
fs-lib with bash and without systemd. However I can't use my usb
keyboard
and mouse when greeted by gdm. I'll keep looking into it unless you
have some pointers at the ready.

Using the following command to generate the initrd:

mkinitrd --xz /boot/initramfs-5.1.3-zen1-1-zen.img

And the resulting lsinitrd [2].

Cheers,
-- 
Maxime

[0] https://paste.xinu.at/07qqfyuQljNvR1Kh/
[1] 
https://raw.githubusercontent.com/void-linux/void-packages/fdeed0979a8f63e380d7b8cba24fa0eb2d6f5c7f/srcpkgs/dracut/patches/fix-bash-5.patch
[2] https://paste.xinu.at/AhXYJjuCtUR2vY4O/


More information about the arch-dev-public mailing list