summaryrefslogtreecommitdiff
path: root/sys-kernel/dracut
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-01-22 10:09:44 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-01-22 10:09:44 +0000
commit09351e78166b5e864197c4456ebae3f89dd0bed9 (patch)
tree41a96399f56ed3aa399006871bfce4430db84aa2 /sys-kernel/dracut
parentc8a77dfe4d3d307c1d5dd2650b7297447d8b609d (diff)
gentoo resync : 22.01.2019
Diffstat (limited to 'sys-kernel/dracut')
-rw-r--r--sys-kernel/dracut/Manifest6
-rw-r--r--sys-kernel/dracut/dracut-049.ebuild158
-rw-r--r--sys-kernel/dracut/dracut-9999.ebuild36
-rw-r--r--sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch34
-rw-r--r--sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch89
5 files changed, 307 insertions, 16 deletions
diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest
index cfe86a3e3fda..f8925705715b 100644
--- a/sys-kernel/dracut/Manifest
+++ b/sys-kernel/dracut/Manifest
@@ -6,6 +6,8 @@ AUX 046-amd-microcode.patch 1013 BLAKE2B be9f9b545e5d68285f2b4e3a4ccee3e39c0c413
AUX 047-all-fix-issues-found-by-shellcheck.patch 3265 BLAKE2B 0f7e227311c96ca204d5b23093003b38c120dfe208482e421f7104fdfb29beb925239e007d372ba1e7b9e75ad395f2a4b59a5a0dbed02389398f678f480fb45b SHA512 21fbcb0558a543402325f3b356d08ce4747c82e337a3f196a1ded20b633bcf79ab14323858386a5c35ef4857f8795f14b0df874596ecb1a4f8aed90160405dc8
AUX 047-plymouth-fix-detection-of-plymouth-directory.patch 1055 BLAKE2B 285e008dcbada06a475f1cbfe67602f046c7bb354b812ea614d99a921d40d09d099f3329cbc348b8bc4dd17bbbdcc0da986f0de5cce7f07464d2318dd9f0d719 SHA512 90372cd630903981528acd6aec1f1051e94ca2a0e53a834583faf6bf244aa7967f590f9bc38db3233e78bfd859388c011484a624d7f092c863755f73d6285b21
AUX 048-dracut-install-simplify-ldd-parsing-logic.patch 1488 BLAKE2B 3a76ff666482b17adb49e3e9fb6483f7545136df33624d5bd76d472328c7a68532fbb1bace2988b62f279b0dba7d3c53e023146711474ef8497502aee8042a41 SHA512 09992afca26026b8f77de371486c655feabb1626120a571cbf24e1a230725c7debe56c9e47eb365aa200cf7aab15798ecc57e9d764887e42cee8d3c59fb341c9
+AUX 049-40network-Don-t-include-40network-by-default.patch 967 BLAKE2B 43c3942ae5199457f0cc394cb81bef58852a42ca7a25fb198001882f52089132780bbd0d8782d8ca383e1d19be210bd5fc14730b1f56b8053c52a832f2c3fd93 SHA512 a18c5b3b28915deff97cbfa151e67c58942f3cc407b101ca3ae16e51114279c1a05475461c9748b3debd4e05b609e02f431d2dcf4ca4fcb18d4f806d42cdaade
+AUX 049-remove-bashism-in-various-boot-scripts.patch 3423 BLAKE2B a2a5946b53eee63492f5e407fc18541e8ccd341c4ce607daf2bde81bf061328c7cfbdf5f9a2c9b09f3e19c23e6e746d8383a7c78dcfa1aaed78ff252fcaef520 SHA512 a381394c9aed25abe73adb58d07fd26ab19a99338fa9d60a5a4642b8f13a88d1b209ae9deffdc527beccd1bdbd93754c3e5f2687c9f9a6b6430481f08fae201f
AUX dracut-044-bash-4.4.patch 5036 BLAKE2B faf944f4405b560d7f43ce2fd0595b223f1c91eed11422b19a5b61b710e69c10b855d3fb99fd28f204d8c31c49c272259704e148fcb794bbd8309b3779a62b4f SHA512 68522464fb446175f967c8453e8427f961e97522661a22a7c302a90ff716ab75b0cfc32f568a06f1e1821ba7115d6d2f48b6ded9ed65b30806d4d505a0903279
AUX dracut-044-preserve-xattrs-when-copying.patch 2354 BLAKE2B a7195fdf0663e71b5e5eb2f8c9d971f5bd2bdc8b8a49399d836efc8efed2547118399ae7780c93014659d88c0359e7336f2e2a345ce009b5f872468d0412aaf9 SHA512 b15babf62a4ece46c8b55a2ac21c3284665da8c38c10fc1209c08605b778689cf80108b8baa0ce66eee2218d6975cc5b9401d8a70326ddb6f731c55373e52a02
DIST dracut-044.tar.xz 280004 BLAKE2B 5b9603eb769b542e2d56fae4d0f0fe250e7e60eb9c85f9c7b7a472b9d889a9f323b3ba1cbbeb1d5de10507498542275cd4430695cc8b48426b42c03d0672ea87 SHA512 bc788076e425b223d98cf0e0b15ff57d75d423991d7a67fb564a2857c38d5c3a21d846d2ca4523f9d4b0128bb981d09b5c26031435c5fc5e30f53080bca19b3d
@@ -13,6 +15,7 @@ DIST dracut-045.tar.xz 292652 BLAKE2B 0e7c57ddca6757d59823afdc4ff23dcb06cc9cec31
DIST dracut-046.tar.xz 299520 BLAKE2B 1e2d848aa0db0e90734d8c60610a60b1f0ff67f8c4d4f9933bec0bc1290071b1b1ee3cdb6c3da5b82d8f6d4cc7561ee17d38685659a4a6ee48a9085e388dfced SHA512 75cefc184960024ef32f7bb5a0fe060e9c7d82dbfd0fe247d54b585e2ebbf0f8af5d5dc1be7e5e8cf2c3bc27b3293842c6361ae62d047289d0c59d7d40b09122
DIST dracut-047.tar.xz 305836 BLAKE2B 18333ae1e24cfbbb6a152bf9ba2c48884821f6a506344259ba56c581a9f3efac7b4c88e8ca149ef1f83347a5e4d59acba61e42b8e0ab3a9e9beb8684d5db28b0 SHA512 03369726b6c2b682d0c9dead7b7dbd1c3989aaf2b4a561015634d33a94e5230d03cb634c3890191b19dd8c1c83389533ae1a46d45d2024ba885e0d2d46c5d035
DIST dracut-048.tar.xz 308484 BLAKE2B b19c8122034a8b40cbc9d09245730900b59691c336f1d231e768786ad64068e0a8daf57ae9a4182ab50d9e1c683c9b7dcac354eb26d8a60f061db78121bc11c7 SHA512 97fcfd5d314ef40687c245d95d2f1d0f3f9ff0472e66b6e6324bf9bd6b98186104f9d71fd9af344126d6ea9fa47b744d52831a374225633225f6f17fb15c04e0
+DIST dracut-049.tar.gz 376857 BLAKE2B e50084164e26aae6de812345cc76782435ec84951b44eea454355d0c65fe84fdd0858733de534bdf018bdfd92922f0be30b74d74be329a918e55d96c5e4d4fb6 SHA512 51489570856538588868a66c7bcc8a3728574592529905484526c523398dc1b8f1416e6b264780303acd08d818417a9668b76f1d64d3194432b5af79dc15c9f7
EBUILD dracut-044-r1.ebuild 7572 BLAKE2B 7423dfc6afbd25e7204571256af4bd9d58a6940dbb4b850b575e28562dc77e112af7304880637a8b7e04ec6feb8944fd66559016678913b158ac70b15ae342d7 SHA512 692d82df9f6903c67d46b58f8346e71df531816124feb08dfeb1b21e72959978292219b07c354fdea9b53ef4cfda29ca326f0fcb91e31931522a0f8e6edf07a9
EBUILD dracut-044-r3.ebuild 6830 BLAKE2B f8c788af4032f80d9783ae185c90a18ecf5464f148f04bbc4752dfaca5c61a4cb7677767f8c98168550a30fe3692a7b60d33b528121c57c9f40db41623e72121 SHA512 30c24288ee9a08d5ba872e06199a5478c57fddc2987a9f48d5fffffb85ffcdb7970c7fa13a27a64ff318fecf69eaef0b10d701d434877938a190bed648327725
EBUILD dracut-045-r2.ebuild 4682 BLAKE2B 58b7ae444da1fc1f9c414c7b7af4ba295af646e31e52f1c18bc371ee9eb00830cd23b080632f15920139b2184edd4f1f808509accdbd8cb4135a7f2732f7bbd8 SHA512 f19d68207ab99cdeaa2ed6c846a7660944f6142aea3939711c74cd3a7dc6a04d2088c816e141869da5e115818591129702249afcad6a417ffe5c1e3d166d357e
@@ -20,5 +23,6 @@ EBUILD dracut-046-r1.ebuild 4721 BLAKE2B 88e0b0fad86e6cd97ed38ba86704c483d3685f2
EBUILD dracut-047-r1.ebuild 4650 BLAKE2B 6847c8bc55aac1ccabaf258577a0cd07d749a54c27db9338d845db1905974b5a419f88b2f76c5769d5765e01a714c4de3bebf953625a4473f0cb0373d2e157af SHA512 c20892b9c02e27c9c3af59abef2adb90d3410fe889f82e1a74855ff3e87d3865483728d53a9898c82fac8824409ac3a1c65f23f53c0e63491a7cbcc5855b64f4
EBUILD dracut-048-r1.ebuild 4547 BLAKE2B 891990985f6b459377f94811840774b86e01225b6996055ad050e7bc71331f7d10494f7fc514cf13df68dc3441b4726023bc871e8b50558c88db528289158c96 SHA512 3576ec29ad05c2bec9406b21dba1e207491a2cb9e7d054d522affc4501020280e2fe3357f6d283ea4c2cd9770ec4d5e2fa6d73bae86597d736da5db1f3e0c510
EBUILD dracut-048.ebuild 4467 BLAKE2B f6c816fac85d808363953c15cc73a7d6da99934129de297258114c6117a711b58aea818d568604215b3bfc7bf86934130c358701bb2380fd559d2bcd16fe69dc SHA512 11062f8ae2506bd54f6bb784c6c2be6416748fcd84a33554e4b58d66b87aea2b3324c2216a01a211e9bbd207e7e4065537cbcc5bd612b6aac46e2e0912ecec77
-EBUILD dracut-9999.ebuild 4615 BLAKE2B 23b0c5d8e6dc0ba223fcd16975f84e2d599e26a794e0ee822f7305fef72885f1fdfaf7d7bbf05fc79575c5a1a6960d0e6e59f2fe9ef8a6a6ef93e23c559c226b SHA512 2ec1162a3b753e2381d0fc9f3ad33eb60328ea235cc5a95d781098d2012d4cec927d2bdd73a112d9c86601a81a7cc9eb497090aa3c8daf3724100624934ff8f3
+EBUILD dracut-049.ebuild 4808 BLAKE2B 70418167cc13d508df24865d2c598dd208ce92963acc0c67b3106e24f3d97c8d82766cec91bbb475649b4003a2590f2279c663ff5b4b8785c3618c9bdca21f09 SHA512 cc9568f59f5d5be6605ff679cbaa55521beab37b7c9438fc096e4ceef7f194c6b21f35f1da177de17816eb7a1835bc27040b3ae21b3b31558e2606e7495e817b
+EBUILD dracut-9999.ebuild 4783 BLAKE2B 977f72c78abe1e4e7275ab877b88c62349daecf529f4512b65296321f83a275c87398e2815402e8cee8b817afed2c1e54fe0f548d3c53d665f277ad352f61a6c SHA512 7d5cbd7ca1ee591e9521d0242286e983e40c4579c8aaa1e1a4be0fbb50ea044f90c32a06c8df3a1f131d8ff4c70804475c21ec1d64904587ca2d66f36fc90322
MISC metadata.xml 725 BLAKE2B 475d51f4e2bebf318ef94ea1fec40a34bcf04b4f0c69e051c8840e0965a92fd9861c5aa8acfb2ccb5a4cf354665ab3efc6adfdf7d0191325c1f798ea5e49594e SHA512 b708d0eb6a792d5ba3495f321af5e10672af3354f1f42c60b175b7fb48ae836e24db7768511c44cbb0a949c1cca75948890d3b32904bbe47e50d9c43d71787fb
diff --git a/sys-kernel/dracut/dracut-049.ebuild b/sys-kernel/dracut/dracut-049.ebuild
new file mode 100644
index 000000000000..dda60561bf73
--- /dev/null
+++ b/sys-kernel/dracut/dracut-049.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 eutils linux-info systemd toolchain-funcs
+
+DESCRIPTION="Generic initramfs generation tool"
+HOMEPAGE="https://dracut.wiki.kernel.org"
+SRC_URI="https://github.com/dracutdevs/dracut/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="selinux"
+
+# Tests need root privileges, bug #298014
+RESTRICT="test"
+
+RDEPEND="
+ app-arch/cpio
+ >=app-shells/bash-4.0:0
+ sys-apps/coreutils[xattr(-)]
+ >=sys-apps/kmod-23[tools]
+ || (
+ >=sys-apps/sysvinit-2.87-r3
+ sys-apps/systemd[sysv-utils]
+ )
+ >=sys-apps/util-linux-2.21
+ virtual/pkgconfig
+ virtual/udev
+
+ selinux? (
+ sec-policy/selinux-dracut
+ sys-libs/libselinux
+ sys-libs/libsepol
+ )
+ "
+DEPEND=">=sys-apps/kmod-23"
+
+BDEPEND="
+ app-text/asciidoc
+ app-text/docbook-xml-dtd:4.5
+ >=app-text/docbook-xsl-stylesheets-1.75.2
+ >=dev-libs/libxslt-1.1.26
+ virtual/pkgconfig
+ "
+
+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}"/049-40network-Don-t-include-40network-by-default.patch
+ "${FILESDIR}"/049-remove-bashism-in-various-boot-scripts.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
+
+ # Source tarball from github doesn't include this file
+ echo "DRACUT_VERSION=${PV}" > dracut-version.sh || 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/networkmanager
+ optfeature "Legacy 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 rsyslog" app-admin/rsyslog
+}
diff --git a/sys-kernel/dracut/dracut-9999.ebuild b/sys-kernel/dracut/dracut-9999.ebuild
index a686d0637f20..7ccd4d0b0e56 100644
--- a/sys-kernel/dracut/dracut-9999.ebuild
+++ b/sys-kernel/dracut/dracut-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit bash-completion-r1 eutils linux-info systemd toolchain-funcs
@@ -10,8 +10,8 @@ if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/dracutdevs/dracut"
else
[[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~alpha amd64 ~arm ia64 ~mips ~ppc ~ppc64 sparc x86"
- SRC_URI="mirror://kernel/linux/utils/boot/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+ SRC_URI="https://github.com/dracutdevs/dracut/archive/${PV}.tar.gz -> ${P}.tar.gz"
fi
DESCRIPTION="Generic initramfs generation tool"
@@ -19,37 +19,38 @@ HOMEPAGE="https://dracut.wiki.kernel.org"
LICENSE="GPL-2"
SLOT="0"
-IUSE="debug selinux"
+IUSE="selinux"
# Tests need root privileges, bug #298014
RESTRICT="test"
-COMMON_DEPEND=">=sys-apps/kmod-23[tools]
- virtual/pkgconfig
- virtual/udev
- "
-RDEPEND="${COMMON_DEPEND}
+RDEPEND="
app-arch/cpio
>=app-shells/bash-4.0:0
sys-apps/coreutils[xattr(-)]
+ >=sys-apps/kmod-23[tools]
|| (
>=sys-apps/sysvinit-2.87-r3
sys-apps/systemd[sysv-utils]
)
>=sys-apps/util-linux-2.21
+ virtual/pkgconfig
+ virtual/udev
- debug? ( dev-util/strace )
selinux? (
sec-policy/selinux-dracut
sys-libs/libselinux
sys-libs/libsepol
)
"
-DEPEND="${COMMON_DEPEND}
+DEPEND=">=sys-apps/kmod-23"
+
+BDEPEND="
app-text/asciidoc
app-text/docbook-xml-dtd:4.5
>=app-text/docbook-xsl-stylesheets-1.75.2
>=dev-libs/libxslt-1.1.26
+ virtual/pkgconfig
"
DOCS=( AUTHORS HACKING NEWS README README.generic README.kernel README.modules
@@ -72,6 +73,11 @@ src_configure() {
echo ./configure "${myconf[@]}"
./configure "${myconf[@]}" || die
+
+ if [[ ${PV} != 9999 ]] ; then
+ # Source tarball from github doesn't include this file
+ echo "DRACUT_VERSION=${PV}" > dracut-version.sh || die
+ fi
}
src_install() {
@@ -126,7 +132,8 @@ pkg_postinst() {
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]" \
+ 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 \
"Measure performance of the boot process for later visualisation" \
@@ -153,6 +160,5 @@ pkg_postinst() {
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
+ optfeature "Enable logging with rsyslog" app-admin/rsyslog
}
diff --git a/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch b/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch
new file mode 100644
index 000000000000..0d537941f1d8
--- /dev/null
+++ b/sys-kernel/dracut/files/049-40network-Don-t-include-40network-by-default.patch
@@ -0,0 +1,34 @@
+From 83cbc06ab91288e2d931b4f36935bfdb79a99b0e Mon Sep 17 00:00:00 2001
+From: Kairui Song <kasong@redhat.com>
+Date: Fri, 12 Oct 2018 13:07:13 +0800
+Subject: [PATCH] 40network: Don't include 40network by default
+To: <initramfs@vger.kernel.org>
+
+commit 7347391 ('network-legacy: split off from network module')
+splitted network function to network-legacy and removed check() function
+of 40network. This caused 40network to be included even if network is
+not needed.
+
+Signed-off-by: Kairui Song <kasong@redhat.com>
+---
+ modules.d/40network/module-setup.sh | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
+index 57c0a45e..e8541636 100755
+--- a/modules.d/40network/module-setup.sh
++++ b/modules.d/40network/module-setup.sh
+@@ -1,5 +1,10 @@
+ #!/bin/bash
+
++# called by dracut
++check() {
++ return 255
++}
++
+ # called by dracut
+ depends() {
+ echo -n "kernel-network-modules "
+--
+2.19.2
+
diff --git a/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch b/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch
new file mode 100644
index 000000000000..93e3ed5bed87
--- /dev/null
+++ b/sys-kernel/dracut/files/049-remove-bashism-in-various-boot-scripts.patch
@@ -0,0 +1,89 @@
+From 09d2a1605b1b2663e3c25f1d9950b23a2bf4ad89 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
+ <congdanhqx@gmail.com>
+Date: Sun, 6 Jan 2019 11:48:02 +0700
+Subject: [PATCH] remove bashism in various boot scripts
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+To: <initramfs@vger.kernel.org>
+
+When using dash as initramfs shell, the boot process is broken.
+
+Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
+---
+ modules.d/90crypt/crypt-lib.sh | 2 +-
+ modules.d/90crypt/parse-keydev.sh | 2 +-
+ modules.d/91crypt-gpg/crypt-gpg-lib.sh | 2 +-
+ modules.d/95dcssblk/parse-dcssblk.sh | 2 +-
+ modules.d/98syslog/rsyslogd-start.sh | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/modules.d/90crypt/crypt-lib.sh b/modules.d/90crypt/crypt-lib.sh
+index bbf485e0..688ea251 100755
+--- a/modules.d/90crypt/crypt-lib.sh
++++ b/modules.d/90crypt/crypt-lib.sh
+@@ -191,7 +191,7 @@ readkey() {
+ local device="$3"
+
+ # No mounting needed if the keyfile resides inside the initrd
+- if [ "/" == "$keydev" ]; then
++ if [ "/" = "$keydev" ]; then
+ local mntp=/
+ else
+ # This creates a unique single mountpoint for *, or several for explicitly
+diff --git a/modules.d/90crypt/parse-keydev.sh b/modules.d/90crypt/parse-keydev.sh
+index a45b2fb5..04813414 100755
+--- a/modules.d/90crypt/parse-keydev.sh
++++ b/modules.d/90crypt/parse-keydev.sh
+@@ -18,7 +18,7 @@ if getargbool 1 rd.luks -n rd_NO_LUKS && \
+ fi
+
+ # A keydev of '/' is treated as the initrd itself
+- if [ "/" == "$keydev" ]; then
++ if [ "/" = "$keydev" ]; then
+ [ -z "$luksdev" ] && luksdev='*'
+ echo "$luksdev:$keydev:$keypath" >> /tmp/luks.keys
+ continue
+diff --git a/modules.d/91crypt-gpg/crypt-gpg-lib.sh b/modules.d/91crypt-gpg/crypt-gpg-lib.sh
+index b85ed2b8..c051b430 100755
+--- a/modules.d/91crypt-gpg/crypt-gpg-lib.sh
++++ b/modules.d/91crypt-gpg/crypt-gpg-lib.sh
+@@ -53,7 +53,7 @@ gpg_decrypt() {
+ --tries 3 --tty-echo-off
+
+ # Clean up the smartcard gpg-agent
+- if [ "${useSmartcard}" == "1" ]; then
++ if [ "${useSmartcard}" = "1" ]; then
+ GNUPGHOME="$gpghome" gpg-connect-agent 1>/dev/null killagent /bye
+ fi
+
+diff --git a/modules.d/95dcssblk/parse-dcssblk.sh b/modules.d/95dcssblk/parse-dcssblk.sh
+index 8f174408..27ac1d8d 100644
+--- a/modules.d/95dcssblk/parse-dcssblk.sh
++++ b/modules.d/95dcssblk/parse-dcssblk.sh
+@@ -2,7 +2,7 @@
+ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+ # ex: ts=8 sw=4 sts=4 et filetype=sh
+ dcssblk_arg=$(getarg rd.dcssblk=)
+-if [ $? == 0 ];then
++if [ $? = 0 ];then
+ info "Loading dcssblk segments=$dcssblk_arg"
+ modprobe dcssblk segments=$dcssblk_arg
+ fi
+diff --git a/modules.d/98syslog/rsyslogd-start.sh b/modules.d/98syslog/rsyslogd-start.sh
+index c64f2121..86ad50ea 100755
+--- a/modules.d/98syslog/rsyslogd-start.sh
++++ b/modules.d/98syslog/rsyslogd-start.sh
+@@ -38,7 +38,7 @@ rsyslog_config() {
+ [ -f /tmp/syslog.conf ] && read conf < /tmp/syslog.conf
+ [ -z "$conf" ] && conf="/etc/rsyslog.conf" && echo "$conf" > /tmp/syslog.conf
+
+-if [ $type == "rsyslogd" ]; then
++if [ $type = "rsyslogd" ]; then
+ template=/etc/templates/rsyslog.conf
+ if [ -n "$server" ]; then
+ rsyslog_config "$server" "$template" "$filters" > $conf
+--
+2.19.2
+