From 2c98a9b5b80193e5ab7cb2c9f2794c67f9b2c93f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Sat, 25 Jul 2026 12:39:54 +0200 Subject: [PATCH] sys-kernel/gentoo-kernel-bin: Bump to 6.12.98 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-6.12.98.ebuild | 222 ++++++++++++++++++ 2 files changed, 228 insertions(+) create mode 100644 sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.98.ebuild diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index bc79716ce7246..e094e4256f565 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -18,6 +18,10 @@ DIST gentoo-kernel-6.12.97-1.amd64.gpkg.tar 326748160 BLAKE2B ce12ff337d9b6a232d DIST gentoo-kernel-6.12.97-1.arm64.gpkg.tar 296294400 BLAKE2B 4a50c802f80577a6bcaf980df1c4de378aadc641f615ec6936c8840d91a41ec24a67c940790fd1598a075641197936104103b5e4c592b1464963ec2fd61c8ec9 SHA512 1791ee9bf5a6f16880905fa5cc14213191fe476502e4aa3b77debcb16841183795539c4d5a38e2f298728f21d1ac08082ed85797c383a1d4514db0c0190d6e71 DIST gentoo-kernel-6.12.97-1.ppc64le.gpkg.tar 73973760 BLAKE2B 13ad3f62a91d70a38f9cfa2a44a3a3cdb37e57abd86d97809a722c17a04faf42d8e66f6886c37cbafa0ae1024bc1e77bb9eb380450d0f869cfe77b6864eba427 SHA512 980e499c3e30d9a348a20be4fd4324ff57c24d3bf03083632352104334e4edd8ea6cf4e4d004524479a0f2b4fcfa0c9a68f0b40dde2c9fea1f376ddf646aedd1 DIST gentoo-kernel-6.12.97-1.x86.gpkg.tar 77742080 BLAKE2B 0986511691c0f72ca5f9e0481f2545942bdbe44e2afbc2901e9de981da405cec7fd188f2df95ed36019f0abed78495286ca263d76b27af93530bb97f265f4da5 SHA512 c8cedcad59abb038882c74cf574837db966c893538df08697e8752a2d894e881fcce0138fe8aab529180a9744f9e4481288101c7c07b3cd199f768b79ecb3e5d +DIST gentoo-kernel-6.12.98-1.amd64.gpkg.tar 326819840 BLAKE2B cb118e9d0592794f7627d5e36adf29412f7d4f8816494b3f8f98440c4bb250f9326bc7fecc960c79ec37cc92faa1f7cb231cea13d69c993dddd198b5f1e33049 SHA512 2c970cc6f18e9a65d555b09a80811dd1e198629612d81bf9c881e62f2333ebc887bdb6a5961513ca74414c1854b3e2c129f2cb2a0e96f149f49ad08551deda61 +DIST gentoo-kernel-6.12.98-1.arm64.gpkg.tar 296325120 BLAKE2B deaaf293a4d259d652bd0ed51c8cc6d7486eb0d5af78a0e0ea1d4fc933a523e5dbade1ab78865e5234f5e2b3f589e6ec9208d989a7e7ec1b5df300826801714c SHA512 8b6ee0536590b9fe44d79838638fb0c595b3af22a62de6e68f954ed40fa47db18d2af90e7d753b3e684ce5c5bc464e65f910f45f85df1abc191729434082923c +DIST gentoo-kernel-6.12.98-1.ppc64le.gpkg.tar 73984000 BLAKE2B b01c81baa9a972a9647b972498039697a37836521af5dea876b294e94060ff33d8734faa7d5d1519ea468305b5e01b39c688570fdd894bf15093afb64569479c SHA512 f2af7a69991e8cab09c15ac3d819d0691ee52828cdf17e6cc598cb1eadf4f7b519bd40f71625e5e2ee71a9abd37d4b55d4fff19384728587422fa319d001664b +DIST gentoo-kernel-6.12.98-1.x86.gpkg.tar 77731840 BLAKE2B ea9ffc6036901cc45e2d65804e6aafb9f6f4cd04213b1f9f4e8530b1d88792c36d45e44c02d826baea677452eb6f402da5894ac72a81c6ad112e6f786b51e12c SHA512 a571f6973159623c54e17b7c9d0c6bff0fb2f7b66101050ee657d4b465b886ac43e9ffeffeb34799006fb214f21459cc08b036a3a09d913785f917f9f0d8d43a DIST gentoo-kernel-6.18.39-1.amd64.gpkg.tar 466667520 BLAKE2B 1e332f57316eb48dd0b9b90a48bda87e5f6aa538e13e796d796ede8a4f8fa18b4929ac688a64b352d0ced29f1e51a03f2aa0e1bcffa23b109c85f3fd614d31ab SHA512 bd36cc563adad4db16b40f981c7199781c3d49d6d0c2cf46177dc2be7ba28113ae3f8ed371ecd0af06eee1dbbbc05fa26ab06d347fdf488ad6a8ae2151c2ede0 DIST gentoo-kernel-6.18.39-1.arm64.gpkg.tar 452843520 BLAKE2B 0789baf02e0ad5a41488af8908832617c65e2b99f42273e26d25bbe16777b59b58399ddcddf34f7bf70ed84ec6116bba4f1c5ea040c70efd21153175a5b99cc0 SHA512 5145e34c3cc057bbc33517c04f389982ebed7fc686e0da8355c89140623318229a1a5a289031cf6cccb22d26b1df16fde416be2c2744c75fba2afdffc1d69259 DIST gentoo-kernel-6.18.39-1.ppc64le.gpkg.tar 77199360 BLAKE2B ed8ee2ca5c5034685139b11d73eccf8cad85ccd4ba93e03004b22dd7d3ec8f88e88344b98a20704f54852c83e4357087cee285b753c432abac12b98ea3635f11 SHA512 580f135c531f2fdbe96b478f34b57307fffed967d9d17b886d583484d95f4df39fbcd467bd252acd97a412c2e950be8ce761e372e0410f6d45137b387e34ceff @@ -50,6 +54,7 @@ DIST linux-6.x-sha256sums-20260619.asc 230518 BLAKE2B 49cdface57b698e1051da14b30 DIST linux-6.x-sha256sums-20260705.asc 232223 BLAKE2B a1437222bbb2ce89bb6af047c7412f21746307015204ad17d6461896287685660f2a72591339a07ff4f35312ed07977c0fae73be637ea0c9f01e747efc44ab08 SHA512 f3861ba8002b7971f3037dcfa2a74559bf27709f6665d0128f4ab606c12623763ee1511785101fe208e5c224f261fcee1cedde92a264c90378679b31b27c70ac DIST linux-6.x-sha256sums-20260718.asc 232905 BLAKE2B bc1b19fc88204dd12441ad794f3f653280e97ac39b8c71143e84a3ffd9eb3bc2cf479ab934d274ec173d5f3e22f5455a55a7b896c9a8317bb9535a98101a2277 SHA512 3ed5d7b97f7ce35ab682e48d286c1447c76e68729bdf4134a24e01637e90538100f445ed8a747b98d6a4e208cf4adb3232cdb136e5e6b0e57c05901bb82ab884 DIST linux-6.x-sha256sums-20260724.asc 234269 BLAKE2B e9758b458a4573488bd1d62a540fb3fb577cf3b7ac24573c409c25e369cf7299c2bf7a1d8aa4ae1f461abbbca88026e3b56ed6cbe8e711627d4600899cf3405a SHA512 ad2e2c7abbb8f668e02cf8ad3149b950a3b4a3218e359225df8331e4725a6264e04484ab4be4adacd5143dc624d5250c07cc5ab6acaae9a22b25e294ce299bbe +DIST linux-6.x-sha256sums-20260725.asc 234610 BLAKE2B 7a0afedb076c293e9a6484f42831882fdf3ff0433f1da7ac07eb11f719522b8c7340dc319a1b0a8a7c39f86997c8ceeb88c4be8d383401cdd324f77332498611 SHA512 c15fc5a09482d2854e0b213444e091c0d95266fc286f234d411fbd4cb9b960b2721d0cfa02f711cf3302a9c3fc902422fe4b0daa422ea4b157daf4f3d51cfff2 DIST linux-7.1.tar.xz 158304768 BLAKE2B 5199b2057fd1b89f0275bdaff9d81035cf5e1e8e64318a4a67467399245628a0f8c5e82f9d80dfc54b094349a8cfcdc892b7a4ad4bdf5dd1daa268ff30c1cf38 SHA512 d4d9c45261813559341c67ea53d4a47f5a04d1ad15e3c2b8222a09b5483380d2bfd31b8c675e144db2eb91f560d6cb28f66187a5ea4f24f6dfb82a4ad48064cc DIST linux-7.x-sha256sums-20260718.asc 7546 BLAKE2B 814e5f1cbe1de870e1108c4d1f5c63fb93a90e57db2b8a8d69439ff26117346d868edbdddeb1814603da101ee2c15214e4b16269f70becb3285ee881450d68d2 SHA512 3f514272266d22bc2fa21fa2efcfb93d6da4571ccf2d6c404ec3a0743117165df6bddb9cb2556b4fad971b00b941ce9721658dadaa9ca946f0707972880599bd DIST linux-7.x-sha256sums-20260724.asc 7879 BLAKE2B 1e2043f96ea2fbe6e4f89049fc4f835f65422b698cd9fe7f0c5c9eca05bef143700914f919876bfe22a25ce7f2243df93217070e183161c8513dbabb74735408 SHA512 3eb0fbda0affef13e5f9ecbf34e9032ea0fa4bd4d8153f023738bcf18963630990b055b0264dd63ff8a72da65b1ce786c4a02a6fd639965cfc5e54c0813c923b @@ -69,6 +74,7 @@ DIST patch-6.1.178.xz 7843708 BLAKE2B 34574bc761599dda077871607516011207bf323f91 DIST patch-6.12.94.xz 4823260 BLAKE2B e3db641e9965737f5143714a52277c454fd70664b0a51f627f92a61d438c738e85451611afb60e8476e6d2aacec4f0e9dc009f3b720ac3bd59c54bad438cd8a4 SHA512 5afc7235971df37eb1209798d074469737614fd505f56b7ba0045053de69d35101abb375bf50d0dbe1fd2f211877bbd3353eb922427f7f2958911d1a7203bb08 DIST patch-6.12.96.xz 4953340 BLAKE2B 455d0eb19086f1feb82905ea233d9347595e1e92b1e943913e8f3d534bd2f7242e7ac1fb7781f239090eb606fbf5e308d8a4a0ce8686b430a58a3e33263afc4c SHA512 c112d977ca29d5967fbc6d678491f159ac15b7e3a5b03b7237fc5c4eecb1ef1a9a0e3c20bdeed55a680376990b1c52aadc9e0ad2f7a4f3406a0c1bf66b5771b4 DIST patch-6.12.97.xz 5243416 BLAKE2B 61ffc5362a8b875b9810dcc62509bebb16599a1750f1df4864e83cc0e11603f75e6777538b0e90c57c69c1a9e7e6d670d6d2d226abde51424a042d55cae43abe SHA512 c9c56aa2ef06875a6478c4838815977fb3cdf5f75e57cd3b4586cd462285326f704bb924ed68cdf94c4f9d5563056ca18a63686b565a826108015d469924ea5f +DIST patch-6.12.98.xz 5243448 BLAKE2B 9833c96b4353f8d0fab2fea0c934eef69c4c4fcdef256940f3075a3526d42cb34fbe12d2b576e98df349f227091b5463deefafafcfaf4bca9df0c7fe69a04cca SHA512 bb4cbd7f91970d6c300ac656cafed6bed2fa5a69962920de4cf9f1f28eff256494e355b612e74b252dd9ef936590183fd5fb00cc180dea427851174a4f383d94 DIST patch-6.18.39.xz 2380952 BLAKE2B bec14f9eaefe9074b1188f190946cce0bcd11cdbde924e2b67224771c2ee4e84bdabad9157d2c2d9ef8ec839d72fdeb4bf9ec9c34ae6be60e93870ffb0a59cbd SHA512 f6bf71379410109de3af0be6f985b4a7b603e602f40759b921b8edc98b904cdf8b7b265ccb41426e0bc3cb31993d9a1ab459d8b52cc0406af6db5e66a3f8dee3 DIST patch-6.18.40.xz 2793924 BLAKE2B 890df27220da2c6fc8efb53d0f90dc1144d6d077d01762d1bb13467a01dee0d627ac056b02a7a1d74def9ba1b6e50bc50d06ba4b12f76cf63acffdf0a931b62b SHA512 cf265aed22e83bcd8f34d3c0da2a8307654b16338c8be383784632105e21f0d9dc5b73c3732e415230c4164b2b2c9e5915808335e2f10e28207aeed4d773ca56 DIST patch-6.6.144.xz 6310920 BLAKE2B 3534c34f959f3a8daceb5b5c86cdfc232b66e869415f84ca5b336ac484b89b7f938e4161aaa91ed84920674e0c98f5881214b3bc317c89e8ffad28f58c0e26c3 SHA512 fc5b0dea2467fe88fece9fce4e2c251de19e84e634659b219f68baa8f99010e367c672836d2b1e47f5fb9965258b94bdfae23bd4c753cfb64143b0df6d1bd101 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.98.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.98.ebuild new file mode 100644 index 0000000000000..5b81f8d816843 --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.98.ebuild @@ -0,0 +1,222 @@ +# 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-6.12.97 +BINPKG=${P/-bin}-1 +SHA256SUM_DATE=20260725 + +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" + +PDEPEND=" + >=virtual/dist-kernel-${PV} +" +BDEPEND=" + app-alternatives/bc + app-alternatives/lex + dev-util/pahole + virtual/libelf + app-alternatives/yacc + amd64? ( app-crypt/sbsigntools ) + arm64? ( app-crypt/sbsigntools ) + verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 ) +" + +KV_LOCALVERSION='-gentoo-dist-bin' +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}" + eapply "${WORKDIR}/${PATCHSET}" + + 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 +}