[sys-kernel/dracut] sync
This commit is contained in:
		| @@ -1 +1 @@ | |||||||
| DIST dracut-103.tar.gz 567713 BLAKE2B 7781c0b7fc83a2c0c461f6398687e053226b489fb5405b3132b30d8e7a4f3cea2bb73aa0fe6e4c4b27187d6270ba623f403916ec38025a912930ae347a7e25ce SHA512 ba0dbefbcbecb09c44ce240664bc4f4ee25dfb8be7bc060028ae3b1ccf7d70410491c105e64fcef3d6f44d2794cb6162bcea9404125906be46bf3dff098e0277 | DIST dracut-105.tar.gz 575857 BLAKE2B 93463e3d1649e6e68accbb4f2480af471e851a54185771cec01e8b7112f5c4158901747bdc1180e08e270d3b3b21afb4d510dae09ca6ef00e309300bede188d1 SHA512 1608fb31d6a53905ea25a279586573db5fc7e084b4f6ff06e52065cbcb4ff503c2d51c0a282345844228232b1b590382b482a224183e0c4ee16c9c9e6932b275 | ||||||
|   | |||||||
| @@ -5,7 +5,7 @@ EAPI=8 | |||||||
| 
 | 
 | ||||||
| CARGO_OPTIONAL=1 | CARGO_OPTIONAL=1 | ||||||
| 
 | 
 | ||||||
| inherit bash-completion-r1 cargo edo optfeature systemd toolchain-funcs | inherit flag-o-matic bash-completion-r1 cargo edo optfeature systemd toolchain-funcs | ||||||
| 
 | 
 | ||||||
| if [[ ${PV} == 9999 ]] ; then | if [[ ${PV} == 9999 ]] ; then | ||||||
| 	inherit git-r3 | 	inherit git-r3 | ||||||
| @@ -24,8 +24,8 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" | |||||||
| LICENSE="GPL-2" | LICENSE="GPL-2" | ||||||
| SLOT="0" | SLOT="0" | ||||||
| IUSE="dracut-cpio selinux test" | IUSE="dracut-cpio selinux test" | ||||||
| 
 | RESTRICT="test" | ||||||
| RESTRICT="!test? ( test )" | PROPERTIES="test? ( test_privileged test_network )" | ||||||
| 
 | 
 | ||||||
