Consolidate systemd integration
Created by: @dvzrv
Currently we have mkinitcpio integration shipped with our systemd package and mkinitcpio-systemd-tool.
Both have overlapping functionality and the latter overlaps with https://github.com/grazzolini/mkinitcpio-tinyssh, https://github.com/grazzolini/mkinitcpio-utils, https://github.com/grazzolini/mkinitcpio-netconf and https://github.com/grazzolini/mkinitcpio-dropbear (on the busybox side).
Having two implementations of varying feature sets for systemd is more than suboptimal and these implementations should be consolidated.
As a sidenote (as it is likely out of scope for this ticket): Looking forward both of these implementations will likely become obsolete and be replaced by using mkosi, which the systemd project aims for becoming the defacto standard for creating image-based initrds.
This is a paradigm shift from creating initrds on a user system on each update of the kernel to creating images (Discoverable Disk Images (DDI)) (potentially also as unified kernel images, depending on target system) in a build environment and shipping this image to the user (which allows signing of the images and for several images to be added transparently with the help of systemd-sysext). That type of setup allows us to remove a lot of custom logic in mkinitcpio and fully relying on the packages we built (and use for the initrd).
For reference: https://0pointer.net/blog/walkthrough-for-portable-services.html https://0pointer.net/blog/unlocking-luks2-volumes-with-tpm2-fido2-pkcs11-security-hardware-on-systemd-248.html https://0pointer.net/blog/the-wondrous-world-of-discoverable-gpt-disk-images.html https://0pointer.net/blog/fitting-everything-together.html