diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest index ee4e0f1597818..983d536f582a5 100644 --- a/sys-kernel/gentoo-kernel/Manifest +++ b/sys-kernel/gentoo-kernel/Manifest @@ -24,6 +24,9 @@ DIST genpatches-6.13-7.extras.tar.xz 4056 BLAKE2B 955e08c33032fbb70ab68d49a52fa3 DIST genpatches-6.13-8.base.tar.xz 530700 BLAKE2B 8650d50f384ca432f277726ec238555fa64e4b037ed49d2405eb1c1a9f6300844fb34d41753ea18bd37a79735a1f54c7ce9af7c1c4e920efd6184a9283b79841 SHA512 c466145cff1087c565d9c3b77ed05cd9c5866589837244a60fd4eb7dfd24b4c093b03703058541f80212c4ca88c652700069e29890274094f9890df220dac5b9 DIST genpatches-6.13-8.experimental.tar.xz 6056 BLAKE2B 8a4591efbcfe36941d9d8f2296bcc49aaa7c0f8b1be38d1a4187bcbae6d5f41a70551d370cd8545e26fb93e8e4231f3ae2e7ecf71dce083dc12fa7a90a1da448 SHA512 61954f7ad5d1d51ca801167555f25205676b8c100126d583d159d279331f6af70dba40d9cfd2f208cf9e65c84914bbeb2d8e59946cdfd6a2d051ec2d9450cfe8 DIST genpatches-6.13-8.extras.tar.xz 4056 BLAKE2B 74359e29c6077971ea0748c3d75e1161e032bbd30c820e697c10bc1ce6595d49c14c71e10434a2531968f4a68d4adabc3cdf106547fde2e7b87db4933f5236ee SHA512 5cde4702c1ad427492575faa03c12bc1216e04350df3239ff8ca19393af4427eaf243b89a363d9022a38494618ce0355ac963722d1d60c4d958ad749a7510dcc +DIST genpatches-6.13-9.base.tar.xz 591648 BLAKE2B aca872a5d7956455b59fd50ea22b3b5e1da834506d9388614a36103fb2afdb1c7a02d75a8317378a9b6f934f3e5c294d5ffcadfb92d4d4850c7e865f3df18d0b SHA512 9fa7338ee164cd22c8cd0c5f9b133d64db60e8029232cb12ff8219a5a124ad0563673347639507b3ea6be66b5c42918bade3ff5b0515e44577120b8e2da55249 +DIST genpatches-6.13-9.experimental.tar.xz 6048 BLAKE2B e4b7ccd6b9b4595786b7099ff86e19a000d35ddbc41fc97c65af3f3a016259bed8de772ebc2b7067b0e50dae3afee37588bbf1cb0eb5e838e8d752faa8af04a1 SHA512 33c6de78db09a1c2f81b428c89e516a0808bf5b14b641bb14f505b66d186d49c2e3da4f686dae72648938b18459bbcc22dc07247ea101fa319f11fe57e86a101 +DIST genpatches-6.13-9.extras.tar.xz 4060 BLAKE2B f4ce8b701cafe532570d8066e2bc0a41eb2340f54a078a8766cd5f1e0c4e2ae5cbd17f6db1cea0b045ec92dc492d7a9886e9e0513adbc9bf5f3012efb9d7eee0 SHA512 43a23e9d3ad03b31a9de22270b89d6abf78247bbd9ad7a60e8d381c09affdb26e11041aa6cacaeef9d44be5b1b976d6d201047b3a6c52dd3e389633d525d013e DIST genpatches-6.6-88.base.tar.xz 4497952 BLAKE2B 65f393c767bd4edda1954fc15c90e07f5d5a67a445fe24063a94f7eeea23196bc0da417514a4048bd91b5cd330a309e69df4653846be0e0207abc649efa7f072 SHA512 16e5cc40edfe8edd95dad7e28f89b9593ee24fd380444ff67376bc95f71c71cb13b9a0ace7562ae7275c2acd405419534b8ffd66ee78a81897970b4c43f203ee DIST genpatches-6.6-88.experimental.tar.xz 6048 BLAKE2B 96b5565ca479bd73fa7c04d5f916cb2c5b2d10dbd5c33a6984822a6eafe149d43127bcf0f8c26435178c927c80eabf38e54e6b87c809cc37342c9e1f398f80c2 SHA512 51c63e1b48262aad4f3e676ce3988bf01eb4581a6bdbfce90fc6634f8546a56ddf79b58209906769dd04feb6df65a5e86034d806b0dc0bfdf2c02480db2df762 DIST genpatches-6.6-88.extras.tar.xz 4056 BLAKE2B 9dce8d9362ca0e3548e31392659afb0b475eb0ee03bb71c51cac40411f35ba8ffe519c3e8438a05dfd140a8032321b8936df4f48cc8eb87f8fd6ce0635249da6 SHA512 02e4cd170b09901dc9bf2655065a8eb44e2330375fbbb2c3aa81d3f8c2bf6854403b4d7b412fa3d6bb377ec3e39f5091355a0b649f6a69282123e3d710464845 diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.13.7.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.13.7.ebuild new file mode 100644 index 0000000000000..b9d4f92901a4b --- /dev/null +++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.13.7.ebuild @@ -0,0 +1,150 @@ +# 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-build toolchain-funcs + +MY_P=linux-${PV%.*} +GENPATCHES_P=genpatches-${PV%.*}-$(( ${PV##*.} + 2 )) +# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 +# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo +CONFIG_VER=6.13.6-gentoo +GENTOO_CONFIG_VER=g15 + +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/${MY_P}.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.base.tar.xz + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.extras.tar.xz + experimental? ( + https://dev.gentoo.org/~mpagano/dist/genpatches/${GENPATCHES_P}.experimental.tar.xz + ) + https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz + -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz + amd64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config + -> kernel-x86_64-fedora.config.${CONFIG_VER} + ) + arm64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config + -> kernel-aarch64-fedora.config.${CONFIG_VER} + ) + ppc64? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config + -> kernel-ppc64le-fedora.config.${CONFIG_VER} + ) + riscv? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-riscv64-fedora.config + -> kernel-riscv64-fedora.config.${CONFIG_VER} + ) + x86? ( + https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config + -> kernel-i686-fedora.config.${CONFIG_VER} + ) +" +S=${WORKDIR}/${MY_P} + +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="debug experimental hardened" +REQUIRED_USE=" + arm? ( savedconfig ) + hppa? ( savedconfig ) + sparc? ( savedconfig ) +" + +RDEPEND=" + !sys-kernel/gentoo-kernel-bin:${SLOT} +" +BDEPEND=" + debug? ( dev-util/pahole ) +" +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 +" + +src_prepare() { + local PATCHES=( + # meh, genpatches have no directory + "${WORKDIR}"/*.patch + ) + default + + local biendian=false + + # prepare the default config + case ${ARCH} in + arm | hppa | loong | sparc) + > .config || die + ;; + amd64) + cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die + ;; + arm64) + cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + ppc) + # assume powermac/powerbook defconfig + # we still package.use.force savedconfig + cp "${WORKDIR}/${MY_P}/arch/powerpc/configs/pmac32_defconfig" .config || die + ;; + ppc64) + cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die + biendian=true + ;; + riscv) + cp "${DISTDIR}/kernel-riscv64-fedora.config.${CONFIG_VER}" .config || die + ;; + x86) + cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .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-kernel-config-${GENTOO_CONFIG_VER}" + + 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[@]}" +}