commit:     f7f856215e21d65f3b1d69b83b31c5c9bb502201
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 30 16:38:16 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Dec 30 16:41:36 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7f85621

sys-kernel/gentoo-kernel-bin: Bump to 6.18.2_p1

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-kernel/gentoo-kernel-bin/Manifest              |   5 +
 .../gentoo-kernel-bin-6.18.2_p1.ebuild             | 229 +++++++++++++++++++++
 2 files changed, 234 insertions(+)

diff --git a/sys-kernel/gentoo-kernel-bin/Manifest 
b/sys-kernel/gentoo-kernel-bin/Manifest
index b88923702286..fed6c5e49cbf 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -74,6 +74,10 @@ DIST gentoo-kernel-6.18.2-1.amd64.gpkg.tar 458895360 BLAKE2B 
7dbc541ad139f6d3159
 DIST gentoo-kernel-6.18.2-1.arm64.gpkg.tar 434554880 BLAKE2B 
7ef2af95ad84e5070651c4dc1049ab18968b8470498bf35c23ba728a4fa4c86233aa3bf42f59baf9a8554caff50263ddfd1753b272f4416c724b897cdbef344a
 SHA512 
a1e00c6fc901c87203c44171bdbb0fbfa6241f5e5ce344e8b019a09268192de7da9e4321dfe724f03d058c662f6b366f728627e78ef1c7add721e79ac1366b6f
 DIST gentoo-kernel-6.18.2-1.ppc64le.gpkg.tar 77086720 BLAKE2B 
15a47d555bc5a2fa9ecb38d2542b2426ff024409ce2ecda02b924c2692e3765c930b34c05856642a98daa4b02f1ec08712e75d5d19ed6b374c09ea094ab100bc
 SHA512 
d7eac06342680dc664df0b556ea9704d811d11b6333b5677eef756f78bfba792328048571e8109a37647a2512889ed7ac4e7661fd5ee499630abe49a668be8de
 DIST gentoo-kernel-6.18.2-1.x86.gpkg.tar 83425280 BLAKE2B 
bbfef86d740fd2e23241e5013c74a134cb68893e4179a4418d9ceadbed90e4969dcea8cd1fc2db6777187faa82d04f3117d20d1171a729219f5f9d9ef8656b13
 SHA512 
96d36b775f75df95cc54ad8b17948b7712f25e277323923af9bf31a347410585f65d99f126189238d8d00900f552cb9e366d22d1dd43c863ce78d88247f8f817
+DIST gentoo-kernel-6.18.2_p1-1.amd64.gpkg.tar 458854400 BLAKE2B 
3aff1788faf0771a24520298182aff29c816e0b7474ee1a1533da6efff645ce4085f0f0923688cd01519a8ba55ba5a2daff3551e0dca5cca3a9be18b4f3daf48
 SHA512 
c86b2bbf2428c2d2d7a3270b944e60ea9ad293a22c965a8dae690af0e98f3e5685039601106ad5d6d86d7ed404ba9daf3b6705cd20d04ff0cb1742b3fae9c5f1
+DIST gentoo-kernel-6.18.2_p1-1.arm64.gpkg.tar 434565120 BLAKE2B 
3f88c8992d08b1351b9e881a196ee9b36b37cc77cc350f942494a2be2611abf34997a46657cc9c06769481e72c1a8b7d15defd0885d02aea16d7ef125244d295
 SHA512 
525781987e21762fb0d25763a39792d4aeb60e5d99f75ad5bcc2c8f6e50c9d7ae6ff86f8fccc7f037e467cd239af8598602d81e252eb2a7ee97e0adca1e74e32
+DIST gentoo-kernel-6.18.2_p1-1.ppc64le.gpkg.tar 77066240 BLAKE2B 
1de1280e8cd517226549b93bfa29bbacfdef1bfa403aa95dd8dd3953c65794e621b747c45932b9826a21cb0ecb9c25a319620fbcc85c2bc17cca3029735b59f0
 SHA512 
babe97520a9c55311a3c2709d2bd27fd9563ad674037cc1c6d74e3938d78f7d1bc75ebd0fb35a6bade82502086abeb10383558588fdce12a500de62c094727b8
+DIST gentoo-kernel-6.18.2_p1-1.x86.gpkg.tar 83353600 BLAKE2B 
b10a029a6b356229b37de2b19da5f7bf487edc9e079cccb4cbaa02d888b1d9dd44a45862bcc390aeed9a018a5c0a302cf207e8ab7bcaf26e51c3cbaa6c714cec
 SHA512 
f3055acdc0b1cbb9361d3e3219c62adef46e5efe34bf5f735ce02a1c5b1fa5dca6e4c7353be41574d1cca39a1e8d48fa37c1a8b2dc3a534b4eb67072d23b906e
 DIST gentoo-kernel-6.6.116-1.amd64.gpkg.tar 274821120 BLAKE2B 
c93b8b3dc50d0aba96ae61f8fd06c8e08ed9040e166805e4bc78e5113fdb881714265151f4472a2b92b461b4fc534627b26a62d73fd9f79994e057dd4c4d5d82
 SHA512 
2c5059f92048805b54723e494e27384b2f7b79a1380e976a81f24faad3ea3158d13244fdccb7e10014318dfc6ec2e267033286590b76ddcdc697f56427e8763b
 DIST gentoo-kernel-6.6.116-1.arm64.gpkg.tar 247490560 BLAKE2B 
