Consolidating our mkinitcpio hooks

2023-04-25 Thread Morten Linderud
Hi,

Currently we have a lot of our mkinitcpio hooks in several packages which has
never been consolidated. This makes it confusing where stuff belong and what is
provided where, and I really want to consolidate everything.

It would help keeping up the development of the hooks, patch everything and
ultimately write a test suite for mkinitcpio.

I also have long term plans on moving the default hooks from busybox to systemd,
but this will happen at a later point.

Initially I really want to move the hooks from `cryptsetup` and `systemd`:

* encrypt and sd-encrypt from core/cryptsetup
* systemd and udev from core/systemd

We could maybe consider a few other hooks from [core] depending on peoples
opinion? We are missing a good networking hook for systemd, and that should
preferably be solved at some point.

A list of possibly other relevant mkinitcpio stuff:

  Hook Package
* btrfs btrfs-progs
* dmraiddmraid
* mdadm mdadm
* mdadm_udevmdadm
* lvm2  lvm2
* sd-lvm2   lvm2
* net   mkinitcpio-nfs-utils
* netconf   mkinitcpio-netconf


# Migration

It's unclear to me how we should best move these hooks. We would need to merge
them upstream into `mkinitcpio` first, then remove them from the packages.

Is a news item is enough for this? Or do we want to include a couple of package
constraints to ensure people are accidentally removing their hooks?

What are peoples opinions?

-- 
Morten Linderud
PGP: 9C02FF419FECBE16


signature.asc
Description: PGP signature


Re: Consolidating our mkinitcpio hooks

2023-04-25 Thread David Runge
On 2023-04-25 16:31:29 (+0200), Morten Linderud wrote:
> Initially I really want to move the hooks from `cryptsetup` and `systemd`:
> 
> * encrypt and sd-encrypt from core/cryptsetup
> * systemd and udev from core/systemd
> 
> We could maybe consider a few other hooks from [core] depending on peoples
> opinion? We are missing a good networking hook for systemd, and that should
> preferably be solved at some point.
> 
> A list of possibly other relevant mkinitcpio stuff:
> 
>   Hook Package
> * btrfs btrfs-progs
> * dmraiddmraid
> * mdadm mdadm
> * mdadm_udevmdadm
> * lvm2  lvm2
> * sd-lvm2   lvm2
> * net   mkinitcpio-nfs-utils
> * netconf   mkinitcpio-netconf

There is also mkinitcpio-systemd-tool [1]. Although fairly unmaintained these
days, it has a lot of features.

Another user has created mkinitcpio-systemd-extras [2] which does similar things
and looks less complicated (have not used it yet). It also features networking
hooks (for systemd).

Either might be something to consider to adapt from after moving the current
systemd hooks.

> # Migration
> 
> It's unclear to me how we should best move these hooks. We would need to merge
> them upstream into `mkinitcpio` first, then remove them from the packages.
> 
> Is a news item is enough for this? Or do we want to include a couple of 
> package
> constraints to ensure people are accidentally removing their hooks?

I guess adding install notices might be enough. Or will the hooks be renamed?

> What are peoples opinions?

This is very awesome and I am happy you are looking into this! <3

Best,
David

[1] https://github.com/random-archer/mkinitcpio-systemd-tool
[2] https://github.com/wolegis/mkinitcpio-systemd-extras

-- 
https://sleepmap.de


signature.asc
Description: PGP signature