diff options
author | Amadeusz Żołnowski <aidecoe@gentoo.org> | 2014-07-21 19:13:54 +0000 |
---|---|---|
committer | Amadeusz Żołnowski <aidecoe@gentoo.org> | 2014-07-21 19:13:54 +0000 |
commit | 7c925d8d8115092635ee4fbd64de5f4d16f13064 (patch) | |
tree | dd14bfe39ca9a609513611add2e830c3ff366505 /sys-kernel/dracut | |
parent | Remove virtual/perl-PodParser (moved to Pod-Parser) (diff) | |
download | historical-7c925d8d8115092635ee4fbd64de5f4d16f13064.tar.gz historical-7c925d8d8115092635ee4fbd64de5f4d16f13064.tar.bz2 historical-7c925d8d8115092635ee4fbd64de5f4d16f13064.zip |
Fix in hostonly inst functions.
Package-Manager: portage-2.2.10/cvs/Linux x86_64
Manifest-Sign-Key: 0xF0134531E1DBFAB5
Diffstat (limited to 'sys-kernel/dracut')
-rw-r--r-- | sys-kernel/dracut/ChangeLog | 8 | ||||
-rw-r--r-- | sys-kernel/dracut/Manifest | 18 | ||||
-rw-r--r-- | sys-kernel/dracut/dracut-038-r2.ebuild | 265 | ||||
-rw-r--r-- | sys-kernel/dracut/files/038-0008-dracut-functions.sh-fix-inst-functions.patch | 97 |
4 files changed, 379 insertions, 9 deletions
diff --git a/sys-kernel/dracut/ChangeLog b/sys-kernel/dracut/ChangeLog index 799b5a930398..06510786d6da 100644 --- a/sys-kernel/dracut/ChangeLog +++ b/sys-kernel/dracut/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-kernel/dracut # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.172 2014/07/21 08:04:50 aidecoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.173 2014/07/21 19:13:50 aidecoe Exp $ + +*dracut-038-r2 (21 Jul 2014) + + 21 Jul 2014; Amadeusz Żołnowski <aidecoe@gentoo.org> +dracut-038-r2.ebuild, + +files/038-0008-dracut-functions.sh-fix-inst-functions.patch: + Fix in hostonly inst functions. 21 Jul 2014; Amadeusz Żołnowski <aidecoe@gentoo.org> -dracut-038.ebuild: Removed old revision of 038. diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest index 4dd1f8b866f1..12c82f727baf 100644 --- a/sys-kernel/dracut/Manifest +++ b/sys-kernel/dracut/Manifest @@ -35,6 +35,7 @@ AUX 038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch 2410 SHA256 ddb9df60e1 AUX 038-0004-Install-dracut-install-into-libexec-di.patch 2581 SHA256 837b4ed184742b592eb6bd156890d9cbba4b6b9e3e36c0f943c89509e5e1e405 SHA512 f2303b1c57c8ab4e39bf759151cc44fcfe9aaccb8aa123704078c49bceff6aef7b2eb2f567f7295fe0db89ccfa78f087422d6e65433dd25347e82945a391a689 WHIRLPOOL 0b03b7569df09884660b415370d6085062f53a7ee7f673423ddb797c73d9bc5ffbfa1503374b1c0aa428cda3715b50a12a8e932d9e30ed5a299bd13d090837eb AUX 038-0005-modsign-do-not-hardcode-path-to-keyctl.patch 784 SHA256 85867e0aa30d6137ed4585cf88e5a7816b338a8d37d27f716593f2ccfd9cc751 SHA512 fb20595b531373b9d481b5ece1dc2abac7eec2633891507974051d95c79b55fcd6ef9931fd5e924c7ace52cfc50b62a8ee0516980d69766cdd5a1bfaac2733c2 WHIRLPOOL 4778ceefd135680c58ae14a7350eb886dcecb9133607d66ec12ce314d3ffef68972b7e6fa7b3ffbacd76825ecd75f83926a001df713210c5abcbb4f4ae115f3c AUX 038-0006-inst_simple-doesn-t-take-H-parameter.patch 1478 SHA256 ebff899fb89677db767dec09d00a8e613dd77ccff45a365a01c3e6171e7de451 SHA512 bbe5d877fbf1077c4d0a5e2cfc170a985aa516e571ac16f528817a6c5f255c045ee356d6deb05547bee31be19225c087b7f6143b0478f5ae93f4432ac9a20bb4 WHIRLPOOL f2a16ff105662b9a6c1b153a075f2e5fb690e75cc86daf61ddeecb5bf04c5679b732de486de6653d2722fad4e42032096256a2da2eb1b9f90518e70d12a34270 +AUX 038-0008-dracut-functions.sh-fix-inst-functions.patch 4194 SHA256 b9f041148c5530454f387ab4c95fe92042883b30a0b0016a7775932143750d68 SHA512 219c5878898740de83cb522079bc9cfcd61e0252e955cafb3804d54143f3db6415eac37ff5f45583c4e40abcded9b09d9461715bef9c5ecf79db38ebfa1fa982 WHIRLPOOL fe0df29324e413dce16036323bc072ff5c310b432c5d9191cc5e0e695fdc774615acd0485141c606713504588ca8efd1aa8ccf41043feb941466339fedd9e838 DIST 034-0010-module-setup.sh-add-comments.patch.bz2 6424 SHA256 fbcb940c83e362cc93a78c5be28ffd7c794a331f992498e451d69c1830f054fa SHA512 e5e41b8696716c5284ea981ae85dbe688c5c31330e400c79f4ba46890939dffdd7744e4a85d27d074987a8db65114332171af0a5471338e3e4bed19d54edc6fd WHIRLPOOL c5d29ef2f20aa752e57180be35a2014c214a25e4e49d3f623d05cd6ef1debd2cec38d24453ecb0c004cdbb52239f0d541ddc9df065ab84fb7d62c30594704347 DIST dracut-034.tar.bz2 277692 SHA256 48c7fd57e287d4f34dfff5b5ead14a4511926858f1e2ffaa40b762f257516d7f SHA512 ae06510668e63550d4d6b509b314c7668880387cfe696fc7f21cf04cc488be743440871dbd1fcf4e8314f9aa9e61ee3e78a42a75631123c420767677c6744e34 WHIRLPOOL 0412dea239fbd82d79e873869211ea31b7495dac74d7079e8aa52dd8d2484986fd0a0831aefffe29cfe5acfbf64fa01a9a1fa742192a28276a8671b663a69e13 DIST dracut-036.tar.xz 255192 SHA256 6dd97c4323ec8bd87b24a95349692fb6c6ca2d1b3528793ef117820049b6fcd3 SHA512 e55448701ef4b0c8969d4d64239a2a7df3d7b06f4457838d2b2139e58b754822654a1b8cfc7d6dbcd7a79dbc14e75366a39e21104b4aeda20c7bf34734668344 WHIRLPOOL ddbe88cb6b333586a71eeed98871066bc79208d2ba8d88dfb42245aca6bd15d6c0c436948569fc8c18703f9d66ad9918bb1e73e050ce6c807fae833148ead218 @@ -44,16 +45,17 @@ EBUILD dracut-034-r4.ebuild 10416 SHA256 79ce6e1d4d6a5ee546309b518e8b92446d3da60 EBUILD dracut-036-r4.ebuild 7723 SHA256 8a1165848519c870ed145b6554bc679fe1d9cb19a62df1111255b229246c2391 SHA512 97c0be10312ff68ebfce3f17dbfa02e5b3b4fcb51acdab6362e6329d2b93f60f87d81bb10f00377aa372d9b1b9783c705f8ce3187248a6e76571e143ed3c326d WHIRLPOOL 07044379e3a84318a672a8e7c84b4266bdc437030bdc7756726ea9260c6565f5b3159643ec488874adf530b7c8e2868b81691fafba49bbe79087936cdfa110fc EBUILD dracut-037-r3.ebuild 7957 SHA256 e0e9a52924d423202d2393a42a68eb31c3d488c8b4bb48b50b3727a30e796106 SHA512 579b1fe807bd3d48b2a7c315a86de930065045351ab28f60f12810d02711ffd26152d5c734f695e4b2ad00c2c065ae4ce81312d28441e51933ee1993ba94ef2d WHIRLPOOL 316d2ad8ef6b251d9b3e1e5536d1d737946651118bed25cdb0c3840e2102fa208f7a721a7fa9af939b8510f9ee933435fd54a679abf07eb47c2f2394a0bb41bb EBUILD dracut-038-r1.ebuild 7894 SHA256 f6a80a07482129ebb880b01afc3a9de6b8206d6a14a27b23c568e596d9bf3d36 SHA512 37115967a5c1b77473763d1c6732d3355a699693a35358e8173dfcec2e1cadc90a045ec90371cd141150e0353fb799a98a181d65f7dad007d733335e607d84aa WHIRLPOOL 158c37c114674ed3ce9ba68573fbd3f5f0dcd6d7466dc6666df0204549c210bd6d1f4dfa102486ad60e1a51f688666e8fb2faa45db3d444f52d663a12a13b62a -MISC ChangeLog 73785 SHA256 613e151ff4739149115340292294c6605af8f70d5bcbe00c2dd9ddd2e71e92a0 SHA512 b7eb549492fc2475367ed46cb6889365b7c217ef2baf4076e6e99c774040e1729302cd89fae1320e081c5c91f9d8d8e6df320702c9eea77e361ca89a01647d20 WHIRLPOOL 6ce083fec7c6010e10282bfff07180a577ff973b58e9720353029498adc065a3474579b7aad94da16e20ed85c52d4b495a89e6bc38efc2ff8648499b8fb3e4b0 +EBUILD dracut-038-r2.ebuild 7896 SHA256 2e68af89fc6e57625f22349e09f32f6d0a47003b41aeaa2fcb194e1eb424abd3 SHA512 a29186b8ed1a8a441d8572b1fc6b0a3647983099aaa43e09e2157a58a05f60b1e30ae719181f8dec2598bfe06631bc85800f19cb45c1f5cc8e452264d750b559 WHIRLPOOL 37776aca8834512183f3d82152547cc16ab287c80d596a51c2d05130008b3cfb7d900016142711781e31eca2740c73da638bdfd57eecaa27583feb585f62a35f +MISC ChangeLog 73994 SHA256 968cca7c50d628a626b43ce48380d99211aca3ef3d01e294a7946d99538ec5dd SHA512 99f1acc1dd04478e32ec276f56076193835efd2f98c3949f0128b76930537457883a06ce7733721479efa2957a8e70d37c95cba7081f1b35910fb66e4bce1f03 WHIRLPOOL b5dffd03d6612e8140ee830e16158f88f3a66f87b5e21f13e35ed019853c03d8f47540cc886dd965783ac7bd3f39dc886d91a3d0656f213d9bead572a160749f MISC metadata.xml 906 SHA256 5f19b725d0669877fdd7814634b7aa7dd73331459bace52de02908417b833c3f SHA512 c5838d36080528d541b67cb38de17cc2351f7e5e17ab060c58f037792225ea223ade6b7e69376f4a9256b0bb3dcf4de578dcd50ee1c7d04a3f3288ca3c1ada43 WHIRLPOOL 532ea421fab965094820d5c0961a00ca38c858461f572a0cd4a145aa90340a569ee942062338ae03773c2709a08e4882f3176333aa5383b7e3c467cb01c0874d -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iQEcBAEBCAAGBQJTzMmkAAoJEPATRTHh2/q1ngMH/Rjpc5FYC8O0YVwy86Jei6By -xsGTigXhbaaknsooZXTRS3QIIGo1Zt7RVaqxQBJ4UyMTS27KjZBL8BjYUYklVkWs -F1JZOMrFDPvV6dZ7PB9e1axFqrYr1Agl4RlVSRRuV3/INCkMZKCdG1jgVa91TXCX -cOpTkydYh7C07AqN3fE2Xysd8MNMHxelqkuaIIXp2swlSxQyuJFfjQ2w4AJOd9yg -fMQal8/T5j+P1bb1UuxdMfodZzK2i3HvX8KTC1LXZtMvC+94tfPDaxfLSkwkjvk6 -cCotfRhneswuwI3PEflxaEpH5SzTeD8lZj6L3NKSrvkbcDhZTUNtPHZRSjCFaa4= -=aiCQ +iQEcBAEBCAAGBQJTzWZvAAoJEPATRTHh2/q1o1kIAIYca85jsyqhlqRIXWh+Rdxv +5kN67IaB2K0rxSSyeZ3dLLUTHcu4fb0DTnJMhYEiG5WZFVH8QgSNO0I+5IayMoe5 +Mo2jBAZNJ+JGdP9FvepNBSLO4UyBzqw/AFWDsd9MRRh5RnPjlsX/cNNW5k3HkII0 +ZrwQyai6vkUxHHjG3mCLghOf+EMBnuutxFe8zkmh+F96t7eq5f5R9cv3t8vH7Iqk +C1JlRQHQmdh4hAOXsUW2K0cVP4vnPCaV2T14hS+T44LzRaVH/dsByQbAczJlm4cM +5xuJeSAGQ4NztfrW9jqBWijCERA6t29/nDPFFa7dF4zlcegXhW4qDl7Wa5j4T3I= +=Iehw -----END PGP SIGNATURE----- diff --git a/sys-kernel/dracut/dracut-038-r2.ebuild b/sys-kernel/dracut/dracut-038-r2.ebuild new file mode 100644 index 000000000000..eccfe19f46a5 --- /dev/null +++ b/sys-kernel/dracut/dracut-038-r2.ebuild @@ -0,0 +1,265 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/dracut-038-r2.ebuild,v 1.1 2014/07/21 19:13:50 aidecoe Exp $ + +EAPI=4 + +inherit bash-completion-r1 eutils linux-info multilib systemd + +DESCRIPTION="Generic initramfs generation tool" +HOMEPAGE="http://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 ~ppc ~ppc64 ~sparc ~x86" +IUSE="debug selinux systemd" + +RESTRICT="test" + +CDEPEND="virtual/udev + systemd? ( >=sys-apps/systemd-199 ) + selinux? ( sec-policy/selinux-dracut ) + " +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/util-linux-2.21 + + debug? ( dev-util/strace ) + selinux? ( sys-libs/libselinux sys-libs/libsepol ) + " +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 +PATCHES=( + "${FILESDIR}/${PV}-0001-dracut-functions.sh-support-for-altern.patch" + "${FILESDIR}/${PV}-0002-gentoo.conf-let-udevdir-be-handled-by-.patch" + "${FILESDIR}/${PV}-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch" + "${FILESDIR}/${PV}-0004-Install-dracut-install-into-libexec-di.patch" + "${FILESDIR}/${PV}-0005-modsign-do-not-hardcode-path-to-keyctl.patch" + "${FILESDIR}/${PV}-0008-dracut-functions.sh-fix-inst-functions.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 +} + +# Grabbed from net-misc/netctl ebuild. +optfeature() { + local desc=$1 + shift + while (( $# )); do + if has_version "$1"; then + elog " [I] $1 to ${desc}" + else + elog " [ ] $1 to ${desc}" + fi + shift + done +} + +# +# ebuild functions +# + +src_prepare() { + epatch "${PATCHES[@]}" + + 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_user +} + +src_configure() { + local myconf="--libdir=${MY_LIBDIR}" + myconf+=" --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 +} + +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 + + # + # 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 98systemd + # Without systemd following modules do not make sense + rm_module 00systemd-bootchart + 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_src_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 sys-apps/usleep 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 + 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" \ + dev-libs/openssl + optfeature "Enable logging with syslog-ng or rsyslog" app-admin/syslog-ng \ + app-admin/rsyslog +} diff --git a/sys-kernel/dracut/files/038-0008-dracut-functions.sh-fix-inst-functions.patch b/sys-kernel/dracut/files/038-0008-dracut-functions.sh-fix-inst-functions.patch new file mode 100644 index 000000000000..7e0665d54fe2 --- /dev/null +++ b/sys-kernel/dracut/files/038-0008-dracut-functions.sh-fix-inst-functions.patch @@ -0,0 +1,97 @@ +From 0791f69f870f66dcbec30d64bca4c0cd9c70e7a8 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer <harald@redhat.com> +Date: Mon, 21 Jul 2014 16:58:15 +0200 +Subject: [PATCH 8/8] dracut-functions.sh: fix inst*() functions for "-H" + handling + +because some inst*() functions check the existance of the source files +and do not know about the "-H" option, some failed to install the +hostonly files. +--- + dracut-functions.sh | 46 ++++++++++++++++++++++++++++++++-------------- + 1 file changed, 32 insertions(+), 14 deletions(-) + +diff --git a/dracut-functions.sh b/dracut-functions.sh +index aa0949d..f241016 100755 +--- a/dracut-functions.sh ++++ b/dracut-functions.sh +@@ -765,33 +765,46 @@ inst_dir() { + } + + inst() { ++ local _hostonly_install ++ if [[ "$1" == "-H" ]]; then ++ _hostonly_install="-H" ++ shift ++ fi + [[ -e ${initdir}/"${2:-$1}" ]] && return 0 # already there +- #dinfo "$DRACUT_INSTALL -l $@" +- $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" +- (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" || : ++ $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" ++ (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" || : + } + + inst_simple() { ++ local _hostonly_install ++ if [[ "$1" == "-H" ]]; then ++ _hostonly_install="-H" ++ shift ++ fi + [[ -e ${initdir}/"${2:-$1}" ]] && return 0 # already there + [[ -e $1 ]] || return 1 # no source +- $DRACUT_INSTALL ${initdir:+-D "$initdir"} "$@" +- (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} "$@" || : ++ $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${_hostonly_install:+-H} "$@" ++ (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${_hostonly_install:+-H} "$@" || : + } + + inst_symlink() { ++ local _hostonly_install ++ if [[ "$1" == "-H" ]]; then ++ _hostonly_install="-H" ++ shift ++ fi + [[ -e ${initdir}/"${2:-$1}" ]] && return 0 # already there + [[ -L $1 ]] || return 1 +- $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" +- (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" || : ++ $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" ++ (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" || : + } + + inst_multiple() { +- local ret +- #dinfo "initdir=$initdir $DRACUT_INSTALL -l $@" ++ local _ret + $DRACUT_INSTALL ${initdir:+-D "$initdir"} -a ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" +- ret=$? +- (($ret != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} -a ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" || : +- return $ret ++ _ret=$? ++ (($_ret != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} -a ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" || : ++ return $_ret + } + + dracut_install() { +@@ -799,10 +812,15 @@ dracut_install() { + } + + inst_library() { ++ local _hostonly_install ++ if [[ "$1" == "-H" ]]; then ++ _hostonly_install="-H" ++ shift ++ fi + [[ -e ${initdir}/"${2:-$1}" ]] && return 0 # already there + [[ -e $1 ]] || return 1 # no source +- $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" +- (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} "$@" || : ++ $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" ++ (($? != 0)) && derror $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${DRACUT_RESOLVE_DEPS:+-l} ${DRACUT_FIPS_MODE:+-f} ${_hostonly_install:+-H} "$@" || : + } + + inst_binary() { +-- +2.0.2 + |