b2eaf44da5d3b20c00ab009198aa37905734a5c0a0403927fc595f2661ab95ad2a6939923928614869e44ae9a3bd24dc6fc2c4196b917cba2442db72101c5ec0
 SHA512 
62d0af00479b64837731ca9ece779e1b3c7cd0d375196e08730fd579b842ae87370f957825e8c5b4bef1d7733d0fae3bb4552d8b05c4d78a8b086ff7097bf096
 DIST gentoo-kernel-6.6.116-1.ppc64le.gpkg.tar 64481280 BLAKE2B 
f48919679d041322db17d48a61d6b477315c6eedaa0564774a3ab67ea220d5c7af245b4dd5e67f683ffaacf2bf872a985bb80f0deef51f5e7850ce7de829e2e9
 SHA512 
2c15494201ac80fe5d3fa9b7e56f70d6930676ff560424bc0884bea24346864eaf9506b80ba7fe5b89547c1c45fa1a93b013d1c547c47e42e07d3ad04cd58eb8
@@ -119,6 +123,7 @@ DIST linux-gentoo-patches-6.17.13.tar.xz 86188 BLAKE2B 
d146fa4c14321f0b3841e1914
 DIST linux-gentoo-patches-6.17.2.tar.xz 99184 BLAKE2B 
867bbf3a8cce987dba3381a874985e614187649e5341bc8c43f97e0b501ed4cfc4bce2ee7d8114ce54d75605151c7dbfdea51e9e5da7af3a834b169bb6998eb1
 SHA512 
149946fd38c22ef5a8b198011f4a044d3c00a93635f85b3c0d0f1f4d74faead20355acf3ff0ee55df89361fd48e8270219f52feeae0688b92d090a1c59a20ba8
 DIST linux-gentoo-patches-6.18.1.tar.xz 14304 BLAKE2B 
e9bc17c8a9bc7334017f61738ce0b5d17d6b9a770927f3e3f848b9a10f5efad1ad6ec0e9697e5ceb844d0f625299794b7d31d3fe09e0854ab4c98235be637d8a
 SHA512 
00db6b73624f953f0c2f18095556bd3045f1b08603ce5ede971767c4f161758d79b049304826dd765bb44f46345ff44b3c17d9e0d83616349599fe75ac38e714
 DIST linux-gentoo-patches-6.18.2.tar.xz 11656 BLAKE2B 
ebac8222e1a9f94753d45bddc35fcfde7a1f66b19307cf64a9e3ab47fe12f35b70e65d1cab48a85741ee6bf6c2bd92e05e0587f9903ab3a1535bc9168b819dd8
 SHA512 
1548015f42cdc55927a3c42b37cde1871f88adcdd0bd04f53fefabc5dee5cf22bb6a3f188200efc2c4ccd484906c2642cdd30ab9ba2ffe524afdbd17cdc5fa09
+DIST linux-gentoo-patches-6.18.2_p1.tar.xz 14964 BLAKE2B 
1a7766dfb5f9d107b4125aa24b7e6c1972f7bc0bf5d2dd92d5ee10e17a2b4175015fd4ddf71b93fe18c1d278f28f6abe4ba88acb0d41042f6455f446b7a0c42e
 SHA512 
6ab511813f9aa5f1d6dedc2ec104f92579f6d90a9206a33cd3bcac772940e7e503be6df596290dc9652a6dad240324fe9486cc93d0d6fc88cae907c2a3d7d5f5
 DIST linux-gentoo-patches-6.6.111.tar.xz 45328 BLAKE2B 
d940d418295c07fcf55614fe415b8124bb9e6abdd2cdb992f9b06ceb3f752503bf17df4224f781cef85170928a76013227340235d50b514899d3893d2f94efcf
 SHA512 
4555fad79908133b0fd0ac0ec03ef4f5b6345974e4243b35255e1ee24182f1091366bb39f8d0cf40f67dde04eb688e95e2902c048b8a3b7aebae64fcc7c2847e
 DIST patch-5.10.246.xz 6964592 BLAKE2B 
b893135670cd9068a8af6f05607ef680d38c4bdd121e1bd3289007df7f0cbc22987c810fe697b939885e20346fb759b4c907870000a5c64f8cad23568ed10a55
 SHA512 
52e6f9bf483c3a588f934eeafdb40bcf0d39ad4c32f3e176ff1ed6f8485c1705ff1e5fc268352772e7aba3a93736653211baaa90df64a6c3d7494fa631c1eb5e
 DIST patch-5.10.247.xz 6997100 BLAKE2B 
aead70810bfd903f1ea2be4e24a0eb7d3282032115ba1d61334193d33420e08abf87bd537243199b5d4e8d4d161f972fa487ae607eee7a5d5fd38eb9f08cb704
 SHA512 
dba332c649b8b05956ed98fc13f939e699fd8b7f6acabfddb69a7243c4e449a3be6ef15ebab72dfb5d906342b79753210a33415f6c079d1e804b789ab165aae9

diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.2_p1.ebuild 
b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.2_p1.ebuild
new file mode 100644
index 000000000000..28cb32fa0395
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.2_p1.ebuild
@@ -0,0 +1,229 @@
+# 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.18.2_p1
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20251218
+
+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-${PATCH_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}"
+       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}"
+}
+
+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
+}

Reply via email to