summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/genkernel')
-rw-r--r--sys-kernel/genkernel/Manifest3
-rw-r--r--sys-kernel/genkernel/genkernel-4.1.1.ebuild303
-rw-r--r--sys-kernel/genkernel/genkernel-9999.ebuild5
3 files changed, 310 insertions, 1 deletions
diff --git a/sys-kernel/genkernel/Manifest b/sys-kernel/genkernel/Manifest
index 8bd199f094bc..65b21a4b3f14 100644
--- a/sys-kernel/genkernel/Manifest
+++ b/sys-kernel/genkernel/Manifest
@@ -19,6 +19,7 @@ DIST fuse-2.9.9.tar.gz 1813177 BLAKE2B 9e9141380bda46eb0bcce325c6fd293fe3844fe88
DIST genkernel-3.5.3.3.tar.xz 331180 BLAKE2B 0f83b973505ccb0a92ae24e92509710bf96991f36ca55975ffefdf1bd3e835bd72bb413688468a05e6a5fff2ec16e64816f8ccfe2530c9f1e9169d19a86a2231 SHA512 9170731f59a1476aa597549ac55feb3583bed249e50d1697292571caf25c5ca746a1db9e811f2009d55aea21d739ef0ab3e385acd81504bbbccc8f7346205d71
DIST genkernel-4.0.10.tar.xz 460816 BLAKE2B d5922eede1192bb95ca235106a70118826c2c4c078f741e25954485f142d858bf612f35b94553fc409e4f6641b256a2940f83131c5b4bc7d6dbae85019bee7ff SHA512 29dc29b346b132cc6e7ea5298e49c93d01ba28531928cb7a6125864c7d03b74f70bc74043b220dfbbb6651ad67fcbc3d8ed8a2d0f40d271b83e9a8ab0325a2dd
DIST genkernel-4.1.0.tar.xz 463696 BLAKE2B 74ca0207cdb54e4627d269dd83afa34045c283a2f8fd8fad6c25d566c35d8d2411e4f73e50317e8427717333024d1a4f86485caa58f5275f63273b6c52943873 SHA512 50bf7c051ac2113c14861c6ab30f8db880d9e934cedeb848f14f030286e5445b9f1b4ba1a270c281d8caacb893651325c9df0ce26a782249ca60f9f67e106807
+DIST genkernel-4.1.1.tar.xz 463148 BLAKE2B 87f64fc7e6511b11315a3d92e73701d3d82d94e785291377f4d03c4c05bd63a26bae8258130166a6c8326f4f220cef91e1b576d151be50ac594280bff0cbb82e SHA512 47a8be0ba9d9956cbb549ec8d23cc6e1b86ca8e78d8684d1cd5f6d9d41e4e2442f09b6b777e244505dbcaf1e73a7c48766d9984068d88e8b9911bafa34f9d347
DIST gnupg-1.4.22.tar.bz2 3746546 BLAKE2B 9a2d37eeab10f2a7353804098e865ad45db846696a00a47f5bebf47145f79e0d2bf9c01c0195e2fe79af07946a3feac0d4589656c3e698a3a548ff1dd74ce759 SHA512 c03acac0fa55761470bb085d78a44e2b99ebb187e8396cbb031a184b1e40bef2a40c91da07755d1a20610a3daa6aa1eefea2d12a0dbd5a79a45466166419c708
DIST gnupg-1.4.23.tar.bz2 3749353 BLAKE2B ec5e6bef0c7bb2a65813d7852cebeaa24c4855f9d9d9e802070da50b89fff56b747682933aa766dd130f849efcfe28f7aa74f3153405429bcf3845ef29c6dd6e SHA512 78dc52a2010202a4afc8814b29fda657a6c9fe230d5e7db11ae040edd2b0ca819e1baa4dbd6c0d04d36cd353df484e83f52d17759d2891c2cf7025c0b5d36612
DIST hwids-20200306.tar.gz 3512152 BLAKE2B 6a6ee48598e72f97a90bff8f45aacb699218570ede5b60ed119ebae78de6cd4b92e02f96cf57c83710da699be9a7dcdfdef8d404539e04b664298874b35e54ce SHA512 eff1d2783925ca459b387fbaa5cf68a98aa4209ab8509ad92a902b4d02cc7f4a47e5506c2beed4c792d24a8ab636ad77b376a92b59ae4f605d1b5258350ff250
@@ -27,6 +28,7 @@ DIST kmod-27.tar.xz 548924 BLAKE2B 9f12bf5792d4c867e28e0776c279369c063e84269212e
DIST libaio-0.3.112.tar.gz 46977 BLAKE2B 088f3b195a65bdc97ae2318e47af17c65259ed3208dca7bfef93c81a800602085e5b2078dbd436c740be316d0ebd923a1b3b7c0808257e2e7c7fb0f7ae1e0dba SHA512 5f984529c9f747a6c82f1e4457fc0832bb1fc299ae6e700f2ac5a8ea7b9bfc6ea1e75809728cc115a020cff6685ed1f4e38c6aeacc1ea98dfccce04dd19dafaa
DIST libgcrypt-1.8.6.tar.bz2 2997781 BLAKE2B 90ecacae75633dfff248b9c07a72126aaa4a5c285141f89c42237326ae3bfb99c937eef05d87b466c3d8f5cf022725ccee5c0dbc74d4eb57523a8a2892864b65 SHA512 28a26f665b7e327b79815849ee6e84ab384ee9105d81d4d06e4feeea07d986f940cbbb9faaae8712068cace45b4110a62965a93201da0e1ad008b65808b2b29b
DIST libgpg-error-1.38.tar.bz2 957637 BLAKE2B 9532402466748503805366b94c82c9adfe5b448f885c26b33ebf7ba9957161ca046b4057f5ca862224accb9f2af731652a55d20e7a4ab69107190a58c8e11ad6 SHA512 b936a4738c2cee111d855b1ba3ec433da8c77799a87d1f71275f974f871ebfa593c9db06ea53f0490b6cd6b94bef34f6052a587a4d13d839ec0128500c2dd9de
+DIST libgpg-error-1.39.tar.bz2 961676 BLAKE2B 8753a9295ca57ba79142ffbc7fa01a986addcdd6a8860cf80c9e1bf9f6f9dfce874f804205a5cdd956e026eb006f2662110c63e7ed52c7a42ee0c45923ae52be SHA512 b28be183ac3d3920363558c4b5b2c24f9074a302799915cc076674bb349dcfb6f09160bec1d3fb62e04047c3ce432d345f36b0905100a88cc730b53d4eb78e42
DIST lzo-2.10.tar.gz 600622 BLAKE2B 124b6645a2cb7f01f153c9fa6e1976378bdfb224841a7b45ab19c584c6ef704c20719ae87640b8d83f3f9269a57d9cc2e870a914124dac03a2ef1336e9feb9c9 SHA512 a3dae5e4a6b93b1f5bf7435e8ab114a9be57252e9efc5dd444947d7a2d031b0819f34bcaeb35f60b5629a01b1238d738735a64db8f672be9690d3c80094511a4
DIST mdadm-4.0.tar.xz 430780 BLAKE2B f08a67452398c864d73c78e2a7258d89c5c81b83dd136d4cd7e31e46b22d75ff67ecf553dc22f55dca418409daded51a399728dfdbd36039e828cad3233774e6 SHA512 12fb26e6b9c1912698defa406e5e47a7ca8d68d4a9aa7acdc9b463ee2d4a37fc6ecef6beb5395ff619018c3f6bdb6d8c573060d027707540f645ad2265170e8b
DIST mdadm-4.1.tar.xz 440756 BLAKE2B df0506d937c2aa309d7c68804f66f7dcd51783288594bf746832311c64b8cf82004af4af5f246c5f9753f1de324ff7d49b5ee752d6a00ec03864f7885389706e SHA512 0859c5d3e786345d93ff2c3b291ca8866ba60f1375479e5b4d343124f6824140a8268d42b8ae603b069edba761aa30aaf20d49e9ec54dfcbad34bad3bea0e433
@@ -42,5 +44,6 @@ DIST util-linux-2.35.2.tar.xz 5150488 BLAKE2B 93eb90ab33db7795b46425ec4ec87f8a2d
DIST util-linux-2.36.tar.xz 5242420 BLAKE2B a03b626a376815f37a17b3808d1d421c7ec27a133edf857116603de38f7e13f527687691d0c8aa68f4f6868be6f3bcc64573d759308d74731107e02067449ce6 SHA512 cbb4975da8d99a1edd45514171d59ea7b019ce0f77a81e88b447a733f725e91c53540d9dc78bc626dc011dca129b8b150aaf9e64ccf62a4202ae816581acf4fd
DIST xfsprogs-5.6.0.tar.xz 1253112 BLAKE2B 7928b29458e3ad8251b48b6fb14a515e0128701c40cdfa63c05fc85173c70da3f34c948b7791f12ac5bb8d5f0c634016dac71c328a8917d1065aa7fb4cac3291 SHA512 a6bee55b0a23316c73f3921234d1dbaa4cbe91c12e79264e5f9bfe1356a24baa0ab25270405a46e4613a7e48443ef21997ff4f5962663777bed373f89ca29701
DIST xfsprogs-5.7.0.tar.xz 1258772 BLAKE2B 3dab72c1c64d88194f677ed434fe00c8c2eac10c7c6d471d3b32595eb27a76ec1fa20955a08d7c2e371a0d160bce741afad0998731d2fee497917e0d7a4e70f7 SHA512 6a333b7e4fc6afb1689f6bbbbf07b97058cce2fde437fd3ed5b010276c050f886e5c0317ea16aedb23f579a9fed5edc4e7e64b4af5f0331dc8fd97b3251dd231
+DIST xz-5.2.5.tar.gz 1791345 BLAKE2B aded57324e129572c41646b3cc3b0b59a459452d9338d9245663b63dac2a463fb1f1b2b1d2d4ad3c09cb71fb8439df52cd94f24db99e782fc899b94a288a3043 SHA512 7443674247deda2935220fbc4dfc7665e5bb5a260be8ad858c8bd7d7b9f0f868f04ea45e62eb17c0a5e6a2de7c7500ad2d201e2d668c48ca29bd9eea5a73a3ce
DIST zlib-1.2.11.tar.gz 607698 BLAKE2B 6bfc4bca5dcadba8a0d4121a2b3ed0bfe440c261003521862c8e6381f1a6f0a72d3fc037351d30afd7ef321e8e8d2ec817c046ac749f2ca0c97fbdc2f7e840b7 SHA512 73fd3fff4adeccd4894084c15ddac89890cd10ef105dd5e1835e1e9bbb6a49ff229713bd197d203edfa17c2727700fce65a2a235f07568212d820dca88b528ae
DIST zstd-1.4.5.tar.gz 1987927 BLAKE2B 1497d4e87040e5c71466468ebf1a57f4073666f2b005229925bc1d95a4b4fcb2a51d88bb79be20f21860e5750da42f8aac21d2997421d07ba37bd6bb12a28b55 SHA512 b03c497c3e0590c3d384cb856e3024f144b2bfac0d805d80e68deafa612c68237f12a2d657416d476a28059e80936c79f099fc42331464b417593895ea214387
diff --git a/sys-kernel/genkernel/genkernel-4.1.1.ebuild b/sys-kernel/genkernel/genkernel-4.1.1.ebuild
new file mode 100644
index 000000000000..5a8771d18303
--- /dev/null
+++ b/sys-kernel/genkernel/genkernel-4.1.1.ebuild
@@ -0,0 +1,303 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# genkernel-9999 -> latest Git branch "master"
+# genkernel-VERSION -> normal genkernel release
+
+EAPI="7"
+
+inherit bash-completion-r1
+
+# Whenever you bump a GKPKG, check if you have to move
+# or add new patches!
+VERSION_BCACHE_TOOLS="1.0.8_p20141204"
+VERSION_BOOST="1.73.0"
+VERSION_BTRFS_PROGS="5.7"
+VERSION_BUSYBOX="1.32.0"
+VERSION_COREUTILS="8.32"
+VERSION_CRYPTSETUP="2.3.3"
+VERSION_DMRAID="1.0.0.rc16-3"
+VERSION_DROPBEAR="2020.80"
+VERSION_EUDEV="3.2.9"
+VERSION_EXPAT="2.2.9"
+VERSION_E2FSPROGS="1.45.6"
+VERSION_FUSE="2.9.9"
+VERSION_GPG="1.4.23"
+VERSION_HWIDS="20200306"
+VERSION_ISCSI="2.0.878"
+VERSION_JSON_C="0.13.1"
+VERSION_KMOD="27"
+VERSION_LIBAIO="0.3.112"
+VERSION_LIBGCRYPT="1.8.6"
+VERSION_LIBGPGERROR="1.39"
+VERSION_LVM="2.02.187"
+VERSION_LZO="2.10"
+VERSION_MDADM="4.1"
+VERSION_POPT="1.18"
+VERSION_STRACE="5.8"
+VERSION_THIN_PROVISIONING_TOOLS="0.8.5"
+VERSION_UNIONFS_FUSE="2.0"
+VERSION_UTIL_LINUX="2.36"
+VERSION_XFSPROGS="5.7.0"
+VERSION_XZ="5.2.5"
+VERSION_ZLIB="1.2.11"
+VERSION_ZSTD="1.4.5"
+
+COMMON_URI="
+ https://github.com/g2p/bcache-tools/archive/399021549984ad27bf4a13ae85e458833fe003d7.tar.gz -> bcache-tools-${VERSION_BCACHE_TOOLS}.tar.gz
+ https://dl.bintray.com/boostorg/release/${VERSION_BOOST}/source/boost_${VERSION_BOOST//./_}.tar.bz2
+ https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${VERSION_BTRFS_PROGS}.tar.xz
+ https://www.busybox.net/downloads/busybox-${VERSION_BUSYBOX}.tar.bz2
+ mirror://gnu/coreutils/coreutils-${VERSION_COREUTILS}.tar.xz
+ https://www.kernel.org/pub/linux/utils/cryptsetup/v$(ver_cut 1-2 ${VERSION_CRYPTSETUP})/cryptsetup-${VERSION_CRYPTSETUP}.tar.xz
+ https://people.redhat.com/~heinzm/sw/dmraid/src/dmraid-${VERSION_DMRAID}.tar.bz2
+ https://dev.gentoo.org/~whissi/dist/dropbear/dropbear-${VERSION_DROPBEAR}.tar.bz2
+ https://dev.gentoo.org/~blueness/eudev/eudev-${VERSION_EUDEV}.tar.gz
+ https://github.com/libexpat/libexpat/releases/download/R_${VERSION_EXPAT//\./_}/expat-${VERSION_EXPAT}.tar.xz
+ https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${VERSION_E2FSPROGS}/e2fsprogs-${VERSION_E2FSPROGS}.tar.xz
+ https://github.com/libfuse/libfuse/releases/download/fuse-${VERSION_FUSE}/fuse-${VERSION_FUSE}.tar.gz
+ mirror://gnupg/gnupg/gnupg-${VERSION_GPG}.tar.bz2
+ https://github.com/gentoo/hwids/archive/hwids-${VERSION_HWIDS}.tar.gz
+ https://github.com/open-iscsi/open-iscsi/archive/${VERSION_ISCSI}.tar.gz -> open-iscsi-${VERSION_ISCSI}.tar.gz
+ https://s3.amazonaws.com/json-c_releases/releases/json-c-${VERSION_JSON_C}.tar.gz
+ https://www.kernel.org/pub/linux/utils/kernel/kmod/kmod-${VERSION_KMOD}.tar.xz
+ https://releases.pagure.org/libaio/libaio-${VERSION_LIBAIO}.tar.gz
+ mirror://gnupg/libgcrypt/libgcrypt-${VERSION_LIBGCRYPT}.tar.bz2
+ mirror://gnupg/libgpg-error/libgpg-error-${VERSION_LIBGPGERROR}.tar.bz2
+ https://mirrors.kernel.org/sourceware/lvm2/LVM2.${VERSION_LVM}.tgz
+ https://www.oberhumer.com/opensource/lzo/download/lzo-${VERSION_LZO}.tar.gz
+ https://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-${VERSION_MDADM}.tar.xz
+ http://ftp.rpm.org/popt/releases/popt-1.x/popt-${VERSION_POPT}.tar.gz
+ https://github.com/strace/strace/releases/download/v${VERSION_STRACE}/strace-${VERSION_STRACE}.tar.xz
+ https://github.com/jthornber/thin-provisioning-tools/archive/v${VERSION_THIN_PROVISIONING_TOOLS}.tar.gz -> thin-provisioning-tools-${VERSION_THIN_PROVISIONING_TOOLS}.tar.gz
+ https://github.com/rpodgorny/unionfs-fuse/archive/v${VERSION_UNIONFS_FUSE}.tar.gz -> unionfs-fuse-${VERSION_UNIONFS_FUSE}.tar.gz
+ https://www.kernel.org/pub/linux/utils/util-linux/v${VERSION_UTIL_LINUX:0:4}/util-linux-${VERSION_UTIL_LINUX}.tar.xz
+ https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-${VERSION_XFSPROGS}.tar.xz
+ https://tukaani.org/xz/xz-${VERSION_XZ}.tar.gz
+ https://zlib.net/zlib-${VERSION_ZLIB}.tar.gz
+ https://github.com/facebook/zstd/archive/v${VERSION_ZSTD}.tar.gz -> zstd-${VERSION_ZSTD}.tar.gz
+"
+
+if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+ inherit git-r3
+ S="${WORKDIR}/${P}"
+ SRC_URI="${COMMON_URI}"
+else
+ SRC_URI="https://dev.gentoo.org/~whissi/dist/genkernel/${P}.tar.xz
+ ${COMMON_URI}"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="Gentoo automatic kernel building scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Genkernel https://gitweb.gentoo.org/proj/genkernel.git/"
+
+LICENSE="GPL-2"
+SLOT="0"
+RESTRICT=""
+IUSE="ibm +firmware"
+
+# Note:
+# We need sys-devel/* deps like autoconf or automake at _runtime_
+# because genkernel will usually build things like LVM2, cryptsetup,
+# mdadm... during initramfs generation which will require these
+# things.
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-arch/cpio
+ >=app-misc/pax-utils-1.2.2
+ app-portage/elt-patches
+ dev-util/gperf
+ sys-apps/sandbox
+ sys-devel/autoconf
+ sys-devel/autoconf-archive
+ sys-devel/automake
+ sys-devel/libtool
+ virtual/pkgconfig
+ firmware? ( sys-kernel/linux-firmware )"
+
+if [[ ${PV} == 9999* ]]; then
+ DEPEND="${DEPEND} app-text/asciidoc"
+fi
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ else
+ local gk_src_file
+ for gk_src_file in ${A} ; do
+ if [[ ${gk_src_file} == genkernel-* ]] ; then
+ unpack "${gk_src_file}"
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999* ]] ; then
+ einfo "Updating version tag"
+ GK_V="$(git describe --tags | sed 's:^v::')-git"
+ sed "/^GK_V/s,=.*,='${GK_V}',g" -i "${S}"/genkernel
+ einfo "Producing ChangeLog from Git history..."
+ pushd "${S}/.git" >/dev/null || die
+ git log > "${S}"/ChangeLog || die
+ popd >/dev/null || die
+ fi
+
+ # Update software.sh
+ sed -i \
+ -e "s:VERSION_BCACHE_TOOLS:${VERSION_BCACHE_TOOLS}:"\
+ -e "s:VERSION_BOOST:${VERSION_BOOST}:"\
+ -e "s:VERSION_BTRFS_PROGS:${VERSION_BTRFS_PROGS}:"\
+ -e "s:VERSION_BUSYBOX:${VERSION_BUSYBOX}:"\
+ -e "s:VERSION_COREUTILS:${VERSION_COREUTILS}:"\
+ -e "s:VERSION_CRYPTSETUP:${VERSION_CRYPTSETUP}:"\
+ -e "s:VERSION_DMRAID:${VERSION_DMRAID}:"\
+ -e "s:VERSION_DROPBEAR:${VERSION_DROPBEAR}:"\
+ -e "s:VERSION_EUDEV:${VERSION_EUDEV}:"\
+ -e "s:VERSION_EXPAT:${VERSION_EXPAT}:"\
+ -e "s:VERSION_E2FSPROGS:${VERSION_E2FSPROGS}:"\
+ -e "s:VERSION_FUSE:${VERSION_FUSE}:"\
+ -e "s:VERSION_GPG:${VERSION_GPG}:"\
+ -e "s:VERSION_HWIDS:${VERSION_HWIDS}:"\
+ -e "s:VERSION_ISCSI:${VERSION_ISCSI}:"\
+ -e "s:VERSION_JSON_C:${VERSION_JSON_C}:"\
+ -e "s:VERSION_KMOD:${VERSION_KMOD}:"\
+ -e "s:VERSION_LIBAIO:${VERSION_LIBAIO}:"\
+ -e "s:VERSION_LIBGCRYPT:${VERSION_LIBGCRYPT}:"\
+ -e "s:VERSION_LIBGPGERROR:${VERSION_LIBGPGERROR}:"\
+ -e "s:VERSION_LVM:${VERSION_LVM}:"\
+ -e "s:VERSION_LZO:${VERSION_LZO}:"\
+ -e "s:VERSION_MDADM:${VERSION_MDADM}:"\
+ -e "s:VERSION_MULTIPATH_TOOLS:${VERSION_MULTIPATH_TOOLS}:"\
+ -e "s:VERSION_POPT:${VERSION_POPT}:"\
+ -e "s:VERSION_STRACE:${VERSION_STRACE}:"\
+ -e "s:VERSION_THIN_PROVISIONING_TOOLS:${VERSION_THIN_PROVISIONING_TOOLS}:"\
+ -e "s:VERSION_UNIONFS_FUSE:${VERSION_UNIONFS_FUSE}:"\
+ -e "s:VERSION_USERSPACE_RCU:${VERSION_USERSPACE_RCU}:"\
+ -e "s:VERSION_UTIL_LINUX:${VERSION_UTIL_LINUX}:"\
+ -e "s:VERSION_XFSPROGS:${VERSION_XFSPROGS}:"\
+ -e "s:VERSION_XZ:${VERSION_XZ}:"\
+ -e "s:VERSION_ZLIB:${VERSION_ZLIB}:"\
+ -e "s:VERSION_ZSTD:${VERSION_ZSTD}:"\
+ "${S}"/defaults/software.sh \
+ || die "Could not adjust versions"
+}
+
+src_compile() {
+ if [[ ${PV} == 9999* ]] ; then
+ emake
+ fi
+}
+
+src_install() {
+ insinto /etc
+ doins "${S}"/genkernel.conf
+
+ doman genkernel.8
+ dodoc AUTHORS ChangeLog README TODO
+ dobin genkernel
+ rm -f genkernel genkernel.8 AUTHORS ChangeLog README TODO genkernel.conf
+
+ if use ibm ; then
+ cp "${S}"/arch/ppc64/kernel-2.6{-pSeries,} || die
+ else
+ cp "${S}"/arch/ppc64/kernel-2.6{.g5,} || die
+ fi
+
+ insinto /usr/share/genkernel
+ doins -r "${S}"/*
+
+ fperms +x /usr/share/genkernel/gen_worker.sh
+
+ newbashcomp "${FILESDIR}"/genkernel-4.bash "${PN}"
+ insinto /etc
+ doins "${FILESDIR}"/initramfs.mounts
+
+ pushd "${DISTDIR}" &>/dev/null || die
+ insinto /usr/share/genkernel/distfiles
+ doins ${A/${P}.tar.xz/}
+ popd &>/dev/null || die
+}
+
+pkg_postinst() {
+ # Wiki is out of date
+ #echo
+ #elog 'Documentation is available in the genkernel manual page'
+ #elog 'as well as the following URL:'
+ #echo
+ #elog 'https://wiki.gentoo.org/wiki/Genkernel'
+ #echo
+
+ local replacing_version
+ for replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test "${replacing_version}" -lt 4 ; then
+ # This is an upgrade which requires user review
+
+ ewarn ""
+ ewarn "Genkernel v4.x is a new major release which touches"
+ ewarn "nearly everything. Be careful, read updated manpage"
+ ewarn "and pay special attention to program output regarding"
+ ewarn "changed kernel command-line parameters!"
+
+ # Show this elog only once
+ break
+ fi
+ done
+
+ if [[ $(find /boot -name 'kernel-genkernel-*' 2>/dev/null | wc -l) -gt 0 ]] ; then
+ ewarn ''
+ ewarn 'Default kernel filename was changed from "kernel-genkernel-<ARCH>-<KV>"'
+ ewarn 'to "vmlinuz-<KV>". Please be aware that due to lexical ordering the'
+ ewarn '*default* boot entry in your boot manager could still point to last kernel'
+ ewarn 'built with genkernel before that name change, resulting in booting old'
+ ewarn 'kernel when not paying attention on boot.'
+ fi
+
+ # Show special warning for users depending on remote unlock capabilities
+ local gk_config="${EROOT}/etc/genkernel.conf"
+ if [[ -f "${gk_config}" ]] ; then
+ if grep -q -E "^SSH=[\"\']?yes" "${gk_config}" 2>/dev/null ; then
+ if ! grep -q dosshd /proc/cmdline 2>/dev/null ; then
+ ewarn ""
+ ewarn "IMPORTANT: SSH is currently enabled in your genkernel config"
+ ewarn "file (${gk_config}). However, 'dosshd' is missing from current"
+ ewarn "kernel command-line. You MUST add 'dosshd' to keep sshd enabled"
+ ewarn "in genkernel v4+ initramfs!"
+ fi
+ fi
+
+ if grep -q -E "^CMD_CALLBACK=.*emerge.*@module-rebuild" "${gk_config}" 2>/dev/null ; then
+ elog ""
+ elog "Please remove 'emerge @module-rebuild' from genkernel config"
+ elog "file (${gk_config}) and make use of new MODULEREBUILD option"
+ elog "instead."
+ fi
+ fi
+
+ local n_root_args=$(grep -o -- '\<root=' /proc/cmdline 2>/dev/null | wc -l)
+ if [[ ${n_root_args} > 1 ]] ; then
+ ewarn "WARNING: Multiple root arguments (root=) on kernel command-line detected!"
+ ewarn "If you are appending non-persistent device names to kernel command-line,"
+ ewarn "next reboot could fail in case running system and initramfs do not agree"
+ ewarn "on detected root device name!"
+ fi
+
+ if [[ -d /run ]] ; then
+ local permission_run_expected="drwxr-xr-x"
+ local permission_run=$(stat -c "%A" /run)
+ if [[ "${permission_run}" != "${permission_run_expected}" ]] ; then
+ ewarn "Found the following problematic permissions:"
+ ewarn ""
+ ewarn " ${permission_run} /run"
+ ewarn ""
+ ewarn "Expected:"
+ ewarn ""
+ ewarn " ${permission_run_expected} /run"
+ ewarn ""
+ ewarn "This is known to be causing problems for any UDEV-enabled service."
+ fi
+ fi
+}
diff --git a/sys-kernel/genkernel/genkernel-9999.ebuild b/sys-kernel/genkernel/genkernel-9999.ebuild
index deecdc19176f..5a8771d18303 100644
--- a/sys-kernel/genkernel/genkernel-9999.ebuild
+++ b/sys-kernel/genkernel/genkernel-9999.ebuild
@@ -29,7 +29,7 @@ VERSION_JSON_C="0.13.1"
VERSION_KMOD="27"
VERSION_LIBAIO="0.3.112"
VERSION_LIBGCRYPT="1.8.6"
-VERSION_LIBGPGERROR="1.38"
+VERSION_LIBGPGERROR="1.39"
VERSION_LVM="2.02.187"
VERSION_LZO="2.10"
VERSION_MDADM="4.1"
@@ -39,6 +39,7 @@ VERSION_THIN_PROVISIONING_TOOLS="0.8.5"
VERSION_UNIONFS_FUSE="2.0"
VERSION_UTIL_LINUX="2.36"
VERSION_XFSPROGS="5.7.0"
+VERSION_XZ="5.2.5"
VERSION_ZLIB="1.2.11"
VERSION_ZSTD="1.4.5"
@@ -72,6 +73,7 @@ COMMON_URI="
https://github.com/rpodgorny/unionfs-fuse/archive/v${VERSION_UNIONFS_FUSE}.tar.gz -> unionfs-fuse-${VERSION_UNIONFS_FUSE}.tar.gz
https://www.kernel.org/pub/linux/utils/util-linux/v${VERSION_UTIL_LINUX:0:4}/util-linux-${VERSION_UTIL_LINUX}.tar.xz
https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-${VERSION_XFSPROGS}.tar.xz
+ https://tukaani.org/xz/xz-${VERSION_XZ}.tar.gz
https://zlib.net/zlib-${VERSION_ZLIB}.tar.gz
https://github.com/facebook/zstd/archive/v${VERSION_ZSTD}.tar.gz -> zstd-${VERSION_ZSTD}.tar.gz
"
@@ -177,6 +179,7 @@ src_prepare() {
-e "s:VERSION_USERSPACE_RCU:${VERSION_USERSPACE_RCU}:"\
-e "s:VERSION_UTIL_LINUX:${VERSION_UTIL_LINUX}:"\
-e "s:VERSION_XFSPROGS:${VERSION_XFSPROGS}:"\
+ -e "s:VERSION_XZ:${VERSION_XZ}:"\
-e "s:VERSION_ZLIB:${VERSION_ZLIB}:"\
-e "s:VERSION_ZSTD:${VERSION_ZSTD}:"\
"${S}"/defaults/software.sh \