| RDEPEND=" | RDEPEND=" | ||||||
| 	>=app-shells/bash-4.0:0 | 	>=app-shells/bash-4.0:0 | ||||||
| @@ -61,7 +61,38 @@ BDEPEND=" | |||||||
| 	>=app-text/docbook-xsl-stylesheets-1.75.2 | 	>=app-text/docbook-xsl-stylesheets-1.75.2 | ||||||
| 	>=dev-libs/libxslt-1.1.26 | 	>=dev-libs/libxslt-1.1.26 | ||||||
| 	virtual/pkgconfig | 	virtual/pkgconfig | ||||||
| 	dracut-cpio? ( virtual/rust ) | 	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/.*" | QA_MULTILIB_PATHS="usr/lib/dracut/.*" | ||||||
| @@ -70,10 +101,8 @@ PATCHES=( | |||||||
| 	"${FILESDIR}"/gentoo-ldconfig-paths-r1.patch | 	"${FILESDIR}"/gentoo-ldconfig-paths-r1.patch | ||||||
| 	# Gentoo specific acct-user and acct-group conf adjustments | 	# Gentoo specific acct-user and acct-group conf adjustments | ||||||
| 	"${FILESDIR}"/${PN}-103-acct-user-group-gentoo.patch | 	"${FILESDIR}"/${PN}-103-acct-user-group-gentoo.patch | ||||||
| 	# https://github.com/dracut-ng/dracut-ng/pull/507 | 	# https://github.com/dracut-ng/dracut-ng/pull/834 | ||||||
| 	"${FILESDIR}"/${PN}-103-systemd-udev-256-kmod.patch | 	"${FILESDIR}"/${PN}-105-ensure-abs-args-for-objcopy.patch | ||||||
| 	# libsystemd-core is sometimes missing |  | ||||||
| 	"${FILESDIR}"/${PN}-103-always-install-libsystemd.patch |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| src_configure() { | src_configure() { | ||||||
| @@ -94,14 +123,21 @@ src_configure() { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| src_test() { | src_test() { | ||||||
| 	if [[ ${EUID} != 0 ]]; then | 	addwrite /dev/kvm | ||||||
| 		# Tests need root privileges, bug #298014 | 	# Translate ARCH so run-qemu can find the correct qemu-system-ARCH | ||||||
| 		ewarn "Skipping tests: Not running as root." | 	local qemu_arch | ||||||
| 	elif [[ ! -w /dev/kvm ]]; then | 	if use amd64; then | ||||||
| 		ewarn "Skipping tests: Unable to access /dev/kvm." | 		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 | 	else | ||||||
| 		emake -C test check | 		qemu_arch=$(tc-arch) | ||||||
| 	fi | 	fi | ||||||
|  | 	ARCH=${qemu_arch} emake -C test check | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| src_install() { | src_install() { | ||||||
| @@ -5,7 +5,7 @@ EAPI=8 | |||||||
|  |  | ||||||
| CARGO_OPTIONAL=1 | CARGO_OPTIONAL=1 | ||||||
|  |  | ||||||
| inherit bash-completion-r1 cargo edo optfeature systemd toolchain-funcs | inherit flag-o-matic bash-completion-r1 cargo edo optfeature systemd toolchain-funcs | ||||||
|  |  | ||||||
| if [[ ${PV} == 9999 ]] ; then | if [[ ${PV} == 9999 ]] ; then | ||||||
| 	inherit git-r3 | 	inherit git-r3 | ||||||
| @@ -15,6 +15,7 @@ else | |||||||
| 		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" | 		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" | ||||||
| 	fi | 	fi | ||||||
| 	SRC_URI="https://github.com/dracut-ng/dracut-ng/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" | 	SRC_URI="https://github.com/dracut-ng/dracut-ng/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" | ||||||
|  | 	S="${WORKDIR}/${PN}-ng-${PV}" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| DESCRIPTION="Generic initramfs generation tool" | DESCRIPTION="Generic initramfs generation tool" | ||||||
| @@ -23,8 +24,8 @@ HOMEPAGE="https://github.com/dracut-ng/dracut-ng/wiki" | |||||||
| LICENSE="GPL-2" | LICENSE="GPL-2" | ||||||
| SLOT="0" | SLOT="0" | ||||||
| IUSE="dracut-cpio selinux test" | IUSE="dracut-cpio selinux test" | ||||||
|  | RESTRICT="test" | ||||||
| RESTRICT="!test? ( test )" | PROPERTIES="test? ( test_privileged test_network )" | ||||||
|  |  | ||||||
| RDEPEND=" | RDEPEND=" | ||||||
| 	>=app-shells/bash-4.0:0 | 	>=app-shells/bash-4.0:0 | ||||||
| @@ -60,7 +61,38 @@ BDEPEND=" | |||||||
| 	>=app-text/docbook-xsl-stylesheets-1.75.2 | 	>=app-text/docbook-xsl-stylesheets-1.75.2 | ||||||
| 	>=dev-libs/libxslt-1.1.26 | 	>=dev-libs/libxslt-1.1.26 | ||||||
| 	virtual/pkgconfig | 	virtual/pkgconfig | ||||||
| 	dracut-cpio? ( virtual/rust ) | 	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/.*" | QA_MULTILIB_PATHS="usr/lib/dracut/.*" | ||||||
| @@ -89,14 +121,21 @@ src_configure() { | |||||||
| } | } | ||||||
|  |  | ||||||
| src_test() { | src_test() { | ||||||
| 	if [[ ${EUID} != 0 ]]; then | 	addwrite /dev/kvm | ||||||
| 		# Tests need root privileges, bug #298014 | 	# Translate ARCH so run-qemu can find the correct qemu-system-ARCH | ||||||
| 		ewarn "Skipping tests: Not running as root." | 	local qemu_arch | ||||||
| 	elif [[ ! -w /dev/kvm ]]; then | 	if use amd64; then | ||||||
| 		ewarn "Skipping tests: Unable to access /dev/kvm." | 		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 | 	else | ||||||
| 		emake -C test check | 		qemu_arch=$(tc-arch) | ||||||
| 	fi | 	fi | ||||||
|  | 	ARCH=${qemu_arch} emake -C test check | ||||||
| } | } | ||||||
|  |  | ||||||
| src_install() { | src_install() { | ||||||
|   | |||||||
| @@ -1,21 +0,0 @@ | |||||||
| From 921792f201e954de461d3b551e01b5369d666db8 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com> |  | ||||||
| Date: Tue, 10 Sep 2024 15:51:46 +0200 |  | ||||||
| Subject: [PATCH] feat(systemd): always install libsystemd libraries |  | ||||||
|  |  | ||||||
| --- |  | ||||||
|  modules.d/00systemd/module-setup.sh | 3 ++- |  | ||||||
|  1 file changed, 2 insertions(+), 1 deletion(-) |  | ||||||
|  |  | ||||||
| diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh |  | ||||||
| index 498cd7edd..fb8a8200b 100755 |  | ||||||
| --- a/modules.d/00systemd/module-setup.sh |  | ||||||
| +++ b/modules.d/00systemd/module-setup.sh |  | ||||||
| @@ -156,5 +156,6 @@ EOF |  | ||||||
|      _arch=${DRACUT_ARCH:-$(uname -m)} |  | ||||||
|      inst_libdir_file \ |  | ||||||
|          {"tls/$_arch/",tls/,"$_arch/",}"libgcrypt.so*" \ |  | ||||||
| -        {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" |  | ||||||
| +        {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" \ |  | ||||||
| +        {"tls/$_arch/",tls/,"$_arch/",}"systemd/libsystemd*.so" |  | ||||||
|  } |  | ||||||
| @@ -1,41 +0,0 @@ | |||||||
| From e16195f28669264227c169d45107ea95b83d8f48 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Alexander Tsoy <alexander@tsoy.me> |  | ||||||
| Date: Tue, 16 Jul 2024 08:48:54 +0300 |  | ||||||
| Subject: [PATCH] fix(systemd): move installation of libkmod to udev-rules |  | ||||||
|  module |  | ||||||
|  |  | ||||||
| libkmod library should be installed even if systemd module is |  | ||||||
| omitted, so move its installation to udev-rules module. |  | ||||||
| --- |  | ||||||
|  modules.d/00systemd/module-setup.sh    | 1 - |  | ||||||
|  modules.d/95udev-rules/module-setup.sh | 6 +++++- |  | ||||||
|  2 files changed, 5 insertions(+), 2 deletions(-) |  | ||||||
|  |  | ||||||
| diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh |  | ||||||
| index ce7bb520c..e4fb9a586 100755 |  | ||||||
| --- a/modules.d/00systemd/module-setup.sh |  | ||||||
| +++ b/modules.d/00systemd/module-setup.sh |  | ||||||
| @@ -171,6 +171,5 @@ EOF |  | ||||||
|      _arch=${DRACUT_ARCH:-$(uname -m)} |  | ||||||
|      inst_libdir_file \ |  | ||||||
|          {"tls/$_arch/",tls/,"$_arch/",}"libgcrypt.so*" \ |  | ||||||
| -        {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \ |  | ||||||
|          {"tls/$_arch/",tls/,"$_arch/",}"libnss_*" |  | ||||||
|  } |  | ||||||
| diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh |  | ||||||
| index d82ed5eb9..6078751f6 100755 |  | ||||||
| --- a/modules.d/95udev-rules/module-setup.sh |  | ||||||
| +++ b/modules.d/95udev-rules/module-setup.sh |  | ||||||
| @@ -93,7 +93,11 @@ install() { |  | ||||||
|          "${udevdir}"/usb_id \ |  | ||||||
|          "${udevdir}"/v4l_id |  | ||||||
|   |  | ||||||
| -    inst_libdir_file "libnss_files*" |  | ||||||
| +    # Install required libraries. |  | ||||||
| +    _arch=${DRACUT_ARCH:-$(uname -m)} |  | ||||||
| +    inst_libdir_file \ |  | ||||||
| +        {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \ |  | ||||||
| +        {"tls/$_arch/",tls/,"$_arch/",}"libnss_files*" |  | ||||||
|   |  | ||||||
|      # Install the hosts local user configurations if enabled. |  | ||||||
|      if [[ $hostonly ]]; then |  | ||||||
| @@ -0,0 +1,48 @@ | |||||||
|  | From 1579bb0c77d9e1e4599623a165c54a0dccdaf875 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Andrew Ammerlaan <andrewammerlaan@gentoo.org> | ||||||
|  | Date: Thu, 31 Oct 2024 11:28:37 +0100 | ||||||
|  | Subject: [PATCH] fix(dracut.sh): ensure abs path for objcopy args | ||||||
|  |  | ||||||
|  | Closes: https://github.com/dracut-ng/dracut-ng/issues/833 | ||||||
|  | Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org> | ||||||
|  | --- | ||||||
|  |  dracut.sh | 19 ++++++++++++++++--- | ||||||
|  |  1 file changed, 16 insertions(+), 3 deletions(-) | ||||||
|  |  | ||||||
|  | diff --git a/dracut.sh b/dracut.sh | ||||||
|  | index 90927136e..8b666a1ac 100755 | ||||||
|  | --- a/dracut.sh | ||||||
|  | +++ b/dracut.sh | ||||||
|  | @@ -35,6 +35,19 @@ readonly dracut_cmd=$(readlink -f "$0") | ||||||
|  |   | ||||||
|  |  set -o pipefail | ||||||
|  |   | ||||||
|  | +# below we sometimes cd, which causes problems if we're building an UKI | ||||||
|  | +# and relative paths are passed on to us. Store the pwd before we do anything. | ||||||
|  | +pwd=$(pwd) | ||||||
|  | +path_rel_to_abs() { | ||||||
|  | +    for var in "$@"; do | ||||||
|  | +        if [[ $var == /* ]]; then | ||||||
|  | +            echo "$var" | ||||||
|  | +        else | ||||||
|  | +            echo "$pwd/$var" | ||||||
|  | +        fi | ||||||
|  | +    done | ||||||
|  | +} | ||||||
|  | + | ||||||
|  |  usage() { | ||||||
|  |      [[ $sysroot_l ]] && dracutsysrootdir="$sysroot_l" | ||||||
|  |      [[ $dracutbasedir ]] || dracutbasedir="$dracutsysrootdir"/usr/lib/dracut | ||||||
|  | @@ -1095,9 +1108,9 @@ drivers_dir="${drivers_dir%"${drivers_dir##*[!/]}"}" | ||||||
|  |  [[ $reproducible_l ]] && reproducible="$reproducible_l" | ||||||
|  |  [[ $loginstall_l ]] && loginstall="$loginstall_l" | ||||||
|  |  [[ $uefi_l ]] && uefi=$uefi_l | ||||||
|  | -[[ $uefi_stub_l ]] && uefi_stub="$uefi_stub_l" | ||||||
|  | -[[ $uefi_splash_image_l ]] && uefi_splash_image="$uefi_splash_image_l" | ||||||
|  | -[[ $kernel_image_l ]] && kernel_image="$kernel_image_l" | ||||||
|  | +[[ $uefi_stub_l ]] && uefi_stub=$(path_rel_to_abs "$uefi_stub_l") | ||||||
|  | +[[ $uefi_splash_image_l ]] && uefi_splash_image=$(path_rel_to_abs "$uefi_splash_image_l") | ||||||
|  | +[[ $kernel_image_l ]] && kernel_image=$(path_rel_to_abs "$kernel_image_l") | ||||||
|  |  [[ $sbat_l ]] && sbat="$sbat_l" | ||||||
|  |  [[ $machine_id_l ]] && machine_id="$machine_id_l" | ||||||
|  |   | ||||||
		Reference in New Issue
	
	Block a user