repo/gentoo:master commit in: sys-kernel/dracut/

"Nowa Ammerlaan" <[email protected]>
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1787155957.4d6fb939d6244a742b30a51422908dd90de42206.nowa@gentoo>
commit:     4d6fb939d6244a742b30a51422908dd90de42206
Author:     Nowa Ammerlaan <nowa <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 19 16:11:05 2026 +0000
Commit:     Nowa Ammerlaan <nowa <AT> gentoo <DOT> org>
CommitDate: Wed Aug 19 16:12:37 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d6fb939

sys-kernel/dracut: add 112

Signed-off-by: Nowa Ammerlaan <nowa <AT> gentoo.org>

 sys-kernel/dracut/Manifest          |   1 +
 sys-kernel/dracut/dracut-112.ebuild | 247 ++++++++++++++++++++++++++++++++++++
 2 files changed, 248 insertions(+)

diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest
index fbf1436969fc..cb298b7e3b46 100644
--- a/sys-kernel/dracut/Manifest
+++ b/sys-kernel/dracut/Manifest
@@ -1,2 +1,3 @@
 DIST dracut-110-r1.tar.gz 573549 BLAKE2B d7b92773d732b8cee60e2625caac2f69b47438a7f8b30b889165253cfcf94b2364be3b10bb2b9b477e957a6d284cf195581905df0ad4365ebe03483ff2a61d1f SHA512 8e2ed2d3b35e3e82d1ffa809e1cf87cb8108402a66dad25000b0fd21f24dcda2eb5fd944b55edf108a4e37793d0d98814413382e554e808cd2e1a2a5bb8a420e
 DIST dracut-111.tar.gz 586307 BLAKE2B 1def3957013c1508cf70018b4b5aeae333b459e50a7fc2945cd0c7a99f1c6942c8280888239273b62cdcfa3471a980d74b3769b5e3d0536be4f1729d102074f0 SHA512 4c8a3e1e82bfc1dbe155241564bc93bedc2b321566002ccc643697b50173b8e564d03b1bbff4f49602e0cb7abbee21dfb14aadc453ac9703a846c160d070b4bc
+DIST dracut-112.tar.gz 601803 BLAKE2B 8affe092f6876ba52f59e08b33341c108c378f97f761b638f1d4f5520399aa87bb4bbafb362f5edc15fdabd3ebf0c7acec667ee3762535f9b780da522886f205 SHA512 37a3f15db68ab7a9a9ad3ba5fee36559d20692cba714234737d559c453568dbde632c6c0f197c3e531d62ba6ff632af21b52da614182327d00ca088b820b53c9

