From 025e3a0e1dab1e046d74ea1aa3aa0e11d9681def Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Sat, 18 Apr 2026 16:11:15 +0200 Subject: [PATCH] sys-kernel/gentoo-kernel-bin: Bump to 6.12.82 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 | 5 + .../gentoo-kernel-bin-6.12.82.ebuild | 233 ++++++++++++++++++ 2 files changed, 238 insertions(+) create mode 100644 sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.82.ebuild diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index a50278ffd5e95..d84cc0b30fb6b 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -46,6 +46,10 @@ DIST gentoo-kernel-6.12.81-1.amd64.gpkg.tar 326184960 BLAKE2B 6601e2fd7566785117 DIST gentoo-kernel-6.12.81-1.arm64.gpkg.tar 295843840 BLAKE2B a4a2a1003deeb61c8957802cbafd6ebf62707824f1e639978950310a80ec7308b0a748f199e7f43da344f2b11e8f24198340f0a8a7ca7334d82913f574153ffb SHA512 9a3ca6f72a804a86536f329ded6c224414acbfb02b992ac5a3c59a4ceae28b4f04457c45b832ef262c9b7120056cb007f2d9778b571e95a01f868f56f9fd7640 DIST gentoo-kernel-6.12.81-1.ppc64le.gpkg.tar 74178560 BLAKE2B 68fb8dae0b663f4829b596bd65c8362c3e480abe7b1713ddbf34019fe36bdcc9a5060cdcbba5eadd91427f1c573ad42bfceeef9a717e78b1edca8da4da79a504 SHA512 052d4f8f9992f789bbf60ea63c36aa3b4c9bf1563004be2c4174306b3a1da83621d43de8f778c5a7910952f03b0bcc0d3fe11466952b50c565325b95a9436ef2 DIST gentoo-kernel-6.12.81-1.x86.gpkg.tar 77936640 BLAKE2B 6a7d3e71286ef63b7b0dcab5ef5f47ff8512dea70cfdc7f675d65f702f4fc39a75e84908ec0be240affec7690ac245ad4f688787047bf8021fe1b43cfc9ccf46 SHA512 7f1b115a8509e5dce58198e65e192d5ca8afe4b7ed6b5df688c472d47369c5146fa01b1f098b7558cf08ad8303ec84ad6de19f85413d151d4f68f2f05d7aeb84 +DIST gentoo-kernel-6.12.82-1.amd64.gpkg.tar 326144000 BLAKE2B 0d9c6d2d94f0b159439868db9f3a36ffb8ea1f7131065f6c695d0865d0c54325162dd7110e73998b4f266dbe61de3d4f9280bb37ebc644256ce28de4b2a553cb SHA512 8b1e28f9ba490728f5526b21d25c054a8ebf838a593181da8c909d90f129af48b2ed26460dbab8568c51a6e21936328d6db73666dd70dbb5e2ce2b00eb040dd4 +DIST gentoo-kernel-6.12.82-1.arm64.gpkg.tar 295874560 BLAKE2B 2e5c52598170c97531023cdbe9fe92ddd3592f600ec60ff6ecfacec3b1c1b471d3c3c75669384113b4fc52f0bf8ff9f20e7cde7df7d451704d7b8c018ab37964 SHA512 6d8734be60a689f9b2e4682f8bf0290f8a44fd97abc551d5778014a6da6c498c4b2f296c7def04d3bf6ed42847593a99c4f1efe40c8e218c69c674852f67752a +DIST gentoo-kernel-6.12.82-1.ppc64le.gpkg.tar 74168320 BLAKE2B 9b04caec15e9598b4642536d74c283b7858ee55a518523b8a895cb7f7ce4184acb18aaf19d65a12fc3ce2e8c012ed80229e608194d0ab8cb573e29bedecc4eaa SHA512 cc635d34d7edaa543a4132613fd4bc68bdba1bf92784ffd4b909ec006a980c1b41283e88afd2fe2c93992e95d9c18b44af7291c08c443580342713850838bea8 +DIST gentoo-kernel-6.12.82-1.x86.gpkg.tar 77926400 BLAKE2B d307805e8f35295fa99d0f0dbae7bf9227c09733d11d07e1128d535624981c17d31e66e4b542971d04e47350ce8d937f768e31c80ee4c71ec30b1369ae68ca3d SHA512 104a20af1ce0d2712a7bff689c9127042f0749413987056092252cc3a3a8634164a2a3cc26f581251ce9a6827c955f6c5ff545c0b0fee526a94743f38a3d41a4 DIST gentoo-kernel-6.18.18-1.amd64.gpkg.tar 476774400 BLAKE2B eb8b8543f954cb6a8b41a29fbb12b3422e7db4d494d62cd73035a31fdf4f26f8ff6d2bbb6616aa66e62306cdf402c562f8ab5cf9e717b94fd173e2c13a60add4 SHA512 f1cce92379e9e0fc296e863ac5ab4e91f0668337ff12d84ba9841d28ab56efe5ee831af83e9b8a9e5d7eef1c7cac52e39a97909518655bdf8caaae88880ef415 DIST gentoo-kernel-6.18.18-1.arm64.gpkg.tar 449495040 BLAKE2B 8de3773beebe8b26fb677b1c3dade728674a660a517205415c54a99cb2ce7c221e19378fa18ba206ac1fcf683ee98da5dbec57151a40f0a22dff19b134fe69d4 SHA512 ef3be4524d60d2e81e0d0adee7a7426f37916808a202cf81f8a2338131635ed5321ec0d206af059f136e939cf3985d7867f978859361f5356a98b8aa8a78bbb9 DIST gentoo-kernel-6.18.18-1.ppc64le.gpkg.tar 77178880 BLAKE2B b3d7336d65870f7352293676bf30694165d65472fa6c5b1aa341b5ae203137de55a57bab84c412ac3ec2d8d02f73b94e0d6221bffcb18f747f76957dc017aa3e SHA512 7eea03ca5d1c5bd516d988e6459838be06227f0c7e02e253177cc4c919f8d3c5ad62dfa9f7b7401980819658f905156a2bfc83dfc37a9f93c3d55b8acd9bda3a @@ -135,6 +139,7 @@ DIST patch-6.12.77.xz 4122856 BLAKE2B 3f4be903ad737df00882bb90a0640aacccfa9588d7 DIST patch-6.12.79.xz 4224224 BLAKE2B fedea64f08e7aa61d47e34d7930c639a1edae0f4973d64c840ae0e85e37cdf7cd338970671dffd139c89b858079383e53ac2e5ac16f298685f1fe332e65f6905 SHA512 27f249af0c31e1fc11a1233ea87ce99ec4d5126ca31850222f00766326554a89c88e5e3ae95e5c6bda985d129ba5d9a8f72bb8fa046e07235e10c59e8a68a189 DIST patch-6.12.80.xz 4282436 BLAKE2B 09415fecf058a7ee198b2f64505491c45631e2b9c07de2414f7435e815a1bbf434d77c8386d943dd4945ca50844dcbcc55821f92fa218ccbfd42485c40ca207f SHA512 d171279c4abe891e85da50207d25d5feaf0df13a4b77d47020e0c64b4923ad9f183597869f39896fe91acfcf93b3eb985f4440d0aeb91cb06d04635f9aa6095b DIST patch-6.12.81.xz 4327232 BLAKE2B eb81e142bc7825061ae43efb062248f88868346bc6d449de0fd524b419ab1f5d524e9042390778971321229035c0f4dc5b481101bb2aa2f47512975e5ff5c790 SHA512 fbd813a24adeb4892079bae49b13c46acb7bb234f19a996de00b7ac2d95ca382d0e56195e393c1bd0a09051f1e36301e972924bd1fba2848e62c5d531d092b3d +DIST patch-6.12.82.xz 4341156 BLAKE2B 346e4bc420ab3cc57dea6b07fc5eeed43f1590a8fdf4958fd430f5a6516b02d3484fbbd276715f9a2a0075fbcc9de423d10fb92cb6e81f218607b401256f060d SHA512 4e0700c9a5cb3a0781c5a05828c9934c1bce62ab7b9711b9b2fdd956c6d8a77469f0954552738640ddc8a90f38af975e0e0922715eebce55fe6ab025ba2a5644 DIST patch-6.18.18.xz 1190664 BLAKE2B 528b75f7963d3e1dd2e24cd282510388c528cd93a43982a135cb5ca85583f3d36c01bf67fe854354b0c36e02f9fa2edbf2dc597e4044d2d43dd49efb36949d89 SHA512 b242e9ea9c744a61529abb2447d3eb8de31167272b669e132666447a619b24730c4a9fcdb6d7a4132b5aa83cc9ee47f85d7d4d72e25aef383f8929cc7107acd6 DIST patch-6.18.19.xz 1261900 BLAKE2B b39f17eedc96c9388720b877ae76796b4d75e02976ad59c0c5461be9be8f90de814c08c63e35b188e7ca65d7c08838fa317597cbb5c6927085642021659e9184 SHA512 f5793b02109ce16d5558b6367d9b1429a4917488d60922859626ba25c76883ace75501f0e1259bfdf52d26d62a71e12f212134c28162ffcd01f540618a35b2a4 DIST patch-6.18.20.xz 1310844 BLAKE2B 7da00fb985db1a29e0da0c957b015b6acc65dda3ca7b26c227cd9bf83f9a8ebb720950b19ac14bf78bebcf317ce5e73dd5c4034ecd120da483613f99f1e450c6 SHA512 c8488e95355a9d036647b14f7355f607b5b0680e74f0c73730c74d490cf2c6df5128512a04a97a78b31c8d668990225fd9bd799de4e9907aa8265398f900edd3 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.82.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.82.ebuild new file mode 100644 index 0000000000000..270f7fab9a8c1 --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.82.ebuild @@ -0,0 +1,233 @@ +# 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.75 +BINPKG=${P/-bin}-1 +SHA256SUM_DATE=20260418 + +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-${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' +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 +}