diff options
author | Amadeusz Żołnowski <aidecoe@gentoo.org> | 2014-07-18 07:54:21 +0000 |
---|---|---|
committer | Amadeusz Żołnowski <aidecoe@gentoo.org> | 2014-07-18 07:54:21 +0000 |
commit | 07b9bdb409619fbaacdc896c0785b564c187a93a (patch) | |
tree | 1507225fb7f49d59e505f24229d447c2008508df /sys-kernel | |
parent | Remove masked ruby packages. (diff) | |
download | historical-07b9bdb409619fbaacdc896c0785b564c187a93a.tar.gz historical-07b9bdb409619fbaacdc896c0785b564c187a93a.tar.bz2 historical-07b9bdb409619fbaacdc896c0785b564c187a93a.zip |
Version bump.
NEWS
~~~~
- "rd.cmdline=ask" will ask the user on the console to enter additional
kernel command line parameters
- "rd.hostonly=0" removes all "hostonly" added custom files, which is useful
in combination with "rd.auto" or other specific parameters, if you want to
boot on the same hardware, but the compiled in configuration does not match
your setup anymore
- inst* functions and dracut-install now accept the "-H" flag, which logs all
installed files to /lib/dracut/hostonly-files. This is used to remove those
files, if rd.hostonly is given on the kernel command line
- strstr now only does literal string match, please use strglob and strglobin
for globs
- fixed unpacking of the microcode image on shutdown
- added systemd-gpt-auto-generator
- fcoe: wait for lldpad to be ready
- network: handle "ip=dhcp6"
- network: DCHPv6: set valid_lft and preferred_lft
- dm: support dm-cache
- fstab: do not mount and fsck from fstab if using systemd
- break at switch_root only for bare rd.break and not for any rd.break=...
- nbd: make use of "--systemd-mark", otherwise it gets killed on switch_root
- fcoe-uefi: fixed cmdline parameter generation
- iscsi: deprecate "ip=ibft", use "rd.iscsi.ibft[=1]" from now on
- "lsinitrd -m" now only lists the dracut modules of the image
- a lot of small bugfixes
Package-Manager: portage-2.2.10/cvs/Linux x86_64
Manifest-Sign-Key: 0xF0134531E1DBFAB5
Diffstat (limited to 'sys-kernel')
8 files changed, 569 insertions, 9 deletions
diff --git a/sys-kernel/dracut/ChangeLog b/sys-kernel/dracut/ChangeLog index ca31bfb5d2ca..bd6aa5b8461c 100644 --- a/sys-kernel/dracut/ChangeLog +++ b/sys-kernel/dracut/ChangeLog @@ -1,6 +1,43 @@ # 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.168 2014/06/12 18:47:17 aidecoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.169 2014/07/18 07:54:18 aidecoe Exp $ + +*dracut-038 (18 Jul 2014) + + 18 Jul 2014; Amadeusz Żołnowski <aidecoe@gentoo.org> +dracut-038.ebuild, + +files/038-0001-dracut-functions.sh-support-for-altern.patch, + +files/038-0002-gentoo.conf-let-udevdir-be-handled-by-.patch, + +files/038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch, + +files/038-0004-Install-dracut-install-into-libexec-di.patch, + +files/038-0005-modsign-do-not-hardcode-path-to-keyctl.patch: + Version bump. + + NEWS + ~~~~ + - "rd.cmdline=ask" will ask the user on the console to enter additional + kernel command line parameters + - "rd.hostonly=0" removes all "hostonly" added custom files, which is useful + in combination with "rd.auto" or other specific parameters, if you want to + boot on the same hardware, but the compiled in configuration does not match + your setup anymore + - inst* functions and dracut-install now accept the "-H" flag, which logs all + installed files to /lib/dracut/hostonly-files. This is used to remove those + files, if rd.hostonly is given on the kernel command line + - strstr now only does literal string match, please use strglob and strglobin + for globs + - fixed unpacking of the microcode image on shutdown + - added systemd-gpt-auto-generator + - fcoe: wait for lldpad to be ready + - network: handle "ip=dhcp6" + - network: DCHPv6: set valid_lft and preferred_lft + - dm: support dm-cache + - fstab: do not mount and fsck from fstab if using systemd + - break at switch_root only for bare rd.break and not for any rd.break=... + - nbd: make use of "--systemd-mark", otherwise it gets killed on switch_root + - fcoe-uefi: fixed cmdline parameter generation + - iscsi: deprecate "ip=ibft", use "rd.iscsi.ibft[=1]" from now on + - "lsinitrd -m" now only lists the dracut modules of the image + - a lot of small bugfixes *dracut-037-r3 (12 Jun 2014) diff --git a/sys-kernel/dracut/Manifest b/sys-kernel/dracut/Manifest index 205707636a9f..fa72850bea7f 100644 --- a/sys-kernel/dracut/Manifest +++ b/sys-kernel/dracut/Manifest @@ -29,26 +29,33 @@ AUX 037-0004-Install-dracut-install-into-libexec-di.patch 2581 SHA256 bb83cfecd5 AUX 037-0005-modsign-do-not-hardcode-path-to-keyctl.patch 784 SHA256 47184c81bd1ae0be7cee4829d1ef454478a7092ed8c1826dda2ca16445f19e8a SHA512 747cf9a092dfba948367086fb028b84444971f1e843f7b9bf99d592da726e78f3ab204604958c41e21fe38eda885ab52670c223402d18b62f933e72156df5822 WHIRLPOOL 70fb43941d47fb0e1c376374d9b27c4a8f29a823df0ab57e679ec04ea6da59d551c6a9d1a23b90c16dca7ba9c9f9232ce4db6466c0b911af8c25243621a9235f AUX 037-0006-98systemd-fixup-rootfs-generator-insta.patch 1134 SHA256 dbccdce8b458bb40a1535fcc054d1f0c323be18d14a8c0b850614952c0228e0f SHA512 fa7a728949fbdd13774ebe6f3698ed9a4c4011de589b08c680b3a5f1d0407ef2642f5cb3a6a113eec5c0b74afc2f47b698840f2fdeed06f3307e19276adf3045 WHIRLPOOL b8382be867dbec0601b5124c3bb5243a8b368ee87e2e7e560b355fa5e96294ffa3cf56648be75394f9b304bf4fcaddab74af38e68a17853947c52403be8e92fe AUX 037-0007-udev-rules-add-uaccess-rules.patch 976 SHA256 bc6fb918b773391b7a6eccf5d14a6fd49ae224fa944c2ae3f95363f1e31e36e5 SHA512 36afc6346934769bea18bc761fffd95cfc84866614286f3f0ef84732b0de10ed0dac1c262b5615a6574c367f40ab74e191a9d04f5fdbf300bb24e45e2fe18794 WHIRLPOOL c04eed2ad312e392e0df60b59084334ad139a12356bf0507228d469cec643daf87c4ef6dd191b9b5c50e0fbd5a16c87545c01526d3ab84c9ce3afc915044e39b +AUX 038-0001-dracut-functions.sh-support-for-altern.patch 1485 SHA256 fdc63435b24f492daa2548264aa677112483be4e9b9c934739ad76f9d0e1f36d SHA512 c776122fc893a63397e38d1a196521b8ea69f970f39b1018421eb17c84adfc945e014ce07c92f9ffb16dde099757a51d3a69edbf249359336cf4afd084b6e744 WHIRLPOOL cd758dcfe92d9158da58a352b2ac118f077713b63e7b190054b6a3dca77badd15352e083f93aebb29fe73433e275e182aab246e773c04719fa5bdf8f58205169 +AUX 038-0002-gentoo.conf-let-udevdir-be-handled-by-.patch 948 SHA256 8ca9d11d063b2d748755bf052fa938104fa2955f15127d1bce3c97833378fe69 SHA512 41306f7b326be58a8ee6fa29cb50a94dfe161165e240c947acbb746a6f4bf21e961803eadcab066038e524c69bd696fa504d26895dc713b075b5f677c4ab55ab WHIRLPOOL f53e39d37806113abf8b9cb56d72c6299b814aada670dfd466a0e28dea4bfaeebaa846ec213297ad54afb4eace9a3adde781b3f94fa4016a7b532deb4db6cbc5 +AUX 038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch 2410 SHA256 ddb9df60e10a454a54322bb85153edf819c5d1df6a66517008ac57cc0be543fd SHA512 ed02a712da984f8c0b7bc036d2a6f281714e4679a93195c8ee90a4202d9a514c468c5de26dd31683ea5194357b6abe7182e3d722beaca280c2dd8bdc402a8630 WHIRLPOOL 9c36a1d665c7c217f78715d58b2b87f36cc6143f5d6f226d73b7d2fe941670d0684b5aa3282e76ee831edc53a64385e631218acc7136474e99b0248a2825bd24 +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 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 DIST dracut-037.tar.xz 256964 SHA256 9c4c365c8dabc19b66da2972bbed7b983df520481325b8a37d3f620218620d76 SHA512 db6d5b064bb24a0fe5a09b0fe8915247f6b3028c0182faa7a533624f98fce45f7ad449d1814ec79fc039ee82c1be0afc7ae8987fee7c5a7f8f16480a6a3b0f39 WHIRLPOOL d904b7d8cd1753df20630db1056853a17a020389ff4da8f14b5d2f207d76046911993eed3522a11fe7d78a5770d496430bbfaf4a3ac3fef83c54a817639094aa +DIST dracut-038.tar.xz 259128 SHA256 3b0d4466ff5bb627fcc783f02a757187195567b97bdbf46203dfa4cf52ed6b70 SHA512 a16c66c91fc66d573ea566901037ee50c4552f262f7904ccea6628fefdeb14b55441a4d92b24fb016bdddde053dccdf9d6e9ed50400dfb9f39a7fb8a649eb417 WHIRLPOOL 55c2b70f28fbbcb1c753f21a610f4abb1ba05cc59eb970fa0bee6c41eebe3ac2640688699b6c1e6acea27df2582322872e3d664a55001e43baf98a3c373416a5 EBUILD dracut-034-r4.ebuild 10416 SHA256 79ce6e1d4d6a5ee546309b518e8b92446d3da60c13435929f70c8b54db816d69 SHA512 6a2903b1960dd486ef20c483f8ed8b4ca1430362ffabe07dfad6c2b854164ddc91daf0ba119c6011a432a6bb300fda708d09ca89328073d72bb625b405966cae WHIRLPOOL 077a09b1578a790762d8444ce1a6560f61a1acbcf1520c44ae139d04ae34f3322676178d51a2b9a1462868d3e0f1eea1254869f64810272951c90f4347d57cd9 EBUILD dracut-036-r4.ebuild 7723 SHA256 8a1165848519c870ed145b6554bc679fe1d9cb19a62df1111255b229246c2391 SHA512 97c0be10312ff68ebfce3f17dbfa02e5b3b4fcb51acdab6362e6329d2b93f60f87d81bb10f00377aa372d9b1b9783c705f8ce3187248a6e76571e143ed3c326d WHIRLPOOL 07044379e3a84318a672a8e7c84b4266bdc437030bdc7756726ea9260c6565f5b3159643ec488874adf530b7c8e2868b81691fafba49bbe79087936cdfa110fc EBUILD dracut-037-r1.ebuild 7825 SHA256 56f2633532667404250adf69172601453e9e2a7d7ae55d96552c9f58be00bd0e SHA512 a41defdbae1a57dfe9271c8c5798dfe39451cf958b807ccdfca87bbaf96021f2619cef118ba4838f7e3e74166a6e278791d0daf99611cc69a25f6a12828b0950 WHIRLPOOL 83ea7a5343c8a3ba43b594a483b9692e9324316ccab06e7ac65b535f3d925f84685f34c7531982b893a9bc7981a18e6807edfeafb74203bb42df9f446fcf8e2e EBUILD dracut-037-r2.ebuild 7896 SHA256 48753ee4ba792daf90f8a0bf64509e81810bed094b22d9eb3de569a50544177b SHA512 197fbdc395fe7ff723c875eba3edacb4e489a341494948e9e4bc1ec84924d4951314cbb7e5d6cd9f90c21cb12a6fb46fcb703125f588820f55260d8e1b430f42 WHIRLPOOL 394fa39ed5ef26a839c34cd9f7a5175df9ba6f192fb79221cfc8a368defd93e9463eff8da3787cae3826d2e7686a7a3f2dae19450a93d0da2cd41a234b5803cc EBUILD dracut-037-r3.ebuild 7957 SHA256 e0e9a52924d423202d2393a42a68eb31c3d488c8b4bb48b50b3727a30e796106 SHA512 579b1fe807bd3d48b2a7c315a86de930065045351ab28f60f12810d02711ffd26152d5c734f695e4b2ad00c2c065ae4ce81312d28441e51933ee1993ba94ef2d WHIRLPOOL 316d2ad8ef6b251d9b3e1e5536d1d737946651118bed25cdb0c3840e2102fa208f7a721a7fa9af939b8510f9ee933435fd54a679abf07eb47c2f2394a0bb41bb EBUILD dracut-037.ebuild 7661 SHA256 948aed0aab0ff9c9087d252f7676a6767f0f2b66d5fbae8a2624ddfba641afb7 SHA512 4d02206374fdd4848bc916133ff00b688c8632a22f5171f277ea8e13426fdc3ac91a27f1f1a81049ae118df41974e56fe82deffb89bb975b31b332899bf7bae2 WHIRLPOOL 189ce52267852f9369f3805247b82ec675df9ec0bb91de0e991e2ad5bcb2147364754bf25fbcdddeaf7d44b179b11bfe780d9846b70669306da1d60d5d3d6abf -MISC ChangeLog 71488 SHA256 7a03d4ece329ada5aad032663834d6452ff377cdec6d96e8fae4055ffff9438f SHA512 07c4b5aa8b2d4719fb38e3d0d8b58cff7600609c873bc35b055c5a2f8330a4ca93c6e4dd7faebfb3b27629817624d3376dacb55e064bb3950ef40c7a41a58691 WHIRLPOOL 9bb71d010d01f5f2a03c9e7163ab56beff1abd94b28aa677912be8331db94cef5faf4b17e649c98e90d991239791c8eed253c7eecbf77acbe0f7153b344001ea +EBUILD dracut-038.ebuild 7822 SHA256 ae749342f1b21a449957aec4b073c42f4fa679a4b41615f20f2f7f202b256cda SHA512 88a12a05afa57a0ccbc6b08c1a162bc8cc65278c214dc8613a67eff07e1292ee6af0afa0d934a4a4e95a0695453dd7679b8623792c8238251e12e346354fca49 WHIRLPOOL d831992f94bf4e38f9ef6e76e98c9665e0904c375458ab36e0ef112ad83f94218a1a2da9078b92334fbec849e5597dd982ccbe147c5bcf6d4f69eb352b3e1d3d +MISC ChangeLog 73297 SHA256 bfc3f849679c9c44db88209f178a2db726b4e17eeb92d56fa302dd22322c06e6 SHA512 96167c4eabd0a50a098e7b5be7faa1568e8655ab5a2d3af7d818ecc5495422849b2371fb319aeccd830be96f1d06c39434ae2fc635d6f71f96ba95a43689f6bb WHIRLPOOL 2943feba0283cb7c1c870588d65b03652713be31f7ada53aac5b30fc1d78fc4d50145ffb5006b7684ae9581debcbb908ebcd8b20cbf9f774e6c3c7fbed9b9cb4 MISC metadata.xml 906 SHA256 5f19b725d0669877fdd7814634b7aa7dd73331459bace52de02908417b833c3f SHA512 c5838d36080528d541b67cb38de17cc2351f7e5e17ab060c58f037792225ea223ade6b7e69376f4a9256b0bb3dcf4de578dcd50ee1c7d04a3f3288ca3c1ada43 WHIRLPOOL 532ea421fab965094820d5c0961a00ca38c858461f572a0cd4a145aa90340a569ee942062338ae03773c2709a08e4882f3176333aa5383b7e3c467cb01c0874d -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iQEcBAEBCAAGBQJTmfW2AAoJEPATRTHh2/q1FmkH/1Pg/ZBPfdkCeDA/hP+VpFSO -nL59GYKmnk3Dbd/dAEZagExU6dj1V27BGaPAWn2pE50gBZKBgm54AJSPz6uH7yZ7 -eax6Dn/AS7CkuLfBh2akVbCNP7aVv6LtQsIIY1wR6sFqy290sXiMdPSUmyXLk4b6 -H8prb1ThtDDL5zq/LQzvwHY1nLZ/lPVrBM+rv67NMteLNN9ehg3E1NC//spTJDZ5 -EfDw/+3h6WSYCWfJU3DJkYMbtfV3YG3EtvJxpzAdlbrJV7QTHWiPXW8PTH5Z88kC -jriLE3EAcq2HLea0WL8f4fOgHE9MdSaX5G8wwgyn8YOtqNUnMGAo4q2mEjbtBeM= -=52tj +iQEcBAEBCAAGBQJTyNKrAAoJEPATRTHh2/q1Z48H/Rjf0AnaiYUekA6hDXM5QjxB +DaUXZ+6kJwfLIF71jcHi56ORxdNPtqmZSFtASTasjRhYYc+R+Nid5C9lgfhvjqtN +0ShxdTOJBsBIYjAmvkrsNzRiEgzAg1teXGmhALBew6VvtoKpudVDouqHB3ze847P +VZe6ytIT4RaxbZbsunI35asF2FcgcHa9PPpkgeDW9tdOuepsM6YMtzSHsqJA2bvh +k/U5HthfJfbmzXNvLSrRPEhw586atbuZLqwcMbr9FWXk/RILsP+zQfXiIr+4cSpj +8tlq1pItFmit3VYXs1JSEpbx+/5CvSIILLdGN6YzZGaaLpyLVxIH+bKJ4QwdxXA= +=GaNM -----END PGP SIGNATURE----- diff --git a/sys-kernel/dracut/dracut-038.ebuild b/sys-kernel/dracut/dracut-038.ebuild new file mode 100644 index 000000000000..40fd505f07af --- /dev/null +++ b/sys-kernel/dracut/dracut-038.ebuild @@ -0,0 +1,264 @@ +# 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.ebuild,v 1.1 2014/07/18 07:54:18 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" + ) + +# +# 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-0001-dracut-functions.sh-support-for-altern.patch b/sys-kernel/dracut/files/038-0001-dracut-functions.sh-support-for-altern.patch new file mode 100644 index 000000000000..04ba6dcee10a --- /dev/null +++ b/sys-kernel/dracut/files/038-0001-dracut-functions.sh-support-for-altern.patch @@ -0,0 +1,41 @@ +From 5ade0eafee011a55c408ab315c33e7fb76220ce7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name> +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 <alexander@tsoy.me>. + +Conflicts: + dracut-functions.sh +--- + dracut-functions.sh | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/dracut-functions.sh b/dracut-functions.sh +index d30e835..70444b8 100755 +--- a/dracut-functions.sh ++++ b/dracut-functions.sh +@@ -928,6 +928,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.0.0 + diff --git a/sys-kernel/dracut/files/038-0002-gentoo.conf-let-udevdir-be-handled-by-.patch b/sys-kernel/dracut/files/038-0002-gentoo.conf-let-udevdir-be-handled-by-.patch new file mode 100644 index 000000000000..5b5e7a8720a9 --- /dev/null +++ b/sys-kernel/dracut/files/038-0002-gentoo.conf-let-udevdir-be-handled-by-.patch @@ -0,0 +1,30 @@ +From 0c135381d80a391bc57e07b60204ef4699287891 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name> +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.0.0 + diff --git a/sys-kernel/dracut/files/038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch b/sys-kernel/dracut/files/038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch new file mode 100644 index 000000000000..9ea5d414b6d2 --- /dev/null +++ b/sys-kernel/dracut/files/038-0003-Use-the-same-paths-in-dracut.sh-as-tho.patch @@ -0,0 +1,74 @@ +From 5825d40138f3738a8b70559af6f6f16927068959 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name> +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 7383309..842f6b1 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 c6da411..3764d3d 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -26,10 +26,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 +@@ -54,7 +57,6 @@ EOF + } + + long_usage() { +- [[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut + if [[ -f $dracutbasedir/dracut-version.sh ]]; then + . $dracutbasedir/dracut-version.sh + fi +@@ -652,8 +654,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 +@@ -774,7 +774,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.0.0 + diff --git a/sys-kernel/dracut/files/038-0004-Install-dracut-install-into-libexec-di.patch b/sys-kernel/dracut/files/038-0004-Install-dracut-install-into-libexec-di.patch new file mode 100644 index 000000000000..64f730fb6fea --- /dev/null +++ b/sys-kernel/dracut/files/038-0004-Install-dracut-install-into-libexec-di.patch @@ -0,0 +1,81 @@ +From bd2d9c293c93701944b164da6a616febc35a5db7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name> +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 842f6b1..1872896 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 19b5e1f..d2ffc2c 100755 +--- a/configure ++++ b/configure +@@ -61,6 +61,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 70444b8..aa0949d 100755 +--- a/dracut-functions.sh ++++ b/dracut-functions.sh +@@ -744,6 +744,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 + fi +diff --git a/dracut.sh b/dracut.sh +index 3764d3d..cfb2c33 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -27,6 +27,7 @@ + dracut_args=( "$@" ) + + # base dirs ++libexecdir=/usr/libexec + pkglibdir=/usr/lib/dracut + dracutbasedir="$pkglibdir" + +-- +2.0.0 + diff --git a/sys-kernel/dracut/files/038-0005-modsign-do-not-hardcode-path-to-keyctl.patch b/sys-kernel/dracut/files/038-0005-modsign-do-not-hardcode-path-to-keyctl.patch new file mode 100644 index 000000000000..b5e1a49a3e26 --- /dev/null +++ b/sys-kernel/dracut/files/038-0005-modsign-do-not-hardcode-path-to-keyctl.patch @@ -0,0 +1,26 @@ +From 461a523086f2077908bebda6467e6b6d20caba78 Mon Sep 17 00:00:00 2001 +From: Alexander Tsoy <alexander@tsoy.me> +Date: Mon, 31 Mar 2014 17:56:13 +0400 +Subject: [PATCH 5/5] modsign: do not hardcode path to keyctl + +https://bugs.gentoo.org/show_bug.cgi?id=506094 +--- + modules.d/03modsign/module-setup.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/03modsign/module-setup.sh b/modules.d/03modsign/module-setup.sh +index 09285d3..cc0e241 100755 +--- a/modules.d/03modsign/module-setup.sh ++++ b/modules.d/03modsign/module-setup.sh +@@ -29,7 +29,7 @@ depends() { + # called by dracut + install() { + inst_dir /lib/modules/keys +- inst_binary /usr/bin/keyctl ++ inst_binary keyctl + + inst_hook pre-trigger 01 "$moddir/load-modsign-keys.sh" + +-- +2.0.0 + |