summaryrefslogtreecommitdiff
path: root/sys-kernel/dracut
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-07-19 22:59:15 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-07-19 22:59:15 +0100
commita9b7d6d041be3ac011bf87b47d33cdd3cdf9346b (patch)
treed98c727eb328946550806f49efdb5e8f7b5defcd /sys-kernel/dracut
parent10acd8a455d7551227220b3445bcb5351afc15ce (diff)
sys-kernel/dracut : version bump
Diffstat (limited to 'sys-kernel/dracut')
-rw-r--r--sys-kernel/dracut/Manifest2
-rw-r--r--sys-kernel/dracut/dracut-044-r9.ebuild277
-rw-r--r--sys-kernel/dracut/dracut-048.ebuild175
-rw-r--r--sys-kernel/dracut/files/044-0001-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch32
-rw-r--r--sys-kernel/dracut/files/044-0002-systemd-initrd-add-initrd-root-device.target.patch24
-rw-r--r--sys-kernel/dracut/files/044-0003-50-dracut.install-use-bin-bash-shebang.patch23
-rw-r--r--sys-kernel/dracut/files/044-0004-redcore-change-default-initramfs-name.patch12
-rw-r--r--sys-kernel/dracut/files/048-dracut-install-simplify-ldd-parsing-logic.patch41
-rw-r--r--sys-kernel/dracut/files/048-redcore-change-default-initramfs-name.patch17
-rw-r--r--sys-kernel/dracut/files/048-remove_JobRunningTimeoutSec.patch40
-rw-r--r--sys-kernel/dracut/files/048-sort-fixup-creating-early-microcode.patch (renamed from sys-kernel/dracut/files/sort-fixup-creating-early-microcode.patch)0
-rw-r--r--sys-kernel/dracut/files/dracut-044-backport-fix-for-microcode-loading.patch12
-rw-r--r--sys-kernel/dracut/files/dracut-044-bash-4.4.patch80
-rw-r--r--sys-kernel/dracut/files/dracut-044-ext4-and-f2fs-need-crc32X-too.patch30
-rw-r--r--sys-kernel/dracut/files/dracut-044-preserve-xattrs-when-copying.patch51
15 files changed, 274 insertions, 542 deletions
diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest
index 2b65cf5d..ff319ade 100644
--- a/sys-kernel/dracut/Manifest
+++ b/sys-kernel/dracut/Manifest
@@ -1 +1 @@
-DIST dracut-044.tar.xz 280004 BLAKE2B 5b9603eb769b542e2d56fae4d0f0fe250e7e60eb9c85f9c7b7a472b9d889a9f323b3ba1cbbeb1d5de10507498542275cd4430695cc8b48426b42c03d0672ea87 SHA512 bc788076e425b223d98cf0e0b15ff57d75d423991d7a67fb564a2857c38d5c3a21d846d2ca4523f9d4b0128bb981d09b5c26031435c5fc5e30f53080bca19b3d
+DIST dracut-048.tar.xz 308484 BLAKE2B b19c8122034a8b40cbc9d09245730900b59691c336f1d231e768786ad64068e0a8daf57ae9a4182ab50d9e1c683c9b7dcac354eb26d8a60f061db78121bc11c7 SHA512 97fcfd5d314ef40687c245d95d2f1d0f3f9ff0472e66b6e6324bf9bd6b98186104f9d71fd9af344126d6ea9fa47b744d52831a374225633225f6f17fb15c04e0
diff --git a/sys-kernel/dracut/dracut-044-r9.ebuild b/sys-kernel/dracut/dracut-044-r9.ebuild
deleted file mode 100644
index b53f4ab8..00000000
--- a/sys-kernel/dracut/dracut-044-r9.ebuild
+++ /dev/null
@@ -1,277 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit bash-completion-r1 eutils linux-info multilib systemd
-
-DESCRIPTION="Generic initramfs generation tool"
-HOMEPAGE="https://dracut.wiki.kernel.org"
-SRC_URI="mirror://kernel/linux/utils/boot/${PN}/${P}.tar.xz"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug +microcode selinux +splash systemd"
-
-RESTRICT="test"
-
-CDEPEND="virtual/udev
- microcode? (
- sys-firmware/intel-microcode
- sys-kernel/linux-firmware
- )
- splash? (
- sys-boot/plymouth
- )
- systemd? ( >=sys-apps/systemd-199 )
- sys-kernel/dracut-config-redcore
- "
-RDEPEND="${CDEPEND}
- app-arch/cpio
- >=app-shells/bash-4.0
- >sys-apps/kmod-5[tools]
- || (
- >=sys-apps/sysvinit-2.87-r3
- sys-apps/systemd[sysv-utils]
- sys-apps/systemd-sysv-utils
- )
- >=sys-apps/util-linux-2.21
-
- debug? ( dev-util/strace )
- selinux? (
- sys-libs/libselinux
- sys-libs/libsepol
- sec-policy/selinux-dracut
- )
- "
-DEPEND="${CDEPEND}
- app-text/asciidoc
- >=dev-libs/libxslt-1.1.26
- app-text/docbook-xml-dtd:4.5
- >=app-text/docbook-xsl-stylesheets-1.75.2
- virtual/pkgconfig
- "
-
-DOCS=( AUTHORS HACKING NEWS README README.generic README.kernel README.modules
- README.testsuite TODO )
-MY_LIBDIR=/usr/lib
-QA_MULTILIB_PATHS="
- usr/lib/dracut/dracut-install
- usr/lib/dracut/skipcpio
- "
-
-PATCHES=(
- ""${FILESDIR}"/044-0001-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch"
- ""${FILESDIR}"/044-0002-systemd-initrd-add-initrd-root-device.target.patch"
- ""${FILESDIR}"/044-0003-50-dracut.install-use-bin-bash-shebang.patch"
- ""${FILESDIR}"/044-0004-redcore-change-default-initramfs-name.patch"
- ""${FILESDIR}"/"${P}"-bash-4.4.patch"
- ""${FILESDIR}"/"${P}"-preserve-xattrs-when-copying.patch"
- ""${FILESDIR}"/"${P}"-backport-fix-for-microcode-loading.patch"
- ""${FILESDIR}"/"${P}"-ext4-and-f2fs-need-crc32X-too.patch"
- ""${FILESDIR}"/sort-fixup-creating-early-microcode.patch"
-)
-
-#
-# Helper functions
-#
-
-# Removes module from modules.d.
-# $1 = module name
-# Module name can be specified without number prefix.
-rm_module() {
- local force m
- [[ $1 = -f ]] && force=-f
-
- for m in $@; do
- if [[ $m =~ ^[0-9][0-9][^\ ]*$ ]]; then
- rm ${force} --interactive=never -r "${modules_dir}"/$m
- else
- rm ${force} --interactive=never -r "${modules_dir}"/[0-9][0-9]$m
- fi
- done
-}
-
-src_prepare() {
- local libdirs="/$(get_libdir) /usr/$(get_libdir)"
- if [[ ${SYMLINK_LIB} = yes ]]; then
- # Preserve lib -> lib64 symlinks in initramfs
- [[ $libdirs =~ /lib\ ]] || libdirs+=" /lib /usr/lib"
- fi
- einfo "Setting libdirs to \"${libdirs}\" ..."
- sed -e "3alibdirs=\"${libdirs}\"" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
-
- local udevdir="$("$(tc-getPKG_CONFIG)" udev --variable=udevdir)"
- einfo "Setting udevdir to ${udevdir}..."
- sed -r -e "s|^(udevdir=).*$|\1${udevdir}|" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
-
- if use systemd; then
- local systemdutildir="$(systemd_get_utildir)"
- local systemdsystemunitdir="$(systemd_get_unitdir)"
- local systemdsystemconfdir="$("$(tc-getPKG_CONFIG)" systemd \
- --variable=systemdsystemconfdir)"
- [[ ${systemdsystemconfdir} ]] \
- || systemdsystemconfdir=/etc/systemd/system
- einfo "Setting systemdutildir to ${systemdutildir} and ..."
- sed -e "5asystemdutildir=\"${systemdutildir}\"" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
- einfo "Setting systemdsystemunitdir to ${systemdsystemunitdir} and..."
- sed -e "6asystemdsystemunitdir=\"${systemdsystemunitdir}\"" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
- einfo "Setting systemdsystemconfdir to ${systemdsystemconfdir}..."
- sed -e "7asystemdsystemconfdir=\"${systemdsystemconfdir}\"" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
- else
- local systemdutildir="/lib/systemd"
- einfo "Setting systemdutildir for standalone udev to" \
- "${systemdutildir}..."
- sed -e "5asystemdutildir=\"${systemdutildir}\"" \
- -i "${S}/dracut.conf.d/gentoo.conf.example" || die
- fi
-
- epatch "${PATCHES[@]}"
-
- epatch_user
-}
-
-src_configure() {
- local myconf=(
- --libdir="${MY_LIBDIR}"
- --bashcompletiondir="$(get_bashcompdir)"
- )
-
- if use systemd; then
- myconf+=( --systemdsystemunitdir="$(systemd_get_unitdir)" )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- tc-export CC
- emake doc install/dracut-install skipcpio/skipcpio
-}
-
-src_install() {
- default
-
- local my_libdir="${MY_LIBDIR}"
- local dracutlibdir="${my_libdir#/}/dracut"
-
- echo "DRACUT_VERSION=$PVR" > "${D%/}/${dracutlibdir}/dracut-version.sh"
-
- insinto "${dracutlibdir}/dracut.conf.d/"
- newins dracut.conf.d/gentoo.conf.example gentoo.conf
-
- insinto /etc/logrotate.d
- newins dracut.logrotate dracut
-
- dodir /var/lib/dracut/overlay
-
- dohtml dracut.html
-
- if ! use systemd; then
- # Scripts in kernel/install.d are systemd-specific
- rm -r "${D%/}/${my_libdir}/kernel" || die
- fi
-
- #
- # Modules
- #
- local module
- modules_dir="${D%/}/${dracutlibdir}/modules.d"
-
- use debug || rm_module 95debug
- use selinux || rm_module 98selinux
-
- if use systemd; then
- # With systemd following modules do not make sense
- rm_module 96securityfs 97masterkey 98integrity
- else
- rm_module 00systemd 98dracut-systemd
- # Without systemd following modules do not make sense
- rm_module 00systemd-bootchart 01systemd-initrd 02systemd-networkd
- fi
-
- # Remove modules which won't work for sure
- rm_module 95fcoe # no tools
- # fips module depends on masked app-crypt/hmaccalc
- rm_module 01fips 02fips-aesni
-}
-
-pkg_postinst() {
- if linux-info_get_any_version && linux_config_exists; then
- ewarn ""
- ewarn "If the following test report contains a missing kernel"
- ewarn "configuration option, you should reconfigure and rebuild your"
- ewarn "kernel before booting image generated with this Dracut version."
- ewarn ""
-
- local CONFIG_CHECK="~BLK_DEV_INITRD ~DEVTMPFS"
-
- # Kernel configuration options descriptions:
- local desc_DEVTMPFS="Maintain a devtmpfs filesystem to mount at /dev"
- local desc_BLK_DEV_INITRD="Initial RAM filesystem and RAM disk "\
-"(initramfs/initrd) support"
-
- local opt desc
-
- # Generate ERROR_* variables for check_extra_config.
- for opt in ${CONFIG_CHECK}; do
- opt=${opt#\~}
- desc=desc_${opt}
- eval "local ERROR_${opt}='CONFIG_${opt}: \"${!desc}\"" \
- "is missing and REQUIRED'"
- done
-
- check_extra_config
- echo
- else
- ewarn ""
- ewarn "Your kernel configuration couldn't be checked. Do you have"
- ewarn "/usr/src/linux/.config file there? Please check manually if"
- ewarn "following options are enabled:"
- ewarn ""
- ewarn " CONFIG_BLK_DEV_INITRD"
- ewarn " CONFIG_DEVTMPFS"
- ewarn ""
- fi
-
- elog "To get additional features, a number of optional runtime"
- elog "dependencies may be installed:"
- elog ""
- optfeature "Networking support" net-misc/curl "net-misc/dhcp[client]" \
- sys-apps/iproute2
- optfeature \
- "Measure performance of the boot process for later visualisation" \
- app-benchmarks/bootchart2 app-admin/killproc sys-process/acct
- 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-crypt/gnupg
- optfeature \
- "Allows use of dash instead of default bash (on your own risk)" \
- app-shells/dash
- optfeature "Framebuffer splash (media-gfx/splashutils)" \
- media-gfx/splashutils
- optfeature "Support iSCSI" sys-block/open-iscsi
- optfeature "Support Logical Volume Manager" sys-fs/lvm2
- optfeature "Support MD devices, also known as software RAID devices" \
- sys-fs/mdadm
- 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" \
- net-misc/openssh
- optfeature "Enable logging with syslog-ng or rsyslog" app-admin/syslog-ng \
- app-admin/rsyslog
-}
diff --git a/sys-kernel/dracut/dracut-048.ebuild b/sys-kernel/dracut/dracut-048.ebuild
new file mode 100644
index 00000000..7b9c61d4
--- /dev/null
+++ b/sys-kernel/dracut/dracut-048.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit bash-completion-r1 eutils linux-info systemd toolchain-funcs
+
+DESCRIPTION="Generic initramfs generation tool"
+HOMEPAGE="https://dracut.wiki.kernel.org"
+SRC_URI="mirror://kernel/linux/utils/boot/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ~arm ia64 ~mips ppc ~ppc64 sparc x86"
+IUSE="+cryptsetup debug +device-mapper +lvm +microcode +mdadm selinux +splash"
+
+# Tests need root privileges, bug #298014
+RESTRICT="test"
+
+COMMON_DEPEND=">=sys-apps/kmod-23[tools]
+ virtual/pkgconfig
+ virtual/udev
+ cryptsetup? (
+ sys-fs/cryptsetup
+ )
+ device-mapper? (
+ sys-fs/lvm2
+ )
+ lvm? (
+ sys-fs/lvm2
+ )
+ microcode? (
+ sys-firmware/intel-microcode
+ sys-kernel/linux-firmware
+ )
+ mdadm? (
+ sys-fs/mdadm
+ )
+ splash? (
+ sys-boot/plymouth
+ )
+ sys-kernel/dracut-config-redcore
+ "
+RDEPEND="${COMMON_DEPEND}
+ app-arch/cpio
+ >=app-shells/bash-4.0:0
+ sys-apps/coreutils[xattr(-)]
+ || (
+ >=sys-apps/sysvinit-2.87-r3
+ sys-apps/systemd[sysv-utils]
+ )
+ >=sys-apps/util-linux-2.21
+
+ debug? ( dev-util/strace )
+ selinux? (
+ sec-policy/selinux-dracut
+ sys-libs/libselinux
+ sys-libs/libsepol
+ )
+ "
+DEPEND="${COMMON_DEPEND}
+ app-text/asciidoc
+ app-text/docbook-xml-dtd:4.5
+ >=app-text/docbook-xsl-stylesheets-1.75.2
+ >=dev-libs/libxslt-1.1.26
+ "
+
+DOCS=( AUTHORS HACKING NEWS README README.generic README.kernel README.modules
+ README.testsuite TODO )
+
+QA_MULTILIB_PATHS="usr/lib/dracut/.*"
+
+PATCHES=(
+ "${FILESDIR}"/048-dracut-install-simplify-ldd-parsing-logic.patch
+ "${FILESDIR}"/048-redcore-change-default-initramfs-name.patch
+ "${FILESDIR}"/048-remove_JobRunningTimeoutSec.patch
+ "${FILESDIR}"/048-sort-fixup-creating-early-microcode.patch
+)
+
+src_configure() {
+ local myconf=(
+ --prefix="${EPREFIX}/usr"
+ --sysconfdir="${EPREFIX}/etc"
+ --bashcompletiondir="$(get_bashcompdir)"
+ --systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ )
+
+ tc-export CC PKG_CONFIG
+
+ echo ./configure "${myconf[@]}"
+ ./configure "${myconf[@]}" || die
+}
+
+src_install() {
+ default
+
+ local libdirs=( /$(get_libdir) /usr/$(get_libdir) )
+ if [[ ${SYMLINK_LIB} = yes && $(get_libdir) != lib ]]; then
+ # Preserve lib -> lib64 symlinks in initramfs
+ libdirs+=( /lib /usr/lib )
+ fi
+
+ einfo "Setting libdirs to \"${libdirs[*]}\" ..."
+ echo "libdirs=\"${libdirs[*]}\"" > "${T}/gentoo.conf" || die
+ insinto "/usr/lib/dracut/dracut.conf.d"
+ doins "${T}/gentoo.conf"
+
+ insinto /etc/logrotate.d
+ newins dracut.logrotate dracut
+
+ docinto html
+ dodoc dracut.html
+}
+
+pkg_postinst() {
+ if linux-info_get_any_version && linux_config_exists; then
+ ewarn ""
+ ewarn "If the following test report contains a missing kernel"
+ ewarn "configuration option, you should reconfigure and rebuild your"
+ ewarn "kernel before booting image generated with this Dracut version."
+ ewarn ""
+
+ local CONFIG_CHECK="~BLK_DEV_INITRD ~DEVTMPFS"
+
+ # Kernel configuration options descriptions:
+ local ERROR_DEVTMPFS='CONFIG_DEVTMPFS: "Maintain a devtmpfs filesystem to mount at /dev" '
+ ERROR_DEVTMPFS+='is missing and REQUIRED'
+ local ERROR_BLK_DEV_INITRD='CONFIG_BLK_DEV_INITRD: "Initial RAM filesystem and RAM disk '
+ ERROR_BLK_DEV_INITRD+='(initramfs/initrd) support" is missing and REQUIRED'
+
+ check_extra_config
+ echo
+ else
+ ewarn ""
+ ewarn "Your kernel configuration couldn't be checked."
+ ewarn "Please check manually if following options are enabled:"
+ ewarn ""
+ ewarn " CONFIG_BLK_DEV_INITRD"
+ ewarn " CONFIG_DEVTMPFS"
+ ewarn ""
+ fi
+
+ elog "To get additional features, a number of optional runtime"
+ elog "dependencies may be installed:"
+ elog ""
+ optfeature "Networking support" net-misc/curl "net-misc/dhcp[client]" \
+ sys-apps/iproute2 "net-misc/iputils[arping]"
+ optfeature \
+ "Measure performance of the boot process for later visualisation" \
+ app-benchmarks/bootchart2 app-admin/killproc sys-process/acct
+ 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-crypt/gnupg
+ optfeature \
+ "Allows use of dash instead of default bash (on your own risk)" \
+ app-shells/dash
+ optfeature "Support iSCSI" sys-block/open-iscsi
+ optfeature "Support Logical Volume Manager" sys-fs/lvm2
+ optfeature "Support MD devices, also known as software RAID devices" \
+ sys-fs/mdadm
+ 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" \
+ net-misc/openssh
+ optfeature "Enable logging with syslog-ng or rsyslog" app-admin/syslog-ng \
+ app-admin/rsyslog
+}
diff --git a/sys-kernel/dracut/files/044-0001-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch b/sys-kernel/dracut/files/044-0001-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch
deleted file mode 100644
index fd6f1185..00000000
--- a/sys-kernel/dracut/files/044-0001-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From c41df7e1db1adc51399ab2c22f251b15eb2065b1 Mon Sep 17 00:00:00 2001
-From: Alexander Tsoy <alexander@tsoy.me>
-Date: Tue, 5 Jan 2016 22:11:57 +0300
-Subject: [PATCH] base/dracut-lib.sh:dev_unit_name() guard against $dev
- beginning with "-"
-
-crypt/parse-crypt.sh generate initqueue job which always call
-dev_unit_name() with an argument beginning with "-". This results
-in the following error:
-
-dracut-initqueue[307]: + systemd-escape -p -cfb4aa43-2f02-4c6b-a313-60ea99288087
-dracut-initqueue[307]: systemd-escape: invalid option -- 'c'
----
- modules.d/99base/dracut-lib.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
-index ad03394..0a0b1b9 100755
---- a/modules.d/99base/dracut-lib.sh
-+++ b/modules.d/99base/dracut-lib.sh
-@@ -874,7 +874,7 @@ dev_unit_name()
- local dev="$1"
-
- if command -v systemd-escape >/dev/null; then
-- systemd-escape -p "$dev"
-+ systemd-escape -p -- "$dev"
- return
- fi
-
---
-2.10.2
-
diff --git a/sys-kernel/dracut/files/044-0002-systemd-initrd-add-initrd-root-device.target.patch b/sys-kernel/dracut/files/044-0002-systemd-initrd-add-initrd-root-device.target.patch
deleted file mode 100644
index 21cb6792..00000000
--- a/sys-kernel/dracut/files/044-0002-systemd-initrd-add-initrd-root-device.target.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From d4efc0aeeecc470d9a267b7f3c130f472488905c Mon Sep 17 00:00:00 2001
-From: Harald Hoyer <harald@redhat.com>
-Date: Wed, 25 May 2016 15:06:29 +0200
-Subject: [PATCH] systemd-initrd: add initrd-root-device.target
-
----
- modules.d/01systemd-initrd/module-setup.sh | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/modules.d/01systemd-initrd/module-setup.sh b/modules.d/01systemd-initrd/module-setup.sh
-index fb6a9ea..c1ccd2a 100755
---- a/modules.d/01systemd-initrd/module-setup.sh
-+++ b/modules.d/01systemd-initrd/module-setup.sh
-@@ -28,6 +28,7 @@ install() {
- inst_multiple -o \
- $systemdsystemunitdir/initrd.target \
- $systemdsystemunitdir/initrd-fs.target \
-+ $systemdsystemunitdir/initrd-root-device.target \
- $systemdsystemunitdir/initrd-root-fs.target \
- $systemdsystemunitdir/initrd-switch-root.target \
- $systemdsystemunitdir/initrd-switch-root.service \
---
-2.10.2
-
diff --git a/sys-kernel/dracut/files/044-0003-50-dracut.install-use-bin-bash-shebang.patch b/sys-kernel/dracut/files/044-0003-50-dracut.install-use-bin-bash-shebang.patch
deleted file mode 100644
index 85ebc7e6..00000000
--- a/sys-kernel/dracut/files/044-0003-50-dracut.install-use-bin-bash-shebang.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 69395a528aed99ec04b16c14ebacf4c2e10afd26 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Fri, 4 Nov 2016 13:09:28 -0400
-Subject: [PATCH] 50-dracut.install: use /bin/bash shebang
-
-This script utilizes several bash-specific constructs.
----
- 50-dracut.install | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/50-dracut.install b/50-dracut.install
-index 7d081d5..54c71d4 100755
---- a/50-dracut.install
-+++ b/50-dracut.install
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/bin/bash
-
- COMMAND="$1"
- KERNEL_VERSION="$2"
---
-2.10.2
-
diff --git a/sys-kernel/dracut/files/044-0004-redcore-change-default-initramfs-name.patch b/sys-kernel/dracut/files/044-0004-redcore-change-default-initramfs-name.patch
deleted file mode 100644
index 39163375..00000000
--- a/sys-kernel/dracut/files/044-0004-redcore-change-default-initramfs-name.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur a/dracut.sh b/dracut.sh
---- a/dracut.sh 2015-11-25 13:22:28.000000000 +0000
-+++ b/dracut.sh 2017-12-30 00:26:04.680751115 +0000
-@@ -627,7 +627,7 @@
- if [[ $MACHINE_ID ]] && ( [[ -d /boot/${MACHINE_ID} ]] || [[ -L /boot/${MACHINE_ID} ]] ); then
- outfile="/boot/${MACHINE_ID}/$kernel/initrd"
- else
-- outfile="/boot/initramfs-$kernel.img"
-+ outfile="/boot/initrd-$kernel"
- fi
- fi
-
diff --git a/sys-kernel/dracut/files/048-dracut-install-simplify-ldd-parsing-logic.patch b/sys-kernel/dracut/files/048-dracut-install-simplify-ldd-parsing-logic.patch
new file mode 100644
index 00000000..aa9c543f
--- /dev/null
+++ b/sys-kernel/dracut/files/048-dracut-install-simplify-ldd-parsing-logic.patch
@@ -0,0 +1,41 @@
+From 6d886bb74d1608e4565d926aa259ea5afc9df7b9 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Thu, 4 Oct 2018 16:45:47 -0400
+Subject: [PATCH] dracut-install: simplify ldd parsing logic
+
+The previous logic would not handle absolute paths on the left side of
+the "=>" properly. For example, on Gentoo ARM64, ldd outputs this:
+
+ /lib/ld-linux-aarch64.so.1 => /lib64/ld-linux-aarch64.so.1
+
+At runtime, the kernel tries to load the file from /lib, and fails if we
+only provide it in /lib64.
+
+Instead of looking for the first slash after the "=>", just look for the
+first slash, period. This would fail if we somehow had a relative path
+on the left side (foo/libbar.so), but I'm not aware of any binaries that
+would contain such an entry in DT_NEEDED.
+
+Bug: https://bugs.gentoo.org/667752
+Signed-off-by: Mike Gilbert <floppym@gentoo.org>
+---
+ install/dracut-install.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/install/dracut-install.c b/install/dracut-install.c
+index 88bca1d44..5f352b360 100644
+--- a/install/dracut-install.c
++++ b/install/dracut-install.c
+@@ -479,11 +479,7 @@ static int resolve_deps(const char *src)
+ if (strstr(buf, destrootdir))
+ break;
+
+- p = strstr(buf, "=>");
+- if (!p)
+- p = buf;
+-
+- p = strchr(p, '/');
++ p = strchr(buf, '/');
+ if (p) {
+ char *q;
+
diff --git a/sys-kernel/dracut/files/048-redcore-change-default-initramfs-name.patch b/sys-kernel/dracut/files/048-redcore-change-default-initramfs-name.patch
new file mode 100644
index 00000000..82519600
--- /dev/null
+++ b/sys-kernel/dracut/files/048-redcore-change-default-initramfs-name.patch
@@ -0,0 +1,17 @@
+diff -Nur a/dracut.sh b/dracut.sh
+--- a/dracut.sh 2018-07-06 09:37:51.000000000 +0100
++++ b/dracut.sh 2019-07-19 22:33:11.571832132 +0100
+@@ -791,11 +791,11 @@
+ outfile="$efidir/Linux/linux-$kernel${MACHINE_ID:+-${MACHINE_ID}}${BUILD_ID:+-${BUILD_ID}}.efi"
+ else
+ if [[ -e "/boot/vmlinuz-$kernel" ]]; then
+- outfile="/boot/initramfs-$kernel.img"
++ outfile="/boot/initrd-$kernel"
+ elif [[ $MACHINE_ID ]] && ( [[ -d /boot/${MACHINE_ID} ]] || [[ -L /boot/${MACHINE_ID} ]] ); then
+ outfile="/boot/${MACHINE_ID}/$kernel/initrd"
+ else
+- outfile="/boot/initramfs-$kernel.img"
++ outfile="/boot/initrd-$kernel"
+ fi
+ fi
+ fi
diff --git a/sys-kernel/dracut/files/048-remove_JobRunningTimeoutSec.patch b/sys-kernel/dracut/files/048-remove_JobRunningTimeoutSec.patch
new file mode 100644
index 00000000..4953bb1c
--- /dev/null
+++ b/sys-kernel/dracut/files/048-remove_JobRunningTimeoutSec.patch
@@ -0,0 +1,40 @@
+diff -Naur dracut-047/modules.d/90dmsquash-live/dmsquash-generator.sh dracut-047.new/modules.d/90dmsquash-live/dmsquash-generator.sh
+--- dracut-047/modules.d/90dmsquash-live/dmsquash-generator.sh 2018-02-19 10:00:33.000000000 +0100
++++ dracut-047.new/modules.d/90dmsquash-live/dmsquash-generator.sh 2018-04-03 09:27:39.770986599 +0200
+@@ -78,5 +78,4 @@
+ {
+ echo "[Unit]"
+ echo "JobTimeoutSec=3000"
+- echo "JobRunningTimeoutSec=3000"
+ } > "$GENERATOR_DIR/$_dev.device.d/timeout.conf"
+diff -Naur dracut-047/modules.d/90livenet/livenet-generator.sh dracut-047.new/modules.d/90livenet/livenet-generator.sh
+--- dracut-047/modules.d/90livenet/livenet-generator.sh 2018-02-19 10:00:33.000000000 +0100
++++ dracut-047.new/modules.d/90livenet/livenet-generator.sh 2018-04-03 09:27:47.559986347 +0200
+@@ -57,5 +57,4 @@
+ {
+ echo "[Unit]"
+ echo "JobTimeoutSec=3000"
+- echo "JobRunningTimeoutSec=3000"
+ } > "$GENERATOR_DIR/dev-mapper-live\x2drw.device.d/timeout.conf"
+diff -Naur dracut-047/modules.d/98dracut-systemd/rootfs-generator.sh dracut-047.new/modules.d/98dracut-systemd/rootfs-generator.sh
+--- dracut-047/modules.d/98dracut-systemd/rootfs-generator.sh 2018-02-19 10:00:33.000000000 +0100
++++ dracut-047.new/modules.d/98dracut-systemd/rootfs-generator.sh 2018-04-03 09:27:32.335986840 +0200
+@@ -32,7 +32,6 @@
+ {
+ echo "[Unit]"
+ echo "JobTimeoutSec=$_timeout"
+- echo "JobRunningTimeoutSec=$_timeout"
+ } > "$GENERATOR_DIR"/${_name}.device.d/timeout.conf
+ fi
+ }
+diff -Naur dracut-047/modules.d/99base/dracut-lib.sh dracut-047.new/modules.d/99base/dracut-lib.sh
+--- dracut-047/modules.d/99base/dracut-lib.sh 2018-02-19 10:00:33.000000000 +0100
++++ dracut-047.new/modules.d/99base/dracut-lib.sh 2018-04-03 09:27:21.155987203 +0200
+@@ -938,7 +938,6 @@
+ {
+ echo "[Unit]"
+ echo "JobTimeoutSec=$_timeout"
+- echo "JobRunningTimeoutSec=$_timeout"
+ } > ${PREFIX}/etc/systemd/system/${_name}.device.d/timeout.conf
+ type mark_hostonly >/dev/null 2>&1 && mark_hostonly /etc/systemd/system/${_name}.device.d/timeout.conf
+ _needreload=1
diff --git a/sys-kernel/dracut/files/sort-fixup-creating-early-microcode.patch b/sys-kernel/dracut/files/048-sort-fixup-creating-early-microcode.patch
index 1dc95158..1dc95158 100644
--- a/sys-kernel/dracut/files/sort-fixup-creating-early-microcode.patch
+++ b/sys-kernel/dracut/files/048-sort-fixup-creating-early-microcode.patch
diff --git a/sys-kernel/dracut/files/dracut-044-backport-fix-for-microcode-loading.patch b/sys-kernel/dracut/files/dracut-044-backport-fix-for-microcode-loading.patch
deleted file mode 100644
index a7454d3b..00000000
--- a/sys-kernel/dracut/files/dracut-044-backport-fix-for-microcode-loading.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur a/dracut-functions.sh b/dracut-functions.sh
---- a/dracut-functions.sh 2015-11-25 13:22:28.000000000 +0000
-+++ b/dracut-functions.sh 2018-01-10 06:32:03.255256206 +0000
-@@ -652,7 +652,7 @@
- if [[ "$(get_cpu_vendor)" == "AMD" ]]; then
- # If family greater or equal than 0x15
- if [[ $family -ge 21 ]]; then
-- printf "microcode_amd_fam15h.bin"
-+ printf "microcode_amd_fam%xh.bin" $family
- else
- printf "microcode_amd.bin"
- fi
diff --git a/sys-kernel/dracut/files/dracut-044-bash-4.4.patch b/sys-kernel/dracut/files/dracut-044-bash-4.4.patch
deleted file mode 100644
index 3144c8e6..00000000
--- a/sys-kernel/dracut/files/dracut-044-bash-4.4.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-diff -urN dracut-044.orig/modules.d/50drm/module-setup.sh dracut-044/modules.d/50drm/module-setup.sh
---- dracut-044.orig/modules.d/50drm/module-setup.sh 2015-11-25 16:22:28.000000000 +0300
-+++ dracut-044/modules.d/50drm/module-setup.sh 2016-09-28 02:50:08.914967926 +0300
-@@ -24,9 +24,9 @@
- local _fname _fcont
- while read _fname || [ -n "$_fname" ]; do
- case "$_fname" in
-- *.ko) _fcont="$(< $_fname)" ;;
-- *.ko.gz) _fcont="$(gzip -dc $_fname)" ;;
-- *.ko.xz) _fcont="$(xz -dc $_fname)" ;;
-+ *.ko) _fcont="$(< $_fname tr -d \\0)" ;;
-+ *.ko.gz) _fcont="$(gzip -dc $_fname | tr -d \\0)" ;;
-+ *.ko.xz) _fcont="$(xz -dc $_fname | tr -d \\0)" ;;
- esac
- [[ $_fcont =~ $_drm_drivers
- && ! $_fcont =~ iw_handler_get_spy ]] \
-diff -urN dracut-044.orig/modules.d/90kernel-modules/module-setup.sh dracut-044/modules.d/90kernel-modules/module-setup.sh
---- dracut-044.orig/modules.d/90kernel-modules/module-setup.sh 2015-11-25 16:22:28.000000000 +0300
-+++ dracut-044/modules.d/90kernel-modules/module-setup.sh 2016-09-28 02:49:11.725390294 +0300
-@@ -10,9 +10,9 @@
- function bmf1() {
- local _f
- while read _f || [ -n "$_f" ]; do case "$_f" in
-- *.ko) [[ $(< $_f) =~ $_blockfuncs ]] && echo "$_f" ;;
-- *.ko.gz) [[ $(gzip -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;;
-- *.ko.xz) [[ $(xz -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;;
-+ *.ko) [[ $(< $_f tr -d \\0) =~ $_blockfuncs ]] && echo "$_f" ;;
-+ *.ko.gz) [[ $(gzip -dc <$_f | tr -d \\0) =~ $_blockfuncs ]] && echo "$_f" ;;
-+ *.ko.xz) [[ $(xz -dc <$_f | tr -d \\0) =~ $_blockfuncs ]] && echo "$_f" ;;
- esac
- done
- return 0
-diff -urN dracut-044.orig/modules.d/90kernel-network-modules/module-setup.sh dracut-044/modules.d/90kernel-network-modules/module-setup.sh
---- dracut-044.orig/modules.d/90kernel-network-modules/module-setup.sh 2015-11-25 16:22:28.000000000 +0300
-+++ dracut-044/modules.d/90kernel-network-modules/module-setup.sh 2016-09-28 02:51:08.202422231 +0300
-@@ -26,9 +26,9 @@
- while read _fname; do
- [[ $_fname =~ $_unwanted_drivers ]] && continue
- case "$_fname" in
-- *.ko) _fcont="$(< $_fname)" ;;
-- *.ko.gz) _fcont="$(gzip -dc $_fname)" ;;
-- *.ko.xz) _fcont="$(xz -dc $_fname)" ;;
-+ *.ko) _fcont="$(< $_fname tr -d \\0)" ;;
-+ *.ko.gz) _fcont="$(gzip -dc $_fname | tr -d \\0)" ;;
-+ *.ko.xz) _fcont="$(xz -dc $_fname | tr -d \\0)" ;;
- esac
- [[ $_fcont =~ $_net_drivers
- && ! $_fcont =~ iw_handler_get_spy ]] \
-diff -urN dracut-044.orig/modules.d/90multipath/module-setup.sh dracut-044/modules.d/90multipath/module-setup.sh
---- dracut-044.orig/modules.d/90multipath/module-setup.sh 2015-11-25 16:22:28.000000000 +0300
-+++ dracut-044/modules.d/90multipath/module-setup.sh 2016-09-28 02:49:11.726390235 +0300
-@@ -58,9 +58,9 @@
- local _f
- while read _f || [ -n "$_f" ]; do
- case "$_f" in
-- *.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;;
-- *.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
-- *.ko.xz) [[ $(xz -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko) [[ $(< $_f tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko.gz) [[ $(gzip -dc <$_f | tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko.xz) [[ $(xz -dc <$_f | tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
- esac
- done
- return 0
-diff -urN dracut-044.orig/modules.d/95iscsi/module-setup.sh dracut-044/modules.d/95iscsi/module-setup.sh
---- dracut-044.orig/modules.d/95iscsi/module-setup.sh 2015-11-25 16:22:28.000000000 +0300
-+++ dracut-044/modules.d/95iscsi/module-setup.sh 2016-09-28 02:49:11.726390235 +0300
-@@ -168,9 +168,9 @@
- local _f
- while read _f || [ -n "$_f" ]; do
- case "$_f" in
-- *.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;;
-- *.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
-- *.ko.xz) [[ $(xz -dc <$_f) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko) [[ $(< $_f tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko.gz) [[ $(gzip -dc <$_f | tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
-+ *.ko.xz) [[ $(xz -dc <$_f | tr -d \\0) =~ $_funcs ]] && echo "$_f" ;;
- esac
- done
- return 0
diff --git a/sys-kernel/dracut/files/dracut-044-ext4-and-f2fs-need-crc32X-too.patch b/sys-kernel/dracut/files/dracut-044-ext4-and-f2fs-need-crc32X-too.patch
deleted file mode 100644
index dad12c9b..00000000
--- a/sys-kernel/dracut/files/dracut-044-ext4-and-f2fs-need-crc32X-too.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur dracut-044/modules.d/99fs-lib/module-setup.sh dracut-044-p/modules.d/99fs-lib/module-setup.sh
---- dracut-044/modules.d/99fs-lib/module-setup.sh 2015-11-25 14:22:28.000000000 +0100
-+++ dracut-044-p/modules.d/99fs-lib/module-setup.sh 2018-04-26 16:30:19.960345610 +0200
-@@ -38,20 +38,23 @@
- include_fs_helper_modules() {
- local dev=$1 fs=$2
- case "$fs" in
-- xfs|btrfs)
-+ xfs|btrfs|ext4)
- instmods crc32c
- ;;
-+ f2fs)
-+ instmods crc32
-+ ;;
- esac
- }
-
- # called by dracut
- installkernel() {
-- # xfs and btrfs needs crc32c...
-+ # xfs, btrfs , ext4, f2fs needs crc32c / crc32
- if [[ $hostonly ]]; then
- for_each_host_dev_fs include_fs_helper_modules
- :
- else
-- instmods crc32c
-+ instmods crc32c crc32
- fi
- }
-
diff --git a/sys-kernel/dracut/files/dracut-044-preserve-xattrs-when-copying.patch b/sys-kernel/dracut/files/dracut-044-preserve-xattrs-when-copying.patch
deleted file mode 100644
index 3146d848..00000000
--- a/sys-kernel/dracut/files/dracut-044-preserve-xattrs-when-copying.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 61c761bc2c35fb244d46fbbde97161f5927071dc Mon Sep 17 00:00:00 2001
-From: Stefan Berger <stefanb@us.ibm.com>
-Date: Tue, 25 Oct 2016 15:09:49 -0400
-Subject: [PATCH] dracut-install: preserve extended attributes when copying
- files
-
-Preserve extended attributes when copying files using dracut-install.
-
-The copying of extended attributes avoids file execution denials when
-the Linux Integrity Measurement's Appraisal mode is active. In that mode
-executables need their file signatures copied. In particular, this patch
-solves the problem that dependent libaries are not included in the
-initramfs since the copied programs could not be executed due to missing
-signatures. The following audit record shows the type of failure that
-is now prevented:
-
-type=INTEGRITY_DATA msg=audit(1477409025.492:30065): pid=922 uid=0
- auid=4294967295 ses=4294967295
- subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
- op="appraise_data" cause="IMA-signature-required"
- comm="ld-linux-x86-64"
- name="/var/tmp/dracut.R6ySa4/initramfs/usr/bin/journalctl"
- dev="dm-0" ino=37136 res=0
-
-Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
----
- install/dracut-install.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/install/dracut-install.c b/install/dracut-install.c
-index fe30bba..c0f1c17 100644
---- a/install/dracut-install.c
-+++ b/install/dracut-install.c
-@@ -294,7 +294,7 @@ static int cp(const char *src, const char *dst)
- normal_copy:
- pid = fork();
- if (pid == 0) {
-- execlp("cp", "cp", "--reflink=auto", "--sparse=auto", "--preserve=mode,timestamps", "-fL", src, dst,
-+ execlp("cp", "cp", "--reflink=auto", "--sparse=auto", "--preserve=mode,timestamps,xattr", "-fL", src, dst,
- NULL);
- _exit(EXIT_FAILURE);
- }
-@@ -302,7 +302,7 @@ static int cp(const char *src, const char *dst)
- while (waitpid(pid, &ret, 0) < 0) {
- if (errno != EINTR) {
- ret = -1;
-- log_error("Failed: cp --reflink=auto --sparse=auto --preserve=mode,timestamps -fL %s %s", src,
-+ log_error("Failed: cp --reflink=auto --sparse=auto --preserve=mode,timestamps,xattr -fL %s %s", src,
- dst);
- break;
- }