commit:     8efe791ebfebe2b76fb731f78bd76a961bd9ae13
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 18 19:48:21 2026 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jan 19 04:20:50 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8efe791e

sys-kernel/gentoo-kernel-bin: Bump to 6.18.6

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

 sys-kernel/gentoo-kernel-bin/Manifest              |   6 +
 .../gentoo-kernel-bin-6.18.6.ebuild                | 236 +++++++++++++++++++++
 2 files changed, 242 insertions(+)

diff --git a/sys-kernel/gentoo-kernel-bin/Manifest 
b/sys-kernel/gentoo-kernel-bin/Manifest
index 56626d0079b8..fb184d83c828 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -30,6 +30,10 @@ DIST gentoo-kernel-6.18.5-1.amd64.gpkg.tar 458772480 BLAKE2B 
8a77296f82c88f0d026
 DIST gentoo-kernel-6.18.5-1.arm64.gpkg.tar 434657280 BLAKE2B 
17edd584a4010893d115452b0384f129c2d49029bc8dd03701f543460146ebe1adfee59560ab77c92412226d5447c128e3e66b7947997f09261211101636b42e
 SHA512 
0790f82dd5925b368ec270d26a0a247c93cab56ba2efc31000891cace63c1c704c388ba8bf9d64b66668fa031a791981b5cd1f494d8fb2f2b9280716203772d9
 DIST gentoo-kernel-6.18.5-1.ppc64le.gpkg.tar 77066240 BLAKE2B 
48febf48cadc82396dcf130f64244ad59a5da79b7bbf6c1e0491192631ac9c4fe6b8bc1ec2ed001e0adac4dafa5b900cb9f712e5b888a02cdf2d762e32b55caf
 SHA512 
4972611cd640fa7f1ef8f6e72f93ab275bd0bdbdf6cd1bbd74b98d4c9a54b92daf85cfdf82767fa87a7bac9a9f58a7ccf6026faf42c1588afe69f1e6aaacc451
 DIST gentoo-kernel-6.18.5-1.x86.gpkg.tar 83374080 BLAKE2B 
0bb5943d329ad65a8c93051f5d0c62005044948d2fd3082d038f093771557fd79dab7f3ff18f68fcb121bc585055aff951cb32104c5131be15482225b0ac446b
 SHA512 
bb253e8ea953623c7b72bc1119c67f30ec9a8571e9d3078fd800742a2fb4b19cba8d0fc8e6ae7f9920106964c12a28ae78df9add38773aecab12ff896f5084bd
+DIST gentoo-kernel-6.18.6-1.amd64.gpkg.tar 458895360 BLAKE2B 
6755f4011c68c36b5c4ef2120ba2886e97cea314bc8f3157c063214544bbcf63c080a0b096818445fe0406ec47b3d0b391a7664987b8ff897d8ea5979279072b
 SHA512 
20e95a9bc2a685e3faf045774b2ecc6c7684c4f061bcbdd2cdac1ade3a9dc7a640a6ecb6e1f156c7bda401df6dc3d4707a1531d6d95b63539367e8e10f49cf2b
+DIST gentoo-kernel-6.18.6-1.arm64.gpkg.tar 434728960 BLAKE2B 
c5161da6c8162c785e9e9913f33b1838fee8715db9c02b14b85e50edd3bacb8f05130eb6f798bc93927e304dd414336abe0db35b03d5c1198a749965e8a795de
 SHA512 
4246b67aca83579d34f05ac1bbf3db37265379810845c29542f6921e0cb6e32134808b9283cbf751605091ddb792e7a68b92fa84e33ec6a426d7fdb97927579a
+DIST gentoo-kernel-6.18.6-1.ppc64le.gpkg.tar 77076480 BLAKE2B 
c93aef77eb45534870403c260b732a8ca51e4a70f6b893018801f6fd153f717ae9e6fde35f53185fb61566851ba98e1ca718a71ecb5aa844b7e3bf23cd5fc8e7
 SHA512 
bec446d2f77b3c71f500a09b87796970d40f40d6a39d0ec01a6244cc670e44444e6332359e5ab627862046476dcd4a1b1f05f7de268a68c130c803cf8e3b9b27
+DIST gentoo-kernel-6.18.6-1.x86.gpkg.tar 83384320 BLAKE2B 
d822e5441b842cd2a380ff54ad1ded612d486708548ab1e761c468d468e65d6b66f534d6945ab9f8a79f464714f2f04629f91041827cce7b13a1e3ab011a1f6a
 SHA512 