diff --git a/sys-kernel/dracut/dracut-112.ebuild b/sys-kernel/dracut/dracut-112.ebuild
new file mode 100644
index 000000000000..64a73dd65bb1
--- /dev/null
+++ b/sys-kernel/dracut/dracut-112.ebuild
@@ -0,0 +1,247 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+CARGO_OPTIONAL=1
+
+inherit cargo flag-o-matic bash-completion-r1 edo optfeature systemd toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/dracut-ng/dracut"
+else
+	if [[ "${PV}" != *_rc* ]]; then
+		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	fi
+	SRC_URI="https://github.com/dracut-ng/dracut/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+DESCRIPTION="Generic initramfs generation tool"
+HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="dracut-cpio selinux systemd test"
+RESTRICT="test"
+PROPERTIES="test? ( test_privileged test_network )"
+
+COMMON_DEPEND="
+	>=sys-apps/kmod-23
+	systemd? ( >=sys-apps/systemd-257:= )
+"
+RDEPEND="${COMMON_DEPEND}
+	app-alternatives/cpio
+	>=app-shells/bash-4.0:0
+	sys-apps/coreutils[xattr(-)]
+	>=sys-apps/kmod-23[tools]
+	|| (
+		>=sys-apps/sysvinit-2.87-r3
+		sys-apps/openrc[sysv-utils(-),selinux?]
+		sys-apps/systemd[sysv-utils(+)]
+		sys-apps/s6-linux-init[sysv-utils(-)]
+		sys-apps/dinit[sysv-utils(-)]
+	)
+	>=sys-apps/util-linux-2.21
+	virtual/pkgconfig[native-symlinks(+)]
+	virtual/udev
+
+	elibc_musl? ( sys-libs/fts-standalone )
+	selinux? (
+		sec-policy/selinux-dracut
+		sys-libs/libselinux
+		sys-libs/libsepol
+	)
+"
+DEPEND="${COMMON_DEPEND}
+	elibc_musl? ( sys-libs/fts-standalone )
+"
+
+BDEPEND="
+	|| (
+		app-text/asciidoc
+		dev-ruby/asciidoctor
+	)
+	app-text/docbook-xml-dtd:4.5
+	>=app-text/docbook-xsl-stylesheets-1.75.2
+	>=dev-libs/libxslt-1.1.26
+	virtual/pkgconfig
+	dracut-cpio? ( ${RUST_DEPEND} )
+	test? (
+		net-nds/rpcbind
+		net-fs/nfs-utils
+		sys-block/open-iscsi
+		sys-fs/btrfs-progs
+		sys-fs/dmraid
+		sys-fs/lvm2[lvm,thin]
+		sys-fs/mdadm
+		sys-fs/multipath-tools
+		alpha? ( app-emulation/qemu[qemu_softmmu_targets_alpha] )
+		amd64? ( app-emulation/qemu[qemu_softmmu_targets_x86_64] )
+		arm? ( app-emulation/qemu[qemu_softmmu_targets_arm] )
+		arm64? ( app-emulation/qemu[qemu_softmmu_targets_aarch64] )
+		hppa? ( app-emulation/qemu[qemu_softmmu_targets_hppa] )
+		loong? ( app-emulation/qemu[qemu_softmmu_targets_loongarch64] )
+		mips? ( || (
+			app-emulation/qemu[qemu_softmmu_targets_mips]
+			app-emulation/qemu[qemu_softmmu_targets_mips64]
+			app-emulation/qemu[qemu_softmmu_targets_mips64el]
+		) )
+		ppc? ( app-emulation/qemu[qemu_softmmu_targets_ppc] )
+		ppc64? ( app-emulation/qemu[qemu_softmmu_targets_ppc64] )
+		riscv? ( || (
+			app-emulation/qemu[qemu_softmmu_targets_riscv32]
+			app-emulation/qemu[qemu_softmmu_targets_riscv64]
+		) )
+		sparc? ( || (
+			app-emulation/qemu[qemu_softmmu_targets_sparc]
+			app-emulation/qemu[qemu_softmmu_targets_sparc64]
+		) )
+		x86? ( app-emulation/qemu[qemu_softmmu_targets_i386] )
+	)
+"
+
+QA_MULTILIB_PATHS="usr/lib/dracut/.*"
+
+PATCHES=(
+	"${FILESDIR}"/gentoo-ldconfig-paths-r1.patch
+)
+
+pkg_setup() {
+	use dracut-cpio && rust_pkg_setup
+}
+
+src_configure() {
+	local myconf=(
+		--bashcompletiondir="$(get_bashcompdir)"
+		--disable-dracut-cpio
+		--enable-network-legacy
+		--prefix="${EPREFIX}/usr"
+		--sysconfdir="${EPREFIX}/etc"
+		--systemdsystemunitdir="$(systemd_get_systemunitdir)"
+	)
+
+	if ! has_version -b dev-ruby/asciidoctor; then
+		myconf+=( --disable-asciidoctor )
+	fi
+
+	# this emulates what the build system would be doing without us
+	append-cflags -D_FILE_OFFSET_BITS=64
+
+	tc-export CC PKG_CONFIG
+
+	# https://bugs.gentoo.org/968765
+	use systemd || export SYSTEMD_CFLAGS= SYSTEMD_LIBS=
+
+	edo ./configure "${myconf[@]}"
+	if use dracut-cpio; then
+		cargo_gen_config
+		cargo_src_configure
+	fi
+}
+
+src_compile() {
+	default
+	if use dracut-cpio; then
+		pushd src/dracut-cpio >/dev/null || die
+		cargo_src_compile
+		popd >/dev/null || die
+	fi
+}
+
+src_test() {
+	addwrite /dev/kvm
+	# Translate ARCH so run-qemu can find the correct qemu-system-ARCH
+	local qemu_arch
+	if use amd64; then
+		qemu_arch=x86_64
+	elif use arm64; then
+		qemu_arch=aarch64
+	elif use loong; then
+		qemu_arch=loongarch64
+	elif use x86; then
+		qemu_arch=i386
+	else
+		qemu_arch=$(tc-arch)
+	fi
+	ARCH=${qemu_arch} emake -C test check
+}
+
+src_install() {
+	local DOCS=(
+		AUTHORS
+		NEWS.md
+		README.md
+	)
+	default
+	if use dracut-cpio; then
+		exeinto /usr/lib/dracut
+		doexe "src/dracut-cpio/$(cargo_target_dir)/dracut-cpio"
+	fi
+
+	# Use our own from sys-kernel/installkernel[dracut]
+	rm -r "${ED}/usr/lib/kernel" || die
+}
+
+pkg_preinst() {
+	# Remove directory/symlink conflicts
+	# https://bugs.gentoo.org/943007
+	local save_nullglob=$(shopt -p nullglob)
+	shopt -s nullglob
+	local module
+	for module in "${EROOT}"/usr/lib/dracut/modules.d/{80test,80test-makeroot,80test-root}; do
+		if [[ ! -L ${module} && -d ${module} ]]; then
+			rm -rv "${module}" || die
+		fi
+		local backups=( "${module}".backup.* )
+		if [[ ${#backups[@]} -gt 0 ]]; then
+			rm -v "${backups[@]}" || die
+		fi
+	done
+	eval "${save_nullglob}"
+}
+
+pkg_postinst() {
+	optfeature "Networking support" net-misc/networkmanager
+	optfeature "Legacy networking support" net-misc/curl "net-misc/dhcp[client]" \
+		sys-apps/iproute2 "net-misc/iputils[arping]"
+	optfeature "Scan for Btrfs on block devices"  sys-fs/btrfs-progs
+	optfeature "Load kernel modules and drop this privilege for real init" \
+		sys-libs/libcap
+	optfeature "Support CIFS" net-fs/cifs-utils
+	optfeature "Decrypt devices encrypted with cryptsetup/LUKS" \
+		"sys-fs/cryptsetup[-static-libs]"
+	optfeature "Support for GPG-encrypted keys for crypt module" \
+		"app-alternatives/gpg[reference]" "app-alternatives/gpg[freepg(-)]"
+	optfeature \
+		"Allows use of dash instead of default bash (on your own risk)" \
+		app-shells/dash
+	optfeature \
+		"Allows use of busybox instead of default bash (on your own risk)" \
+		sys-apps/busybox
+	optfeature "Support iSCSI" sys-block/open-iscsi
+	optfeature "Support Logical Volume Manager" sys-fs/lvm2[lvm]
+	optfeature "Support MD devices, also known as software RAID devices" \
+		sys-fs/mdadm sys-fs/dmraid
+	optfeature "Support Device Mapper multipathing" sys-fs/multipath-tools
+	optfeature "Plymouth boot splash"  '>=sys-boot/plymouth-0.8.5-r5'
+	optfeature "Support network block devices" sys-block/nbd
+	optfeature "Support NFS" net-fs/nfs-utils net-nds/rpcbind
+	optfeature \
+		"Install ssh and scp along with config files and specified keys" \
+		virtual/openssh
+	optfeature "Enable logging with rsyslog" app-admin/rsyslog
+	optfeature "Support Squashfs" sys-fs/squashfs-tools
+	optfeature "Support TPM 2.0 TSS" app-crypt/tpm2-tools
+	optfeature "Support Bluetooth (experimental)" net-wireless/bluez
+	optfeature "Support BIOS-given device names" sys-apps/biosdevname
+	optfeature "Support network NVMe" sys-apps/nvme-cli app-misc/jq
+	optfeature \
+		"Enable rngd service to help generating entropy early during boot" \
+		sys-apps/rng-tools
+	optfeature "building Unified Kernel Images with dracut (--uefi)" \
+		"sys-apps/systemd[boot]" "sys-apps/systemd-utils[boot]"
+	optfeature "automatically generating an initramfs on each kernel installation" \
+		"sys-kernel/installkernel[dracut]"
+	optfeature "automatically generating an UKI on each kernel installation" \
+		"sys-kernel/installkernel[dracut,uki]"
+}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.