From 538bc4ecc01e2d1af87e7c7df43269198bd3198f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Tue, 28 Apr 2026 05:55:04 +0200 Subject: [PATCH] sys-kernel/gentoo-kernel-bin: Bump to 7.0.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- sys-kernel/gentoo-kernel-bin/Manifest | 6 + .../gentoo-kernel-bin-7.0.2.ebuild | 234 ++++++++++++++++++ 2 files changed, 240 insertions(+) create mode 100644 sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.0.2.ebuild diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index 7bd25da12a24e..c273d344dbf00 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -54,6 +54,10 @@ DIST gentoo-kernel-7.0.1-1.amd64.gpkg.tar 369418240 BLAKE2B 7684b9ac6c69094827df DIST gentoo-kernel-7.0.1-1.arm64.gpkg.tar 326092800 BLAKE2B 92c38d8dc6cd40e24d4fa1910d3b9ebbba942c139c90bfcba1ae8c8f1c50e56e4b2c4cefdfa5c64dfdc62d75aac5cf5fdcd39e33a8b82a10ea155661979733e8 SHA512 a118d17e3194264e2b0b520073b9cca61e5fb571e4b9dd4ed2e92955cced55d60205180314fa3740c4b5d5f6f8e27834725f9255b418e3de6cb4d7295497a67f DIST gentoo-kernel-7.0.1-1.ppc64le.gpkg.tar 78612480 BLAKE2B 089d9c2075de3bf3b33d2e432004b81d075dba99912c206c5384b1184d24bd011aa5bce8f80b05a746f548dc99830ab1cd2d0ef3ec575e6f5415a2a00479442c SHA512 68ddd66d81f080da98b7cbc3dada8d76dc6d63141c57cc6eb458fcce77d82c7c440cd7ad3d40d9194a0ef14c977fcdb198bb5311e37433b2b543c126b885cac5 DIST gentoo-kernel-7.0.1-1.x86.gpkg.tar 85360640 BLAKE2B 2cde3e879d56517cf1711c4395113ebdc6aa7f57e5262a6c4cc1ee8b7bb88f78fd11b87186abbc75e9bb193492617da45d9cbf3b5490d44e08c1ba15b7e0e05b SHA512 7d4a8eacab2d8e481a2d40b95c7f49f92c55dc70fd9aa7840969c1453d58a363b380ac946084bbe723bc67710bd4b85fcfcf1a92d1f7d80fa44a1537d1a4ed13 +DIST gentoo-kernel-7.0.2-1.amd64.gpkg.tar 369377280 BLAKE2B 920869e54ff504a25ed93ca3366efa80ff7f3c9c5a76d10fbcd98ba06c6020783e376c20acc5384570718a5a8fdd4cc9a69c5af43b7a02e27283cd542bb414ff SHA512 4f763f890327ae16268e95997ad0d6aa17f9cbb134c7845b4734b24fef8edd4903221ef7e92f7974f0f1594203122d2b099d17482a080ea78c50bb4ddd8483ef +DIST gentoo-kernel-7.0.2-1.arm64.gpkg.tar 326082560 BLAKE2B ba6fb32b79f62e9ff866869127c1f0b86824866eb171f1ea40eb5a88b2fa8455b88cdd9189fb42e2460c29e32528078abcb77b570d65e95179f8f32c836c3b1d SHA512 8e0e94b5b768de45034b6d9d6ea2ff9ae06554c11bd4b23d770952980bf7eae127afd397e8e3862530d1c2447d3a07e638c60bbb3576ea4a234953a9694bd528 +DIST gentoo-kernel-7.0.2-1.ppc64le.gpkg.tar 78602240 BLAKE2B 8c0c20751b8b8c975e96704d0e4e45fefcd676cd6d1d76c9f48d0a1355af1cfc473caaf991ca1b3c9239f0be500d15a36830bedbec902a971ef2869753d412ee SHA512 cb3e115ed69f546bc270399f2028f19cae2003080a55e211999a6887bef5c8e066c41ce28bb1b8c4941a095ea429e74153f7766d2e0532870d6012f01cd78469 +DIST gentoo-kernel-7.0.2-1.x86.gpkg.tar 85350400 BLAKE2B 796f22d6dc8d3f4e4bb5738bfb4d3f5227a27b3e8ebedf81f4f1648966ca9b6f112035e78131919df8d4ba7dca3650c709a016eac40e9073f6f83eca0cfaee0e SHA512 d1083609e85771b2bec2b499a0b3364cfe3f5b06bc0c2592c9dc89f7429a9c04a6f799f73f011c6520d6fa7e12c1e89876b71fd5cef5fd0c03750cc527846896 DIST linux-5.10.tar.xz 116606704 BLAKE2B b923d7b66309224f42f35f8a5fa219421b0a9362d2adacdadd8d96251f61f7230878ea297a269a7f3b3c56830f0b177e068691e1d7f88501a05653b0a13274d1 SHA512 95bc137d0cf9148da6a9d1f1a878698dc27b40f68e22c597544010a6c591ce1b256f083489d3ff45ff77753289b535135590194d88ef9f007d0ddab3d74de70e DIST linux-5.15.tar.xz 121913744 BLAKE2B 3921274b23f7938abdf3ed9334534b4581e13d7484303d3a5280eddb038999aaa8b836666a487472d9c4a219af0f06b9fecccaf348fb5510ab8762f4ef4b7e83 SHA512 d25ad40b5bcd6a4c6042fd0fd84e196e7a58024734c3e9a484fd0d5d54a0c1d87db8a3c784eff55e43b6f021709dc685eb0efa18d2aec327e4f88a79f405705a DIST linux-5.x-sha256sums-20260211.asc 373886 BLAKE2B bca3610830811245d37ab2bc5cbcfe39199d91b4587072e9061e3a9d4dfbb16997ecfe28a288c630a9cffe2452a094bf8024cf556a3154a3357290faf7e1d943 SHA512 10954f8e9d7370a6318682a0895e7d1e84055aac5fcc542c0a76e93d517eddb41b3fc60ab7068e2adf408e4d79b71a818c8537b05816d8b9f9ca2b6409372d36 @@ -68,6 +72,7 @@ DIST linux-6.x-sha256sums-20260418.asc 216540 BLAKE2B 37655901ab474fec6a525ab7f8 DIST linux-6.x-sha256sums-20260422.asc 217563 BLAKE2B 9ecce8faab520c811556d798ad154dc73837a333422645f9f353742b5515225a78355325cdd0a0c8d9a6a150a8e94d23bf34d9d44e96368a7ae49ad0dd52c045 SHA512 bec625711deaf6a3a8e8ab566d274c7dee893a526a190ba4c27ec18020ffce03f9a96211a893cc2bca90cdfaae80da77c7d6ece6018d163bd8bafab5357840d4 DIST linux-7.0.tar.xz 157143652 BLAKE2B 3d9795083c8938f80f480de0d10bfd9c525640e59d5c7f22983de3f12ee42c84c31be902cafb05579ddb1c32bac5ed06b0d4953f9705450be185bd2d9ab08f89 SHA512 8c85b708342f8f09ca25b2234b22e93b62b144a9ef919fbb21827f52fa47498e778c79db1559524dd7fb360f95b2ce174171443c1859656c281be41d2b6c5a0b DIST linux-7.x-sha256sums-20260422.asc 1543 BLAKE2B 0519aae230dd8b59e778ddc22b68dc5dc3127606976f242cfeee71cc0523bf57d46952869b15ccc26aa28fd93b1143447315e548139dc7feaafa5e7387e6fe2c SHA512 24d65ee5a128c260aedd8c23fab47740d24749ee47b336caf639aafbb3bc1b4b9bb58b8a383413866a8e8df86731a70c377e3ae28a856fd78e3f2b351971f957 +DIST linux-7.x-sha256sums-20260427.asc 1876 BLAKE2B f423b97f3c241abe3cdd757f6bda34cd900c4140b371a5a7abb692dc3e404689266e162c177c66e8eee991ce5c3b7bb681d8b8cbf1c2005aaaf7291cba9efe7c SHA512 90be7186a920260a6553d08bcf6bd0ca142988134ff2d8277773624d18d0c92e048a2c620965185b35b4567708aafe610d58ef899eb306f2d4b1e2bd481253e4 DIST linux-gentoo-patches-5.10.248.tar.xz 24128 BLAKE2B ee1ac9dab33c96fe5020ad8bc9c657bb72a0171aeaf3ed4fe479f4b923f92be514c55144dc80753b5df2db82c75209280f7a2867b19fd76a55ea67e9809516ec SHA512 26e5521954929c8ac396ffaf786edea7118435347e2b43ae7b7cc5abccb0f26eca0277b6914dc709687c5fdc9247735e8419b491c11ff80e8ec7d519ee6edccb DIST linux-gentoo-patches-5.15.198.tar.xz 12844 BLAKE2B 4b5de40a27b92ef2438515b9f2e48588d758d2fb75d36e11d2fe4fb5d8e8f6966d2de97fae8f6b7ec8caef0c74856fb7d14738b21257a098752f30427269cf07 SHA512 5dff279f5d04be079bdd8583cc016f2c7808d628e75c76dc2c3a85f42c0b3dbb5aaeb5b5a58ba4e32f2646d4c6a93225cbc5830bf60142384adca8c03bf93117 DIST linux-gentoo-patches-5.15.201.tar.xz 10200 BLAKE2B 204f35185fde21708cd37bb513d59df3fd43d0e7adb2cb2a987efd6700711830832d26cf563d77542d8a29f6728025f9bac9caab870dd2686fa50a5d1d3c4030 SHA512 b26ea3d9bdf7cfc17f82258cbcc7b6f5f276d6a9e1fd7ae7a8f4f212a3814bb1e826fd201a1bb092a4f0e65fa5da3f1c000b9b54cbe012e8c52445b234f303ff @@ -91,3 +96,4 @@ DIST patch-6.19.14.xz 1021136 BLAKE2B 814807c704b74428010c7a6b47c7b07e261c3a6798 DIST patch-6.6.134.xz 5870752 BLAKE2B 5657be1187128c96f82f8988ec97bc77e43478c46a37e9e5d3e0d20b940848f112d6cf4cdaed1d9ca32c6b64c24d43f9ff5041df0b1313af38548f50353d1ea7 SHA512 dfc23509991b9f5320d054f9b26cd5e30579399ceb3fe7e9dda994c4c3a35a48d75eb3dd1bbf332ea965d99d9a69faa337ba5ad1c49ab9bfd8c61e21f09672ea DIST patch-6.6.135.xz 5878448 BLAKE2B 8e7f9aaf55506fa550bcabe90ff44abb61f7d35311a071a461bf1a86a2e0ba47e58f3c7f3228e728408aa833dddb61ba8200c3a46b12f33bab9e9e50fcefb578 SHA512 ccdf0867ea707b93210aa689425d1fab7dd710802ef2a6d0425bdf8f2226566c836474c38f23d7ae645d0f4454d1ea65600fede1ff2430b257af90a9fd00d9b1 DIST patch-7.0.1.xz 27324 BLAKE2B c26ea15a751364b5db59f84b62449a1e173d0e39e9996f16b22703e4eb2dfa449cc5098e666a01142a05fbc90588a654981474b77206164f0b43263599a48b6f SHA512 6811a2509d4f5df2723252d096f8cf7e37ab4673d1d969006c7403d0b3c5664b0aa9f22ce0136531812cb9c17a9d961faf888faf9082e90a0692953fc431651e +DIST patch-7.0.2.xz 42396 BLAKE2B caa1d23581d32716ad853a1e43425a9277ed8e8a08e007f84107fddd8fa73e9a45dab01c35fb3a43d0ae2a80a11905e54f7a7c8ceed86c8f3eb74d283d4dfc7a SHA512 dac9f93fe01474b905211679618ad13c1a72c98a1b560be1545ed075448aa4a39b2d8ad437179af69a7b43f5fed67709cc7f51401b90c92c8f7af8843e39bd54 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.0.2.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.0.2.ebuild new file mode 100644 index 0000000000000..77acef9b3c10a --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.0.2.ebuild @@ -0,0 +1,234 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_GENERIC_UKI=1 + +inherit kernel-install toolchain-funcs unpacker verify-sig + +BASE_P=linux-${PV%.*} +PATCH_PV=${PV%_p*} +PATCHSET=linux-gentoo-patches-7.0.1 +BINPKG=${P/-bin}-1 +SHA256SUM_DATE=20260427 + +DESCRIPTION="Pre-built Linux kernel with Gentoo patches" +HOMEPAGE=" + https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + https://www.kernel.org/ +" +SRC_URI+=" + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz + https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz + verify-sig? ( + https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc + -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc + ) + amd64? ( + https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/amd64/$(ver_cut 1-2)/${BINPKG}.amd64.gpkg.tar + ) + arm64? ( + https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/arm64/$(ver_cut 1-2)/${BINPKG}.arm64.gpkg.tar + ) + ppc64? ( + https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/ppc64le/$(ver_cut 1-2)/${BINPKG}.ppc64le.gpkg.tar + ) + x86? ( + https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/x86/$(ver_cut 1-2)/${BINPKG}.x86.gpkg.tar + ) +" +S=${WORKDIR} + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE="debug" + +RDEPEND=" + !sys-kernel/gentoo-kernel:${SLOT} +" +PDEPEND=" + >=virtual/dist-kernel-${PATCH_PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + app-alternatives/yacc + dev-util/pahole + sys-libs/binutils-libs + virtual/libelf + amd64? ( app-crypt/sbsigntools ) + arm64? ( app-crypt/sbsigntools ) + verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 ) +" + +KV_LOCALVERSION='-gentoo-dist' +KV_FULL=${PV/_p/-p}${KV_LOCALVERSION} + +QA_PREBUILT='*' + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc + +src_unpack() { + if use verify-sig; then + cd "${DISTDIR}" || die + verify-sig_verify_signed_checksums \ + "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \ + sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz" + cd "${WORKDIR}" || die + fi + + unpacker +} + +src_prepare() { + local patch + cd "${BASE_P}" || die + eapply "${WORKDIR}/patch-${PATCH_PV}" + for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do + eapply "${patch}" + # non-experimental patches always finish with Gentoo Kconfig + # we built -bins without them + if [[ ${patch} == *Add-Gentoo-Linux-support-config-settings* ]] + then + break + fi + done + + default + + # add Gentoo patchset version + local extraversion=${PV#${PATCH_PV}} + sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die +} + +src_configure() { + # force ld.bfd if we can find it easily + local HOSTLD="$(tc-getBUILD_LD)" + if type -P "${HOSTLD}.bfd" &>/dev/null; then + HOSTLD+=.bfd + fi + local LD="$(tc-getLD)" + if type -P "${LD}.bfd" &>/dev/null; then + LD+=.bfd + fi + tc-export_build_env + local makeargs=( + V=1 + WERROR=0 + + HOSTCC="$(tc-getBUILD_CC)" + HOSTCXX="$(tc-getBUILD_CXX)" + HOSTLD="${HOSTLD}" + HOSTAR="$(tc-getBUILD_AR)" + HOSTCFLAGS="${BUILD_CFLAGS}" + HOSTLDFLAGS="${BUILD_LDFLAGS}" + + CROSS_COMPILE=${CHOST}- + AS="$(tc-getAS)" + CC="$(tc-getCC)" + LD="${LD}" + AR="$(tc-getAR)" + NM="$(tc-getNM)" + STRIP="$(tc-getSTRIP)" + OBJCOPY="$(tc-getOBJCOPY)" + OBJDUMP="$(tc-getOBJDUMP)" + READELF="$(tc-getREADELF)" + + # we need to pass it to override colliding Gentoo envvar + ARCH="$(tc-arch-kernel)" + + O="${WORKDIR}"/modprep + ) + + local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}" + + # If this is set it will have an effect on the name of the output + # image. Set this variable to track this setting. + if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then + KERNEL_EFI_ZBOOT=1 + elif use arm64 && use generic-uki; then + die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build" + fi + + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + + # Override user variable with the cert used during build + openssl x509 \ + -inform DER -in "${kernel_dir}/certs/signing_key.x509" \ + -outform PEM -out "${T}/cert.pem" || + die "Failed to convert pcrpkey to PEM format" + export SECUREBOOT_SIGN_CERT=${T}/cert.pem + + if [[ -s ${uki} ]]; then + # We need to extract the plain image for the test phase + # and USE=-generic-uki. + kernel-install_extract_from_uki linux "${uki}" "${image}" + fi + + mkdir modprep || die + cp "${kernel_dir}/.config" modprep/ || die + emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare +} + +src_test() { + local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}" + kernel-install_test "${KV_FULL}" \ + "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \ + "${BINPKG}/image/lib/modules/${KV_FULL}" \ + "${WORKDIR}/${kernel_dir}/.config" +} + +src_install() { + local rel_kernel_dir=/usr/src/linux-${KV_FULL} + local kernel_dir="${BINPKG}/image${rel_kernel_dir}" + local image="${kernel_dir}/$(dist-kernel_get_image_path)" + local uki="${image%/*}/uki.efi" + if [[ -s ${uki} ]]; then + # Keep the kernel image type we don't want out of install tree + # Replace back with placeholder + if use generic-uki; then + > "${image}" || die + else + > "${uki}" || die + fi + fi + + # Overwrite the identifier in the prebuilt package + echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die + + mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die + + # FIXME: requires proper mount-boot + if [[ -d ${BINPKG}/image/boot/dtbs ]]; then + mv "${BINPKG}"/image/boot "${ED}"/ || die + fi + + # strip out-of-source build stuffs from modprep + # and then copy built files + find modprep -type f '(' \ + -name Makefile -o \ + -name '*.[ao]' -o \ + '(' -name '.*' -a -not -name '.config' ')' \ + ')' -delete || die + rm modprep/source || die + cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die + + # Update timestamps on all modules to ensure cleanup works correctly + # when switching USE=modules-compress. + find "${ED}/lib" -name '*.ko' -exec touch {} + || die + + # Modules were already stripped before signing + dostrip -x /lib/modules + kernel-install_compress_modules + + # Mirror the logic from kernel-build_src_install, for architectures + # where USE=debug is used. + if use ppc64; then + dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)" + elif use debug && { use amd64 || use arm64; }; then + dostrip -x "${rel_kernel_dir}/vmlinux" + dostrip -x "${rel_kernel_dir}/vmlinux.ctfa" + fi +}