5c50b493c78c91428cd45e2078525f9dc8ff79613c2c6ffd4ed0e9d6aaebaf6e54f11bbef1896f006ff428cb479fd0f8122484e4beb82e92c0038375c84115f5
 DIST gentoo-kernel-6.6.119-1.amd64.gpkg.tar 277606400 BLAKE2B 
04d7c70fbd47ce3a9921c4eef83abc7daf70cb659f7fdd3f0a6450466afe9d18d95ce6f18739113216c908730b39089e69af909b8f886be62c85807c642660b6
 SHA512 
912cf2aa46d5343071894347c42548cdfd9baf077731035e3dc6804f4cca235f200c99cdc7454ab6ce78dd609b7840c93e30c7e666d635d216cc8e6ed984f671
 DIST gentoo-kernel-6.6.119-1.arm64.gpkg.tar 247695360 BLAKE2B 
31cf4bcd689f732857486ba42f132572b85cfe21e693ac879a52da53081921de6536ae9988927bdfbc67b61f783fbf1b639343dfca6fcb7fc7763f24be06704f
 SHA512 
b924585eb54df41836b049ea13a0edd952c170c4f601c85e50618f11f1a05e7079b76bcc711086c563afd84109264157868be4c0e551033bb2acbb6835f3e3dc
 DIST gentoo-kernel-6.6.119-1.ppc64le.gpkg.tar 64419840 BLAKE2B 
946f374c7dc024bedbd50f9d2a43acde03ca83ad3facdaf923e9c9f7ab39476b5c305ea71cd622e57041a47342f60a312d096602bb8070b9c8c3daa89c4ca691
 SHA512 
5facb9f5925c0bad2df49cabac6b8234e073440e1879c0248714d2bd36d380d201616c19d5bb5d1a4e8257939a445f3ae7443943737e60056642dba07c4d8a46
@@ -49,6 +53,7 @@ DIST linux-6.x-sha256sums-20251207.asc 187298 BLAKE2B 
41904c59d9fd208fa07909eb54
 DIST linux-6.x-sha256sums-20251218.asc 189336 BLAKE2B 
6bec5a80ef0f8c7651241e9c425d86026b7e13f0fa19d613a5b67ec892d63751633f04929825581801466ccdc45c4103e9feefa9fbbd63d489a8c5f675f45934
 SHA512 
7fa17449f7908904e6587e380271e153733f6f96ea66910d798facabb9a3247a1b93947371addc3273e6f4c165e2de02003ee0f688f1f0442ba03e63478dc360
 DIST linux-6.x-sha256sums-20260108.asc 190351 BLAKE2B 
6fe0d7b9d000c124f2ed507f545150649e3865b9f9b8425c2bbae56b0258eeac36c6db2d31e5ba6b0176749525b3e93021739105397c250b1d4348439118092d
 SHA512 
87312585792ff098f2a833f25330f45cc822815ce7b19978292907fc6efd6e2771631ad2a69e9aeff6c2cc5af1fae7f07952f1251dabd65e46d98fa9e24c7188
 DIST linux-6.x-sha256sums-20260112.asc 191711 BLAKE2B 
6dc6928250f41cf4c862f42c6ee566e4cf1814fe990e1b0fb64a69766cfb7521734abef361b83b1009cf96412b5afec4c67355832c7b7433cff967a1cb38eadf
 SHA512 
f4b67d000162abd0ea73e5cfea7cbfaefa0400e67673578904a9002f90548eadd0baadfcc27f6f0d990882cb7430c62113c20f0045461887988acbc0dc1e56f2
+DIST linux-6.x-sha256sums-20260118.asc 193071 BLAKE2B 
7705ec74114923142587c593711533eb2a4c38356fa1a6e47a0a824d8c8f5cdf6e41b4c9e6f48fcd579cc9149597c85be997d5f09532e0f350626542cd1fa66a
 SHA512 
2a22041d1977810b2aa9898369a120b3462ad0c9ec647d1ffffd9f7c85c01ff61b5bf9cf059dc9826499f79121c94ed2bb8a7a8e1a5e5ca2a9186c9a35642b28
 DIST linux-gentoo-patches-5.10.246.tar.xz 23580 BLAKE2B 
1184fd10a1321cfde67d276426103c73993fbe93e81047b494d358c433daa10a3c141349d01daa7147a05eeaccaa0eb87256b4f523e66f2f7f7022385982776b
 SHA512 
31dd105101372b569c98bc72d6d8fd15fe95ece08ec9f48de10f91112f1526ccfbb349a67913ef1f8c798dd3dceeecc6312eeefc097d9ccd3b55edc70d3dcf10
 DIST linux-gentoo-patches-5.15.195.tar.xz 12876 BLAKE2B 
