# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit meson tmpfiles DESCRIPTION="Modular initramfs image creation utility" HOMEPAGE="https://github.com/archlinux/mkinitcpio" SRC_URI="https://sources.archlinux.org/other/${PN}/${P}.tar.xz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" IUSE="+systemd" DEPEND="sys-apps/kmod sys-apps/util-linux app-arch/libarchive app-arch/zstd sys-apps/busybox sys-apps/coreutils sys-apps/findutils sys-apps/sed app-alternatives/awk sys-apps/baselayout virtual/udev systemd? ( sys-apps/systemd ) " RDEPEND="${DEPEND}" BDEPEND=" >=dev-build/meson-1.4.0 sys-apps/busybox app-arch/libarchive app-text/asciidoc sys-apps/sed virtual/pkgconfig " QA_PREBUILT="/usr/lib/initcpio/busybox" PATCHES=( "${FILESDIR}"/${P}-optional-hwdb.patch ) src_prepare() { default sed -i "s:/usr/lib/libkmod.so.2:/usr/$(get_libdir)/libkmod.so.2:" install/udev || die } src_configure() { local -x PATH="/usr/lib/systemd:${PATH}" local emesonargs=( --libdir lib $(meson_feature systemd) ) meson_src_configure } src_install(){ meson_src_install exeinto /usr/lib/initcpio/ doexe /bin/busybox insinto /usr/lib/initcpio/install if use systemd; then sed 's|^ add_file /etc/machine-info$| [[ -f /etc/machine-info ]] \&\& add_file /etc/machine-info|' \ "${FILESDIR}"/initcpio-install-systemd > "${T}"/initcpio-install-systemd || die newins "${T}"/initcpio-install-systemd systemd fi newins "${FILESDIR}"/initcpio-install-base base insinto /usr/lib/initcpio/hooks newins "${FILESDIR}"/initcpio-hook-udev udev insinto /etc/mkinitcpio.d doins "${FILESDIR}"/linux.preset } pkg_postinst() { use systemd && tmpfiles_process 20-mkinitcpio.conf }