From e40f835162f1dc23022c0679372999cd3cf2c3ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Wed, 15 Oct 2025 18:47:13 +0200 Subject: [PATCH] sys-kernel/gentoo-kernel-bin: Bump to 6.12.53 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.53.ebuild | 237 ++++++++++++++++++ 2 files changed, 242 insertions(+) create mode 100644 sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.53.ebuild diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest index 8a0320f1059de..7c2b86a4f580e 100644 --- a/sys-kernel/gentoo-kernel-bin/Manifest +++ b/sys-kernel/gentoo-kernel-bin/Manifest @@ -70,6 +70,10 @@ DIST gentoo-kernel-6.12.52-1.amd64.gpkg.tar 307425280 BLAKE2B b4abce5c8354410162 DIST gentoo-kernel-6.12.52-1.arm64.gpkg.tar 280555520 BLAKE2B d5ad239cddfdcf5c236b8b09d2e548a2ead002f3e4fa228d9b3d39a6fc18923dcddcfa16891e8c814b5959aca45456d0a341a843262ec20d33879b47e5ebda0b SHA512 799bf4324f4e98fed3fce7ad9beff924f68c6c83d3b047e6a90193734dc7b60fa387ad46790f087773230976559d93fc9950314626543ceb241928058964d8bb DIST gentoo-kernel-6.12.52-1.ppc64le.gpkg.tar 72529920 BLAKE2B 35c4dad300fe13156c600d3ce513cd0f6f989a7e631955c7e1989ab189c04335a88562106266efac27fb755bb2d760ff98c15b8071e8a0cb92565aa65f2223cc SHA512 1c1077377d73f528fb318a634ab99a85eed36e2ef8f2ec4efbc9fc6dff5067c30542d8aa6c9b441b5323f97e43f319859ca2e3463a0c16f7e805873ead53b30a DIST gentoo-kernel-6.12.52-1.x86.gpkg.tar 77701120 BLAKE2B 8c309e51cf47679edc83e2847f0097e153e9cf0141fc1fcbeab84ab7b6e549b4ceb010a1ba35add43cbb318a33cadb7ff6861ee97b68b4c786862b3dde3a2322 SHA512 7c0e80936d1d2d7ef3e966f6826ca502343af9a1e5bf8fea6f55a0fc8c31d3753925d47890557827fefa087a4b8b91600cb1feb0feedacec1cf1c60160feeedd +DIST gentoo-kernel-6.12.53-1.amd64.gpkg.tar 307343360 BLAKE2B 18dfb5fea91c07030a1ef492629264dcef7ebc7458c4545547231423f48217c20814675d730603a23f75d3ad938c1bb5bc086f520c35f198417fe15bf92721c1 SHA512 5268ceb6da2f63de5436e0a265e70fc519a505d28776ef643ffb5995a8c220f94687a9563b0859b458143afb02377477be609fcd1f1989998447b08f64b71741 +DIST gentoo-kernel-6.12.53-1.arm64.gpkg.tar 280576000 BLAKE2B ab66d5716ed0a6d6fa8b7112b4db41b2ba810ee1403c0584c4a8d8d210e139da833f665a22c65c1d469580cab9d780a7fcb271179f728aa4e0b760cab7f6f736 SHA512 7de014c924574391088f2c0660d2164b8f51eb11f46d7ede6502de857b4816ee960b73f2682262ddc316143ee627659231c3653a7bd680b1bb49f3e0ac49372b +DIST gentoo-kernel-6.12.53-1.ppc64le.gpkg.tar 72519680 BLAKE2B 10635e4be1b791241c990d2eb1d011375a4b1cda78e94e43bc422dbe2aad4aa905bd0bdfa3f92bddb7de320b64382a6f6bd6a6f481d9978bb2b133e9346c6121 SHA512 d7b7f25ef346fc755f90773db65c61215ec48f223a6714d347786cbc5130ff00dd45afe804e4d8c5e27a52081d1558f91a1a6dfab3f1e9f6b5d98ca55d913c5d +DIST gentoo-kernel-6.12.53-1.x86.gpkg.tar 77701120 BLAKE2B 537f4bdb408861e214b2bfaacf9f1b57aeab3e7b473df5cc0f0eba3162534102d70a166b4ec89bbc9ae8a4d2f116ae526308c289d8d6d4033e989b84c14e2e22 SHA512 e058141d33e5e6dabb079a06297cabc5dfce08ca3d8e24361bbc2bb9f6a9dd06c67378275332ab3d3d27a9eb105bffd29f15a4a70fda7997010a77e1b4ca6201 DIST gentoo-kernel-6.16.10-1.amd64.gpkg.tar 329789440 BLAKE2B 5930008f0259614a8ed7bb584d2699dc99fef63f6016650d58dcb005992dc687df42aa4bc0dba895f1381e0f26b0ffd7a5135b25cbc18dc6d65bb4a89d0ed009 SHA512 656d39cf124ef10c171410566001eca9fc3c2835d465afa12723d2dc950d77ef88313d191e90bccfb114e3cf789f3bda8a7ea247e351ac83c74f2ce18e9310a3 DIST gentoo-kernel-6.16.10-1.arm64.gpkg.tar 293253120 BLAKE2B 0591b2849b70d03484e04c6be0b7b35cf922bd1160183e4544dc5b99445728569495386059995099f21b5814e06cca422dc9c925a7f0d35acf7f49c869bdc3b4 SHA512 b4b678d25f4a56dcff9fb3225110ca996434272989f8dda7b7042c838e193fc74f7bbc3a1ad5880b190005b2bcf4f78b853add51f4c9f59ca0224e4471839e12 DIST gentoo-kernel-6.16.10-1.ppc64le.gpkg.tar 75110400 BLAKE2B b9afc6272632d40c3ba02d78ae644e183a00600ad6dacb79c460b80ec6783349676c399a15bb04e7da94f107c0b8ec7e76f941f73d264a771b4ab6b9937fe7cb SHA512 949f7930f34f8aa4f84346e406e57e32c1c4454a36105d97f2a1322066d2b225ce2f2affe4057b606c67854e0753d6e031e42913e01f60cc708408bb8e1c7600 @@ -197,6 +201,7 @@ DIST patch-6.12.49.xz 2955076 BLAKE2B 8f333d832ea1fe060000b3b14fb2e91ee2302df73f DIST patch-6.12.50.xz 2972204 BLAKE2B 589b11a26af4f14181e12f156a4d34e884e7b8310802c22a63d3494b9a4507d275e3a437aaef7c7c5e2736ddbf71fc91ee4a9ab11acb252c89a16697c8964ed0 SHA512 3ec4639bec29bfe04765efa90abbda5ec5384ce616114b926e0c4bc7601a43ddf45c71634d8e846e1b5189460210099ccf4a4c0f20278a2e564cc25767543a7b DIST patch-6.12.51.xz 2974844 BLAKE2B cfb7242811febee3e506aa8775189f90cb1501341ca7aea7153aca28553cb5e953902f1c7bc23b2872f3f4617ee76641888c0cc0ae7a4611399a892030832b58 SHA512 5e04752b3432809212315b24c8fc18764b367e9e3282325d3d52b75190b4e0eeca48a10dc3baf09abfde3a633a7b14e03b4224251ae4e0b6206085683cce5dd2 DIST patch-6.12.52.xz 2981340 BLAKE2B c3317e774812d88811d8e2aaac2f0ac076e819a012a28966a7f7ab0efe8aa5bd0b96fad848333121c681df5d9867740d8f4f61b39359a88a007b66481970b4a0 SHA512 a26009f2fe4a9c0d64685ffc7567ec2a817dc649093b8f50a20742e4f7db49a0752def2a8d4c2261df111160dbc97278357bc8f66685a87f5bf55eb9fd626baf +DIST patch-6.12.53.xz 3031480 BLAKE2B ba00b2dc89efd299aa9c581c0d075c350ab8634f04bdbd41eb9d4aa9c3a8eaf359cacf5f0e776f8f234d2c9b2705eb0cb17cff258b1da3f0f12e94b8d27c1fd6 SHA512 34d6aab0f26e6b66ed96f1a7e978abb88c355aab89e9a05759956ea3bafb3d5d19d3106896dda4f6a76d45b84164ac66aa20c0cdb9cfb74f8c17f49e5597908c DIST patch-6.16.10.xz 796140 BLAKE2B fb1868512d250eded50e32cbe9233e8a89e63d9004d0ca6cb1c5f156c128358bc294da6e0e7fe011cfbcac1358b1ef6b860d82628e34e15ac141a45465109c53 SHA512 0a2c34c2f64cd87f7079388295d120c81ad6bf3797873bac5bdaf4baeb0ae419f1beccb4f5415ed4a6b14f583f671073f7db2b7de92930ccf5bf59169a714e8f DIST patch-6.16.11.xz 799032 BLAKE2B 5e0a522494c81839a9a0c06825ebdbdce4c7a802ce62c337dd819cfe04012ecfed7bab3d93574aa6a3e66477971d687d0ef1971dff409ff49d0d18e09d68df21 SHA512 46423abc9bd8aaf0611f285947726dba54c24c73966cbfd03203314a6c235e98b110681335c2a1d0528c43abd13f285edec73a43f4df872c0cc7221677fd318c DIST patch-6.16.12.xz 808544 BLAKE2B 0fbd9b63869a73e5f4f1ba4dab26167faaeb9c178ef7ab0b0b9e158f493929eba9b70ca8681e05cb4b2d8e8983ee8ffa4b1845ad90cbef93671868fc9fa4c989 SHA512 64079698b0ad170b99f59db0ed119eb9920e2df7887c1738434583128cec578901e31f7f6002a7f397670d4d51ff2c2ac3f414c9896de9c7ba4f55e694364c11 diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.53.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.53.ebuild new file mode 100644 index 0000000000000..5f6cb3daa1d56 --- /dev/null +++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.53.ebuild @@ -0,0 +1,237 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KERNEL_IUSE_GENERIC_UKI=1 +KERNEL_IUSE_MODULES_SIGN=1 + +inherit kernel-install toolchain-funcs unpacker verify-sig + +BASE_P=linux-${PV%.*} +PATCH_PV=${PV%_p*} +PATCHSET=linux-gentoo-patches-6.12.52 +BINPKG=${P/-bin}-1 +SHA256SUM_DATE=20251015 + +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://dev.gentoo.org/~mgorny/dist/linux/${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://dev.gentoo.org/~mgorny/binpkg/amd64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${BINPKG}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/kernel/sys-kernel/gentoo-kernel/${BINPKG}.gpkg.tar + -> ${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}" +} + +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 +}