d675d4150c8292c4f4b9846a26c53099910905e04e3015cfb3cb60e53dea99028b2e6fcbc345255246103699910aecf916054a09598e931d110b31db59a0b517
 SHA512 
e86691215cdab56a1a4fbe9aa3de44bda93db5659c39b04bfce53ed6ad8ed6923853431abb9444471b227421619c40e8841dab582b8007216e3c22e2b348a549
 DIST linux-gentoo-patches-6.1.156.tar.xz 31604 BLAKE2B 
09ede2987691e372c41567d975070451d243662b9f86dcd35489b63b732583e34431e1ad93ade3f9ea77dddae06e71e5752c0d12b3b6d0765106e19fe30876a4
 SHA512 
2f4a7960956c3aa7bbb46b20d14051ad58f07f45f8c4a6115100aaf6a46ddeaf414e1247d6034e4f71bdd7fd9479cb1b1bffab5e480a0422ad9af3b23e2bf95c
@@ -63,5 +68,6 @@ DIST patch-6.12.64.xz 3723996 BLAKE2B 
79527e9990c84105254f3f515906809a3d2fb00944
 DIST patch-6.12.65.xz 3728296 BLAKE2B 
eddc8ef3db5f267d11222eb19b95c6ee46bebd63abc7e107b10894c426ed3303537522738e1cdb14f6feeaa1c513fc415e57e35b247a7e361f6cba42242855fd
 SHA512 
668f8af255a429048875d23c0c859d763ee6998d5205bd4e1614dfa46dfb389c8fe14cb29a22fdb6989f289c477bd1d1afb28be77d4c7ba933f10a6b4332e609
 DIST patch-6.18.4.xz 412512 BLAKE2B 
2a78cd052874eb01d38b8857e7647ea3f5904f8ec030b4c90f6b56262ee1974ee76de4359cc1748b9f0e97c5a330f9ac6dd9e3ad8623b96150b3292cb870e33b
 SHA512 
3321241effb0567caacc08f67a1ea8d59d11aac69e6c001b6fbf566f894d70416e91e9ec605ae27909e2e5feac25d9a93bed7db1ede06700afc810cd8e34030d
 DIST patch-6.18.5.xz 414548 BLAKE2B 
50fe5af5616fb080d90111c9b10d7f24ffa40ea6bcd7a645250622ff4adf7923f09bd1a93c82947c6e56a77ea457eb5df14aa215f6c3cae036cc1f11cc20f3d0
 SHA512 
2c07af94135abbb1fc118be061c7b39e3b692783e67231954eabe1ccac8948a126084e651d5648aebd6d58667ac82ba41264057df1cc81fcaa161df5eee56395
+DIST patch-6.18.6.xz 465484 BLAKE2B 
b7df26c8e524eacf89dfd34c92d572a0b36e0f6c6bbe3183d3cb909ef156487557337bd1e3780ce383966d06a9d2f640cf6ee4fc64750ff9c592a46fea010993
 SHA512 
ffc4711d98b639f1b43fbaeebb8f5c088218b263b178b03494522d3ef21898595fb961bb4202284d40aa42b3a8a38e365e3b610dd9ce86d19e19d9068e54609c
 DIST patch-6.6.119.xz 5306132 BLAKE2B 
36172254639820d8853be83c2f98cf1e9923087b07bc939d0ff97dd8f3fa1af3ea1719f76aff619f6e7d8e493d7d2f059beac5127a644bc9e533a95b35c14759
 SHA512 
a4e8267769e719a30ca8d07a5c6f87b4856d55711eebde74170e8e1de4ef74be3ad69cbcb7d26bc7ae2e7a133755b7c2d1faede7e8389c29265358868238a29a
 DIST patch-6.6.120.xz 5455104 BLAKE2B 
0c6395ff0a859101789bd2d02d9ea5e29611c38bec75f575fc656248980b622f365fe1b48e90b2d3bbea27c584bcfc4dff4eba7a6a65666f600e324511790602
 SHA512 
ce62624edc873023769d23bf02b015aee84d9eb38830956b3738bbabeff3c741f2d046c2a5254674e57e10614a4209ba4f3586a995180951923798634bacb2b0

diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.6.ebuild 
b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.6.ebuild
new file mode 100644
index 000000000000..e71ab28e462d
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.6.ebuild
@@ -0,0 +1,236 @@
+# 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.18.4
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20260118
+
+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}"
+       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
+}

Reply via email to