commit: 0db2bbf4efc731847de807ef7ea50d70f698eecb
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 15 14:12:57 2025 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Aug 15 14:31:11 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0db2bbf4
sys-kernel/gentoo-kernel-bin: Bump to 6.12.42
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
sys-kernel/gentoo-kernel-bin/Manifest | 5 +
.../gentoo-kernel-bin-6.12.42.ebuild | 224 +++++++++++++++++++++
2 files changed, 229 insertions(+)
diff --git a/sys-kernel/gentoo-kernel-bin/Manifest
b/sys-kernel/gentoo-kernel-bin/Manifest
index 0047d3cb0841..2e47bb78fd46 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -14,6 +14,10 @@ DIST gentoo-kernel-6.12.41-1.amd64.gpkg.tar 305725440
BLAKE2B f13fe3dc3cc254e5b6
DIST gentoo-kernel-6.12.41-1.arm64.gpkg.tar 279449600 BLAKE2B
46660c67f31a7ac9fb3c11bd5a092cb84bd290d11c19251c78636fcf09c1b86ec35fe5169448d1b7ca7d3855299c8b39f2e7def97eb687d434743f121b9f2496
SHA512
795a21c29b537348ef02d017ca04ec0b0d08f02ba3d485221ccc1791df6d5655a2ad12e854b005eeeb2feb5a2ad6f06439fed49c62365d82cb1f0f1d7b9de339
DIST gentoo-kernel-6.12.41-1.ppc64le.gpkg.tar 73318400 BLAKE2B
322bdc40b8691cbf853e8296445aebaa67c6e964cbe60eeea6d15f73f055be4c8b703cb6f288aadea3e2a68cbd9194623ca27544bef26af59736990454890f0c
SHA512
72b146dcc31c77634e81b3b898aea3f2c39d0098653f8d858c2f430fdc7198314b18682d729ff40f8ebadf8ababd4b917bca3136ab028b8305d06d6e311d9b3e
DIST gentoo-kernel-6.12.41-1.x86.gpkg.tar 77660160 BLAKE2B
f67bb6ae8d4469056c43173f4f4fc67ee765a199ea015b32246ac92b0d89c3315cfc0cd85941355dbae700b5d3e34ca1b091cc0d018352a39b6a46a76213b80c
SHA512
19133fa20950aa8c1ccdb0dc640903ba263d732507296d37570b081fdff78dbcad848b875f3a3fcfb0568829003527dc01eaf48985446d0233996687cba3f0c0
+DIST gentoo-kernel-6.12.42-1.amd64.gpkg.tar 306677760 BLAKE2B
17bd4df86e03b22068d4d626cae9751d722eb0cf28adff1e108a0a93468d929d8a9f251fd5a6fd1be12f70549b6df315ffd2261209d75c15e89ee28a30e1a6fd
SHA512
3fac3b1d486c58c7f999047fda258c6c9e7a30b5c0f094b921770b79eacecc90fdb2e7aa0710a8780a2c90d0b7ea37c8e0977bfe2bd2d0c5718e4be2391cf8e6
+DIST gentoo-kernel-6.12.42-1.arm64.gpkg.tar 279889920 BLAKE2B
68fcac8f63776525deb20c50bf141d3b2cb9dcae96a3c6974ef9b440674353157ec19998b56e3cfb6e19e1f049a8ee443109efd3a16c40887e2c79beb4d924ea
SHA512
8ccfdc74875b45c30f37acd6d5dee413f760988621108ab24f4d2732be3c81d46da2d98ebe557d3167e12003a629e28646c199a414b801a05670a3c22699941f
+DIST gentoo-kernel-6.12.42-1.ppc64le.gpkg.tar 73308160 BLAKE2B
3058d100b50c05162a8a3fcf155a8587b355a0caa784d4e797c155818a144185ddc4127dfdff7b8e1a1914564f7b41e3fa22bd6c35cbb08d8611f77509936e13
SHA512
7ff700e418a907a39cc8c68d169c1b155bf1a21be48e66efba086d16438d5d3b5aaa63db710d2e866d18cfb63686a43ae1105e2d7e3fb0538d0ba5fc1da4b053
+DIST gentoo-kernel-6.12.42-1.x86.gpkg.tar 77660160 BLAKE2B
f52c05a8969a7cbd394a57e0c6588d123b8407ebee7c551cd2133430a86b2689169fcecb3326b217fe4ff7f43d31b5e0128b4856bcc21ea29fa5c493620fb898
SHA512
3c95c4b0d8d2dccf23a068412772955a63f3380aeca21a683a159341f640a89438e7d1fcb1f111415ca51ad7586b0a051f3263e0e15b087cd42407a7d8ad8490
DIST gentoo-kernel-6.15.10-1.amd64.gpkg.tar 327403520 BLAKE2B
e9d3f012185e0e91eba27aaab4a830c5b26eaf7b011b0d2bc7dc7186c7280eda0d1e1a791037fbf9302cb7d968c2ef1ee1da4ee42215150f06f884f5720fae5f
SHA512
92363c0802dc49181baa273c633c1fa8e0226792a94ef4b439bec187dcf333bd497c88293150cc44d8ffa04f690505d1a3d272f82bb237da48cf216cc405e34a
DIST gentoo-kernel-6.15.10-1.arm64.gpkg.tar 290037760 BLAKE2B
94d75c0ab8654e6b2ad02938d6655136140dd83e3cf391ea651bfe5f1b5e2e55f7db45c0580805a948d0d376620afe4c808da6204259efb21e78488d5c03784a
SHA512
122ed4dc86182357342dd58f1e097ddf25d4b910a474223f8e9a3fb3235c0dcdf8a24339e865d5a67082f1228a5d9e14c0da9a536404141e0ff890bf28bba931
DIST gentoo-kernel-6.15.10-1.ppc64le.gpkg.tar 75243520 BLAKE2B
fec2b6ab3df40f79cc440e71eba9ec1b67283ff3c8ab8f25264ff12fd8d41485d50d8f5fed09be7303e555d9744227207b6a58e52a65bd49065d8247ef015052
SHA512
d039a2a6e4e11ac1264bb505aff784a22ef831fb993de1a454834ee08cfc705af99c81580564a662a56f0d66f2d4ffb855e84516cbb5cd2471a7afc91f536144
@@ -45,6 +49,7 @@ DIST patch-5.10.240.xz 6786568 BLAKE2B
1cb287b2c99bb403585cad3500a2de0819db40ea6
DIST patch-5.15.189.xz 6955776 BLAKE2B
bd2bf4ad70014395ffac8874434b2caae7823b1b9999231738552d9f23a53547533c248fdb7fc4b4bdd60dc05e8898a910e3e94e6f5edae7ae96a66937f387a2
SHA512
8ace7d82af676b101ed37c382c9833193ab487cbb15b8444b92ccf8239e2c62bfb70ef7342ef6f694d71e8ac72b7db445d544e4ad285d9bd977365350bf155d3
DIST patch-6.1.147.xz 6320180 BLAKE2B
d109214e0682653ead5f62f5699d0bad2764bae1765789720d780e74afefadc39faf8e833df1ee4cc1436e4db5facbfc7f4ba8c3b657fc48aabda3ab84a4b540
SHA512
2cfd04771f982da4b65caf53cb944bf9ae2888a32005428adce383c408c35c72bec5d88e49670deb87011f0d6bc329e0a53adcad065aaa716ad5c8baffb2fddf
DIST patch-6.12.41.xz 2584360 BLAKE2B
8cb7d77a45e79b186e24bc59be15d74f4e9ea4b7c7f7b5c81b82eaa9b1a8b88a7aabff6768471d905e24539366bdb85593304365726307e19bcfa41937764bf0
SHA512
b9307fafe443eb61b0edc624b2c9ab7a0206765eb614683e0f01d7f7fab04a729a91d92d67b8ace03208d6b63088ff235203e8fdfad27adc97cdbf7df872b3c2
+DIST patch-6.12.42.xz 2666304 BLAKE2B
7e8cfcb30f98202d7cf9e152be9ff31bb013b358f12817bca1211816bc008171a1e0ebe09a3c67c3867f5b194dbf818ad4bd412509e6a44a25f944e16c0eedfe
SHA512
8b31be7c22a413e13a7b68086ac7f326d4741c2ae21dbd2ba3d62fc1b04fd393861b2801dbfd48dcf5b84651bc271434521b5e07876bd97afceae01034a7c144
DIST patch-6.15.10.xz 851240 BLAKE2B
c3397c8fe10b62ebe8e021864d456a1bec4eb52a0274e1c3fe365145191cbd39c2ca7cc6ab807b4df22936634fad67520dc978cc6df45a7a34e350e7a08ebb88
SHA512
4cb5a0848214b7cd76d587226efde3077c06359c0c8c1de50952b7f8282cb83195d477b46844ea0eaef039448f45fc1a07a331bac86efc6bae33cd4ff58bd9aa
DIST patch-6.15.9.xz 730252 BLAKE2B
277dee1df9517f06060f1f20b9d6000b3ed6acc0805d0ed55acebab59e996190a8f5d819ede79b5268ebb76e0976a546dc5339a4cf72307fab12c900c3311159
SHA512
34572997debcfac374401783a95d87e7be8754b4f1f4a9f436435c18e75087c05325321d800a22c33f0c4ac379d3b8759095a2b7738807eb51656bdc49b5d382
DIST patch-6.6.101.xz 4660596 BLAKE2B
3b02a5a37a67113ec35d647bb13f729fa0b883fa59b004e7b19b401bed374b700ef806f27285c0951c2dc8cd3e0af16ae7d9fc3268b4f5020eafb1d0361aaab8
SHA512
bcb5671c660a84f34556210dd525c6b38f3a9cf6c78bbc6b7d936f8efeb3170b27bfbf4a343b0ac94659cc63a35c479e1e158ca35043d5937eebbaf4fd8cadb6
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.42.ebuild
b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.42.ebuild
new file mode 100644
index 000000000000..cd4077f4f953
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.42.ebuild
@@ -0,0 +1,224 @@
+# 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
+
+MY_P=linux-${PV%.*}
+PATCHSET=linux-gentoo-patches-6.12.40
+BINPKG=${PF/-bin}-1
+SHA256SUM_DATE=20250815
+
+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/${MY_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/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'
+KPV=${PV}${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 "${MY_P}.tar.xz patch-${PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpacker
+}
+
+src_prepare() {
+ local patch
+ cd "${MY_P}" || die
+ eapply "${WORKDIR}/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
+}
+
+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-${KPV}"
+
+ # 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"
+ 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 "${MY_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KPV}"
+ kernel-install_test "${KPV}" \
+ "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+ "${BINPKG}/image/lib/modules/${KPV}"
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KPV}
+ 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
+}