diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index d39c11868882a..24c2f50871246 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -30,6 +30,7 @@ DIST linux-gentoo-patches-6.6.145.tar.xz 39848 BLAKE2B 46a5473d9d056b691af2bcda3 DIST linux-gentoo-patches-7.1.9.tar.xz 10624 BLAKE2B 4b502aed968239f52321da548b257b2a06d4e3cf520090d7aa53dbbf77ef5cc9e64d1bb209389f1c51e48c5953666470186aaaa55db378cb34940ce492693271 SHA512 1d2d466b005cc7537aad1e8222411dad8a86bb82c185f139a6972f8354b47f758fb8555ef04b2217cd082db5b1852ba00b5a5eb0673a57c6423dacbe606c7d39 DIST patch-6.1.186.xz 8087268 BLAKE2B 5f78ce9b0b0cbddd71b4bd4489175c3e1a494c8d4e596bcc0785f7f7d9f1221c10eb5e35b6e687550363e7ee37968ee8fbb7c6fe60a0b2e4e882b4f265b2547b SHA512 5816e156eaa305543af1f06530fd42b9abd2b1b2e79b379800cc534e6bf1bbdfb31c693f411c15c444920b788f3bed1405abaecfdaa2d3e2d7cc34c1f508d8c2 DIST patch-6.1.187.xz 8109252 BLAKE2B 5ec497e8fc6f086140d425fd7b4ab122d8a579b4d7227711eb0c2493cbf03590e494de9ab1700a950eac3c962dba399c996d94aefe59fd9e6154f7ffb18618b8 SHA512 bc89dd895bbf1ad4900a1a044ca9858fab747c4b46758770426c9590d22d6048adaa08919563fc9b20e9f82ba99be9f99242d7845dcf9a2de707d48dd2de9fa1 +DIST patch-6.1.188.xz 8362360 BLAKE2B 2f97dbb61f5f7f29a009866ccb3ebe10f87b18ef8da32245303edc68a6ad18e80ec27f08bc6bfdcd7a6387139437559e7aa3f30357c298e88c7ed8287875fb9e SHA512 78c57eabe1dbb76fe39add4d54efa8ca3e34af601aa6869e46a6d58d6e9cdcd51cfa03808c167c22996e09c1471fff7bb062631f09e6de60d5b03e9b85822ae2 DIST patch-6.12.107.xz 5646156 BLAKE2B a223da9e2d6d8f52be6dd2935310de152a3afce88b5ee61bdab0e688ceaa6e96c1cb25e9378ecb64600cffa68f2b9f6f8b44ba203c7ec9076444d1b4bb73b222 SHA512 b3a97567c0c5a1bd0903a6f3f520622a0fb6b0bb29447113b6e77dbfd802470a7bde78e18a08ae3f3b848e55cc565389b58d989640ec40ce8b9aa8cf4c4a14a0 DIST patch-6.12.108.xz 5674920 BLAKE2B b3cd77d6351c726f5eca6a5990cae7702aa95f1d7bcb4a244b483cafba951af1e500e1bddb632a6a273c180beebaa9bec527ebf5d0efe7463d979878aa5492b1 SHA512 8fa2ccbb55ba4cf6c6613e97696525b69ffbd88051fb3f9e2a03c98daa84d3f657f43212da7e4c2b5450fc405331f714e8c72ac12cd79487842a26c65325627c DIST patch-6.12.109.xz 5753324 BLAKE2B 9ddaebf8cb9e93e79ccf02efd4e65e8892ff751e3e660f00f8032c42ac275d72ba4aac1d61b8f628a52c064a5bc54c34d05a9510b6a9c9d90f79097c4f7e41c8 SHA512 bede54fa2db04d3bcb4b1e30369a897135a8fa6637b339a94e21cd6e198f1404109bb52626bdb3f88406e002c6f4430de8e05fc20bfeec37bc4ef434120e707f diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.188.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.188.ebuild new file mode 100644 index 0000000000000..2e7a673e2579c --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.1.188.ebuild @@ -0,0 +1,144 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit kernel-build toolchain-funcs verify-sig + +BASE_P=linux-${PV%.*} +PATCH_PV=${PV%_p*} +PATCHSET=linux-gentoo-patches-6.1.178 +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to git.gentoo.org:fork/fedora/kernel +CONFIG_VER=6.1.102-gentoo +GENTOO_CONFIG_P=gentoo-kernel-config-g19 +SHA256SUM_DATE=20260914 + +DESCRIPTION="Linux kernel built 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 + https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2 + https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2 + 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 + ) +" +S=${WORKDIR}/${BASE_P} + +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="debug hardened" +REQUIRED_USE=" + arm? ( savedconfig ) + hppa? ( savedconfig ) + riscv? ( savedconfig ) + sparc? ( savedconfig ) +" + +BDEPEND=" + debug? ( dev-util/pahole ) + verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 ) +" +PDEPEND=" + >=virtual/dist-kernel-${PV} +" + +QA_FLAGS_IGNORED=" + usr/src/linux-.*/scripts/gcc-plugins/.*.so + usr/src/linux-.*/vmlinux + usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg +" + +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 + + default +} + +src_prepare() { + local patch + 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 + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong | riscv | sparc) + > .config || die + ;; + amd64) + cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die + ;; + arm64) + cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die + biendian=true + ;; + x86) + cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die + ;; + *) + die "Unsupported arch ${ARCH}" + ;; + esac + + local myversion="-gentoo-dist" + use hardened && myversion+="-hardened" + echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die + local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}" + + local merge_configs=( + "${T}"/version.config + "${dist_conf_path}"/base.config + ) + use debug || merge_configs+=( + "${dist_conf_path}"/no-debug.config + ) + if use hardened; then + merge_configs+=( "${dist_conf_path}"/hardened-base.config ) + + tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config ) + + if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then + merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" ) + fi + fi + + # this covers ppc64 and aarch64_be only for now + if [[ ${biendian} == true && $(tc-endian) == big ]]; then + merge_configs+=( "${dist_conf_path}/big-endian.config" ) + fi + + use secureboot && merge_configs+=( "${dist_conf_path}/secureboot.config" ) + + kernel-build_merge_configs "${merge_configs[@]}" +}