From: Amadeusz Żołnowski Date: Wed, 18 Feb 2015 17:02:20 +0000 (+0000) Subject: Version bump. X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=8498a93e9f0f844edc71a06129c2ce653c6c602a;p=gentoo.git Version bump. NEWS ~~~~ - fixed the shutdown loop - fixed gzip compression for versions, which do not have --rsyncable - fixed ifcfg generation for persistent interface names - multipath: * new option to turn off multipath "rd.multipath=0" completly * preload scsi dh modules * start multipathd via systemd service - do not fail, if user pressed ESC during media check - fixed systemd-journal by symlinking /var/log to /run/initramfs/log - initrd-release moved to /usr/lib - lots of iSCSI fixes - new "rd.timeout" to specify the systemd JobTimeoutSec for devices - if $initrd/etc/cmdline.d/* has a "root=" and the kernel cmdline does not, generate a mount unit for it - increased the initqueue timeout for non systemd initramfs to 180s - $initrd/etc/cmdline.d/ hostonly files are now generated for NFS - make use of systemd-hibernate-resume, if available - fixed ldconfig parsing for hwcap output - network: add support for comma separated autoconf options like ip=eth0:auto6,dhcp - new parameter "rd.live.overlay.size" to specify the overlay for live images - added cache tools for dm-cache setups Package-Manager: portage-2.2.16/cvs/Linux x86_64 Manifest-Sign-Key: 0xF0134531E1DBFAB5 --- diff --git a/sys-kernel/dracut/ChangeLog b/sys-kernel/dracut/ChangeLog index 5c5aca3c96bb..0d5a92cf43f8 100644 --- a/sys-kernel/dracut/ChangeLog +++ b/sys-kernel/dracut/ChangeLog @@ -1,6 +1,41 @@ # ChangeLog for sys-kernel/dracut # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.185 2015/01/11 14:30:10 aidecoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.186 2015/02/18 17:02:17 aidecoe Exp $ + +*dracut-041 (17 Feb 2015) + + 17 Feb 2015; Amadeusz Å»ołnowski +dracut-041.ebuild, + +files/041-0001-dracut-functions.sh-support-for-altern.patch, + +files/041-0002-gentoo.conf-let-udevdir-be-handled-by-.patch, + +files/041-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch, + +files/041-0004-Install-dracut-install-into-libexec-di.patch, + +files/041-0005-Take-into-account-lib64-dirs-when-dete.patch: + Version bump. + + NEWS + ~~~~ + - fixed the shutdown loop + - fixed gzip compression for versions, which do not have --rsyncable + - fixed ifcfg generation for persistent interface names + - multipath: + * new option to turn off multipath "rd.multipath=0" completly + * preload scsi dh modules + * start multipathd via systemd service + - do not fail, if user pressed ESC during media check + - fixed systemd-journal by symlinking /var/log to /run/initramfs/log + - initrd-release moved to /usr/lib + - lots of iSCSI fixes + - new "rd.timeout" to specify the systemd JobTimeoutSec for devices + - if $initrd/etc/cmdline.d/* has a "root=" and the kernel cmdline does not, + generate a mount unit for it + - increased the initqueue timeout for non systemd initramfs to 180s + - $initrd/etc/cmdline.d/ hostonly files are now generated for NFS + - make use of systemd-hibernate-resume, if available + - fixed ldconfig parsing for hwcap output + - network: add support for comma separated autoconf options like + ip=eth0:auto6,dhcp + - new parameter "rd.live.overlay.size" to specify the overlay for live images + - added cache tools for dm-cache setups 11 Jan 2015; Amadeusz Å»ołnowski -dracut-040.ebuild, -dracut-040-r1.ebuild: diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest index b545b24eb779..ea974d939639 100644 --- a/sys-kernel/dracut/Manifest +++ b/sys-kernel/dracut/Manifest @@ -21,22 +21,29 @@ AUX 040-0004-Install-dracut-install-into-libexec-di.patch 2581 SHA256 aaf07b481d AUX 040-0005-NEWS-add-040-entry.patch 525 SHA256 8ede46792c1df587a45f5635661e1eddcd4819254e551aeb0a3da6a161258407 SHA512 0c23ab050653a6bc9ea8188b674bdbf2cc649530cc956e4731263c78fd2f29007806e9152e157f08d348750469dfe489f025087156a53b27905d85246046e27e WHIRLPOOL 9442ef0610c0f9f0ed0a0c72ae8fe3961c5c9a12a8ae1ce9837b66190b3418c70bb73f1dd5e0f78f0a9b8ceaefcdf59c6442897cc0e78040406b37597a702aea AUX 040-0006-Don-t-pass-rsyncable-option-to-gzip-Ge.patch 913 SHA256 7aec938b001d483b8f8a11eab2e165bbf52de1128ec0e196d4a8bf474d3cc4ba SHA512 60e117f8594275911addddc530edebca83a9585c4c7abeb8f3cc03bde16781e961f5194f97335efae3411fb53777bfc6db3921823272c95c34f338cff1be538e WHIRLPOOL a469a2461aea8cd9d459100102ebbf908084945e568ebe3fd78ca7a4730825e31f7286c58bb65adee0c7158d39a5b9064c51dea72ed11bc89470712560c529c7 AUX 040-0007-Take-into-account-lib64-dirs-when-dete.patch 1877 SHA256 df68184338dd092f01a42064ed7fcdb78e46f348027ff55cb15169c88d0e94f2 SHA512 5f2669addca7b70566213a066a12ba101273611244c3b190c8efca184a0fc50a3afc05bb08bedb998aa387e68abb034cd8fcf914013b2cb99efc9aab6924aed0 WHIRLPOOL b5475357f89e142519db4dd1d3fc8dc2f5a526926e58609a54b9358983a02ce2d04086468f0aca8ae3a930ecef5187c39b8fa0ea9443803e555fa46693173861 +AUX 041-0001-dracut-functions.sh-support-for-altern.patch 1485 SHA256 e5f5dfb729d0bdc261773e0bfbb109e0e9fd543578584bcb1a9623929cb74a9b SHA512 d7b8c045bbcad29eb7213381bbb9945361e6b265f54af57d16bc06defa8ecc6093abc936cf3308eba26d0878428aa04e33b12df98b5d84df4001413debee0f57 WHIRLPOOL dcf21243087c82dec70f4a7f796ac3e6722d743aa0623fd24b5d1ddb63d2e2e3a8959687151a7c5da58e795be9705158cdc16e469822ce4dcb4d9a701dc666f5 +AUX 041-0002-gentoo.conf-let-udevdir-be-handled-by-.patch 948 SHA256 54d4df39b011c073579ef780a685b749148e96108d83bc3ec8788a6f4a7960e8 SHA512 eb9046b0100e5d87b5818d88d94f3e3a84ab1fa49eecc90e967175b2e3e979de657cf60a6badc13b206161b2bb39c8544e0cd573c1b38caf85e384bb505cd5f7 WHIRLPOOL 6d203f624443645dce4f477daa323fd663b9a386a9e87c5c1472270f7810302dac1b6827d638a75f54ba80a52e4f1fb96814c82a10572aeb79489bda3c843922 +AUX 041-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch 2410 SHA256 c8756f630d6e27397ebe60b0cc3c0d4e1d7622013fc8f4461fca5a6bb8a81b29 SHA512 4e057e401bf8301d77a113e0a37d0092ca451beb3210133f9729258d405224035b27fac731c0494e4a19affe7cbc3c4d962b20dd32acecdf77d9c7ac08061b83 WHIRLPOOL ce912e42d1c3cbb6156c9cf48d3c12cdf949883b6c2daabaab3f40508c239fe881d561a57fc4e07ee333f7deb2ae4eeedeb96536839562b11554c7514fc7899b +AUX 041-0004-Install-dracut-install-into-libexec-di.patch 2663 SHA256 542b01eb6c403ea744a35505376d5aca09d515085b13a1539faebdc161ae0827 SHA512 656d79a3824f01f50c9d8d7455f3d2dae3df4958ae5d712d87eff297c7383dfe67bb5efabecd7bc211f210415355e544c6c38d2fc03b5b5f59e57704662cbabc WHIRLPOOL 274f8633f38590b777d6d4b65950a505cee7498d3ffceebb6cf5d2566e4a03bf261aa8926abf5e3eea4944098983b30e9ead60f7655ff6b3f762135ca6aa33ff +AUX 041-0005-Take-into-account-lib64-dirs-when-dete.patch 1877 SHA256 9f0ddd9dc36d35a740d45c1e4af6af71718dbb4b46ca25501170f11e6de17f57 SHA512 c2fbfda6ef2f4b6a8b880b525716adab48c42b6862a6abec2c6561afdb3cf35ad34464cfa744780cd597c52aee8db665009929c61c6e5eae8f688d954d967a4a WHIRLPOOL baf231bde44e8bc722c01d379d1016eb665f43a0730dd8f0fb4fa92a4ccd0da06a0bf905f54652dc63a659bc58851c644c551e28b561845f8d7b90627fdfaba9 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-040.tar.xz 263944 SHA256 b6e743353804b46e350177b9ecb9a8511df7e8c4ff9e0b4f3b4f72bc509c98a3 SHA512 6bc6a714572cc18c4cf9f9c1af4bc787287554ead1e39fbec8a1b8986585cf8c7c7ef476f87fc361f565eb344fe2594d63185ffe02cc5fa7cc3eaa03bcb4b72b WHIRLPOOL d8dbdbf6cb7705a0b7793f82a0323c49b4ac0dc3d61cf0073e3061f34af0b5c92dd21a7dc080f2a8d24d3eef3abc99df91f113675721267352f934f1319c66ba +DIST dracut-041.tar.xz 268288 SHA256 8ece6c2240bf0e9283e5f717b65dfcd6830b3ef7f8d1c01b60014052f1063251 SHA512 358444588febfc482627eb5423b8a87b588ed3842ae814b9f88d8c5dfec28419f2aea92cd54c11c4949b9968d60d7e05ba9cfea78d26d2dc6f2a943a38b28dac WHIRLPOOL ab538fe1ffeb3d43185c6222a6e65af8c684b292be571e0571fdd69011f654c3093f3a2256f3003d5dbaf07d0a26f83d82055885bae1868738ad15dc74982e72 EBUILD dracut-034-r4.ebuild 10446 SHA256 80ab338aeeadb2fbd62f2ecfd61b35ea79acabbda0f927af1e28523e166ba092 SHA512 c8a0190f302d986f808886e5e2846f094c62a3c6d8073559237b54d1f3e70334db3f0b6eace31e6b57825dab3a261a2e6c23fad542a54a04fd7938dade3f2c4b WHIRLPOOL 3ea152d45dad874279424f38c67eafb4c30f9d61fdc23a9256178aea6268ad4be68ebac193839e0c6f9f66ca47305f6d1eb637862bc710dbb2ee3403aac0dbb5 EBUILD dracut-040-r2.ebuild 7925 SHA256 70525b9785a16f408f41e35c8e1bd544fb0a6002b72878fc87f8ab10a6bb9418 SHA512 b6b9aac944574fefd3609c36abf382478981136c855bdc46be5eb1ac08ca450e8404cf81dc2c214be41c2deacf8b5bdf54281e2538baee4485adfc603e3de907 WHIRLPOOL c238ab3f7197efc19fbc7a77308f19d91df104ce8b46805cdfb8244ec731e0fa3a179d4f9aeec1922b1612bc00315bafca7bf2d4a41a3894fb5b59da382cbe06 EBUILD dracut-040-r3.ebuild 7998 SHA256 b9201824939326f805e9be6257b48ccf4d3d896364d4084a07f2d978c74d9255 SHA512 eaf85f05d3f63e50ab4e5d4ca7140dd96cb029ff789dbec5fca6ff557713be7bd187c445543cca53b7ba2bf15f12d808c5390f8dd8c1c199cbcbd6b065b7e887 WHIRLPOOL 854a55cb81b5b5f33573fe14fd32c0ef4fbe189bf4339bf9155824ffcd726f0aad74d3071dcb9a11fbe863ed7435b448870bd0b13b2f06e6c2575b387156836e -MISC ChangeLog 79213 SHA256 3211664971161b2ebe2912287250b40763bb808bcaba7c0647a992284e91179e SHA512 651faba37dcd0a395960970a71dfc7e2c04d10d416da366ba7c363bf1f856c0b3ac4f56d231dff314d8f721cd9da25e006ae373e36089aa6a9b32501d23494d4 WHIRLPOOL d8ba1d1642b817037ebc8138aa10d02caf0a1ed87ecc9c0bb3fe5f91c2bb037d930baa5473eaf62664c8809a242e9a97e006d963dd32f311e200e6d51afd1efc +EBUILD dracut-041.ebuild 7944 SHA256 201a1c1dcfbdd970e7747227fe0e1db1fc511231ac94a7a1a6a06bf7ad02bb21 SHA512 2516d7c7f9a49a5aa7008d8d09783124d6c0ddd8448643550fdcca34ccb66ff479060fbefff764b219c91493cc6d968e3a7b94ce0ca399592f7eb28a1d43deca WHIRLPOOL f5d43b40f447a669bd798c21b90058ef5aa24d415c9e8440a28b133a6c9c45283dd80307fc327a554815f77425dba9db6d6e8c6cd63eeee411ca9bdba7ca5ea9 +MISC ChangeLog 80798 SHA256 5ad71a11f2ceb69b88c4b8e6591967310dedfdd93195e37dc462b3b1ccf51ca4 SHA512 f3e515b3b9511c7b85d92b064466aa8cf8f48f4b4982b2386a8c4463eafc7fafc0eb821b13d707c65fa3567a0092d7960f7b206c1828bb536ed2d239c5a47629 WHIRLPOOL 9a2d9db7b99c5317061558ef8c46e7a1da918947231ecb54f24ebdf6b5fda163ee2b57e3920892343320a9453843240b6c3adb33f3bbe0ffcda3e5b63bd5f58a MISC metadata.xml 906 SHA256 5f19b725d0669877fdd7814634b7aa7dd73331459bace52de02908417b833c3f SHA512 c5838d36080528d541b67cb38de17cc2351f7e5e17ab060c58f037792225ea223ade6b7e69376f4a9256b0bb3dcf4de578dcd50ee1c7d04a3f3288ca3c1ada43 WHIRLPOOL 532ea421fab965094820d5c0961a00ca38c858461f572a0cd4a145aa90340a569ee942062338ae03773c2709a08e4882f3176333aa5383b7e3c467cb01c0874d -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iQEcBAEBCAAGBQJUsojzAAoJEPATRTHh2/q14/4H/iTfeFYOKn1VBshVBiWnWoTn -Ss7F2BzLiQKRUQHpsY/z9GBhMJdn1qfA3/RL1pOMffwYHl2eTxyrLpJ8PT7rvjxv -Gf3NGJGWg1V7euMQBPyQ2G7MgIhIHg8zutSult4nLVwW6VPpKzTkqMCMtBxVsk5s -7U82q51VMSRma9ga0Gi26C4RJ/ODjG9nDV12zqMkqkDs3deetNOsftgQBBKswPtf -ajXxWKwgeadkxzPsPheiLKPEA7jS6T7EdtcB2nFcowZ1z0qf6Qf6GSQS4m0KL21h -gN5baOLvqKnKBH+3Ej0XOD01y9580i8BvO8aFMtmjOKyfnYLqyi8+AonuGQ3C2A= -=7FGF +iQEcBAEBCAAGBQJU5MWaAAoJEPATRTHh2/q110MH/3DhOoHmuVfOBoo/WHR76Mtv +FIOKCCx8u2QsnT6Uj2uxscSk3F/8JFSVskvZdPvqkGrPFdeZjhaIBBdnY4j5MPDq +bDTaKaZxpMjeA2wifWuXeGrPDUrwvwQ+3QxwF7k5PNpxHDjJdWzfgxUxeBoUJm3r +lLKmL9kqTfbdgskUcNYp9lsFzRsCdk71q7/GmuXJyZTn/O//I02+gzZOaf2PtSzU +bn93PQaD8OxXZ2CBVNfmaSv3q7Mn3tLPH8Vk/YnT+VHICCYNqgqdblvCPM1tRgrN +KHn717EZZ7lbsyuVyTDzm9+G89x21Oi++2z3+aRsPfSo744mXagrtEOCmM6BwrI= +=HPS/ -----END PGP SIGNATURE----- diff --git a/sys-kernel/dracut/dracut-041.ebuild b/sys-kernel/dracut/dracut-041.ebuild new file mode 100644 index 000000000000..cfda414d76a7 --- /dev/null +++ b/sys-kernel/dracut/dracut-041.ebuild @@ -0,0 +1,271 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/dracut-041.ebuild,v 1.1 2015/02/18 17:02:17 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 ) + " +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 +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-Take-into-account-lib64-dirs-when-dete.patch" + ) +QA_MULTILIB_PATHS=" + usr/lib/dracut/dracut-install + usr/lib/dracut/skipcpio + " + +# +# 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 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 + + # + # 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 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 + 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/files/041-0001-dracut-functions.sh-support-for-altern.patch b/sys-kernel/dracut/files/041-0001-dracut-functions.sh-support-for-altern.patch new file mode 100644 index 000000000000..acd998c4ab00 --- /dev/null +++ b/sys-kernel/dracut/files/041-0001-dracut-functions.sh-support-for-altern.patch @@ -0,0 +1,41 @@ +From d6d86dcc914f6f8a054d24a8d033f645a51509a9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= +Date: Sun, 6 Jan 2013 13:35:01 +0100 +Subject: [PATCH 1/5] dracut-functions.sh: support for alternative udev dirs - + udevaltdirs + +It is required for Gentoo which moves udev from / to /usr and supports +both /lib/udev and /usr/lib/udev for compatibility with other packages. + +Credits go to Alexander Tsoy . + +Conflicts: + dracut-functions.sh +--- + dracut-functions.sh | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/dracut-functions.sh b/dracut-functions.sh +index 37ddca2..0eb36da 100755 +--- a/dracut-functions.sh ++++ b/dracut-functions.sh +@@ -937,6 +937,16 @@ inst_rules() { + inst_dir "$_target" + for _rule in "$@"; do + if [ "${_rule#/}" = "$_rule" ]; then ++ for r in ${udevaltdirs}; do ++ [[ "$r" = "${udevdir}" ]] && continue ++ if [[ -e $r/rules.d/$_rule ]]; then ++ _found="$r/rules.d/$_rule" ++ inst_rule_programs "$_found" ++ inst_rule_group_owner "$_found" ++ inst_rule_initqueue "$_found" ++ inst_simple "$_found" "${udevdir}/rules.d/${_found##*/}" ++ fi ++ done + for r in ${udevdir}/rules.d ${hostonly:+/etc/udev/rules.d}; do + if [[ -e $r/$_rule ]]; then + _found="$r/$_rule" +-- +2.3.0 + diff --git a/sys-kernel/dracut/files/041-0002-gentoo.conf-let-udevdir-be-handled-by-.patch b/sys-kernel/dracut/files/041-0002-gentoo.conf-let-udevdir-be-handled-by-.patch new file mode 100644 index 000000000000..a1d41c72de1c --- /dev/null +++ b/sys-kernel/dracut/files/041-0002-gentoo.conf-let-udevdir-be-handled-by-.patch @@ -0,0 +1,30 @@ +From 86857645052ec06cebc5f57bf81bed3bf142543c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= +Date: Sun, 16 Dec 2012 20:02:48 +0100 +Subject: [PATCH 2/5] gentoo.conf: let udevdir= be handled by pkg-config and + use udevaltdirs + +To avoid need of rebuild after udev update/downgrade let udevdir= be set +dynamically with pkg-config. Use udevaltdirs to search for rules both +in old and new locations. +--- + dracut.conf.d/gentoo.conf.example | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/dracut.conf.d/gentoo.conf.example b/dracut.conf.d/gentoo.conf.example +index 26e7314..f9617f0 100644 +--- a/dracut.conf.d/gentoo.conf.example ++++ b/dracut.conf.d/gentoo.conf.example +@@ -1,7 +1,8 @@ + # /etc/dracut.conf.d/gentoo.conf + # dracut config file customized for Gentoo Base System release 2 + +-udevdir=/lib/udev ++udevdir= ++udevaltdirs="/lib/udev /usr/lib/udev" + ro_mnt=yes + + # +-- +2.3.0 + diff --git a/sys-kernel/dracut/files/041-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch b/sys-kernel/dracut/files/041-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch new file mode 100644 index 000000000000..43436a2eb450 --- /dev/null +++ b/sys-kernel/dracut/files/041-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch @@ -0,0 +1,74 @@ +From 32c439ed3f62a821827e9b3e7de45789dccbf897 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= +Date: Wed, 2 Oct 2013 22:37:09 +0200 +Subject: [PATCH 3/5] Use the same paths in dracut.sh as those set with + configure script + +Makefile alters destination main dracut script and sets dracutbasedir to +the value of pkglibdir set in configure. +--- + Makefile | 3 +++ + dracut.sh | 9 ++++----- + 2 files changed, 7 insertions(+), 5 deletions(-) + +diff --git a/Makefile b/Makefile +index 41ae274..41968b0 100644 +--- a/Makefile ++++ b/Makefile +@@ -103,6 +103,9 @@ install: dracut-version.sh + mkdir -p $(DESTDIR)$(pkglibdir)/modules.d + mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man7 $(DESTDIR)$(mandir)/man8 + install -m 0755 dracut.sh $(DESTDIR)$(bindir)/dracut ++ sed -r \ ++ -e "s|^(pkglibdir)=.*|\1=$(pkglibdir)|" \ ++ -i $(DESTDIR)$(bindir)/dracut + install -m 0755 dracut-catimages.sh $(DESTDIR)$(bindir)/dracut-catimages + install -m 0755 mkinitrd-dracut.sh $(DESTDIR)$(bindir)/mkinitrd + install -m 0755 lsinitrd.sh $(DESTDIR)$(bindir)/lsinitrd +diff --git a/dracut.sh b/dracut.sh +index 5e2feba..89a711e 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -24,10 +24,13 @@ + # store for logging + dracut_args=( "$@" ) + ++# base dirs ++pkglibdir=/usr/lib/dracut ++dracutbasedir="$pkglibdir" ++ + set -o pipefail + + usage() { +- [[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut + if [[ -f $dracutbasedir/dracut-version.sh ]]; then + . $dracutbasedir/dracut-version.sh + fi +@@ -52,7 +55,6 @@ EOF + } + + long_usage() { +- [[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut + if [[ -f $dracutbasedir/dracut-version.sh ]]; then + . $dracutbasedir/dracut-version.sh + fi +@@ -666,8 +668,6 @@ export DRACUT_LOG_LEVEL=warning + debug=yes + } + +-[[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut +- + # if we were not passed a config file, try the default one + if [[ ! -f $conffile ]]; then + if [[ $allowlocal ]]; then +@@ -808,7 +808,6 @@ stdloglvl=$((stdloglvl + verbosity_mod_l)) + [[ $use_fstab_l ]] && use_fstab=$use_fstab_l + [[ $mdadmconf_l ]] && mdadmconf=$mdadmconf_l + [[ $lvmconf_l ]] && lvmconf=$lvmconf_l +-[[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut + [[ $fw_dir ]] || fw_dir="/lib/firmware/updates /lib/firmware" + [[ $tmpdir_l ]] && tmpdir="$tmpdir_l" + [[ $tmpdir ]] || tmpdir=/var/tmp +-- +2.3.0 + diff --git a/sys-kernel/dracut/files/041-0004-Install-dracut-install-into-libexec-di.patch b/sys-kernel/dracut/files/041-0004-Install-dracut-install-into-libexec-di.patch new file mode 100644 index 000000000000..637b560ddb8f --- /dev/null +++ b/sys-kernel/dracut/files/041-0004-Install-dracut-install-into-libexec-di.patch @@ -0,0 +1,81 @@ +From 7498b3128103cf77fdef5ccd97205dfd0338fb82 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= +Date: Wed, 2 Oct 2013 22:40:43 +0200 +Subject: [PATCH 4/5] Install dracut-install into libexec dir instead of lib + dir + +dracut-install script is the only thing ABI specific atm. + +See https://bugs.gentoo.org/show_bug.cgi?id=485218 for details on the +problem. +--- + Makefile | 4 +++- + configure | 1 + + dracut-functions.sh | 4 ++++ + dracut.sh | 1 + + 4 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 41968b0..b072a23 100644 +--- a/Makefile ++++ b/Makefile +@@ -104,6 +104,7 @@ install: dracut-version.sh + mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man7 $(DESTDIR)$(mandir)/man8 + install -m 0755 dracut.sh $(DESTDIR)$(bindir)/dracut + sed -r \ ++ -e "s|^(libexecdir)=.*|\1=$(libexecdir)|" \ + -e "s|^(pkglibdir)=.*|\1=$(pkglibdir)|" \ + -i $(DESTDIR)$(bindir)/dracut + install -m 0755 dracut-catimages.sh $(DESTDIR)$(bindir)/dracut-catimages +@@ -147,7 +148,8 @@ endif + done \ + fi + if [ -f install/dracut-install ]; then \ +- install -m 0755 install/dracut-install $(DESTDIR)$(pkglibdir)/dracut-install; \ ++ mkdir -p $(DESTDIR)$(libexecdir); \ ++ install -m 0755 install/dracut-install $(DESTDIR)$(libexecdir)/dracut-install; \ + fi + if [ -f skipcpio/skipcpio ]; then \ + install -m 0755 skipcpio/skipcpio $(DESTDIR)$(pkglibdir)/skipcpio; \ +diff --git a/configure b/configure +index 0bd3d2d..17370de 100755 +--- a/configure ++++ b/configure +@@ -59,6 +59,7 @@ sbindir ?= ${sbindir:-${prefix}/sbin} + mandir ?= ${mandir:-${prefix}/share/man} + enable_documentation ?= ${enable_documentation:-yes} + bindir ?= ${bindir:-${prefix}/bin} ++libexecdir ?= ${libexecdir:-${prefix}/libexec} + EOF + + { +diff --git a/dracut-functions.sh b/dracut-functions.sh +index 0eb36da..4484e71 100755 +--- a/dracut-functions.sh ++++ b/dracut-functions.sh +@@ -733,6 +733,10 @@ if ! [[ $DRACUT_INSTALL ]]; then + DRACUT_INSTALL=$(find_binary dracut-install) + fi + ++if ! [[ $DRACUT_INSTALL ]] && [[ -x $libexecdir/dracut-install ]]; then ++ DRACUT_INSTALL=$libexecdir/dracut-install ++fi ++ + if ! [[ $DRACUT_INSTALL ]] && [[ -x $dracutbasedir/dracut-install ]]; then + DRACUT_INSTALL=$dracutbasedir/dracut-install + elif ! [[ $DRACUT_INSTALL ]] && [[ -x $dracutbasedir/install/dracut-install ]]; then +diff --git a/dracut.sh b/dracut.sh +index 89a711e..527b32e 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -25,6 +25,7 @@ + dracut_args=( "$@" ) + + # base dirs ++libexecdir=/usr/libexec + pkglibdir=/usr/lib/dracut + dracutbasedir="$pkglibdir" + +-- +2.3.0 + diff --git a/sys-kernel/dracut/files/041-0005-Take-into-account-lib64-dirs-when-dete.patch b/sys-kernel/dracut/files/041-0005-Take-into-account-lib64-dirs-when-dete.patch new file mode 100644 index 000000000000..da9be91265bc --- /dev/null +++ b/sys-kernel/dracut/files/041-0005-Take-into-account-lib64-dirs-when-dete.patch @@ -0,0 +1,44 @@ +From e776f28b742ed829f5b53ca2079562c9c6c28c8c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= +Date: Sun, 11 Jan 2015 15:10:39 +0100 +Subject: [PATCH 5/5] Take into account lib64 dirs when detecting version, + modules and params + +--- + lsinitrd.sh | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/lsinitrd.sh b/lsinitrd.sh +index 4f12c2c..dc1f88f 100755 +--- a/lsinitrd.sh ++++ b/lsinitrd.sh +@@ -124,7 +124,7 @@ extract_files() + list_modules() + { + echo "dracut modules:" +- $CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib/dracut/modules.txt' 'usr/lib/dracut/modules.txt' 2>/dev/null ++ $CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib64/dracut/modules.txt' 'lib/dracut/modules.txt' 'usr/lib/dracut/modules.txt' 2>/dev/null + ((ret+=$?)) + } + +@@ -217,7 +217,7 @@ ret=0 + if (( ${#filenames[@]} > 0 )); then + extract_files + else +- version=$($CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib/dracut/dracut-*' 'usr/lib/dracut/dracut-*' 2>/dev/null) ++ version=$($CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib64/dracut/dracut-*' 'lib/dracut/dracut-*' 'usr/lib/dracut/dracut-*' 2>/dev/null) + ((ret+=$?)) + echo "Version: $version" + echo +@@ -226,7 +226,7 @@ else + echo "========================================================================" + else + echo -n "Arguments: " +- $CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib/dracut/build-parameter.txt' 'usr/lib/dracut/build-parameter.txt' 2>/dev/null ++ $CAT "$image" | cpio --extract --verbose --quiet --to-stdout -- 'lib64/dracut/build-parameter.txt' 'lib/dracut/build-parameter.txt' 'usr/lib/dracut/build-parameter.txt' 2>/dev/null + echo + list_modules + list_files +-- +2.3.0 +