DIST genpatches-5.4-40.extras.tar.xz 1756 BLAKE2B 546f44a21973cdce099df5f163c9c655b590c9ee7b2fdbc533f2586ef6b3995cd7348ff32378fda3a991c567000b5d5956680b35374ca1b990f2e1ba698ecb32 SHA512 bcf61ddc04e0673c68e025889264f67525a2c7d66c826dfdfb6e65b38f5c1d12a25e9d4aa6b01ebdd170ea6d72196f972df5bfc284122581e153d4fc2f69edf0
DIST genpatches-5.4-42.base.tar.xz 1439632 BLAKE2B bc5456a843a80658e996e64aa572d28b71ae2eadc0df785d20365108c7f08d519054af2b5333803152be2aa8be914d247fdcf741f9817efb32900fa2ce78c249 SHA512 f53c61d79823524515a3c320186cb712ac826a272921a224db0bdf8f1d0f9730a07e01bcc14c11ae6500f94464f272fda67ef1fcd3ba4998a92695951b22fe3b
DIST genpatches-5.4-42.extras.tar.xz 1764 BLAKE2B 4f9f10869eb9b41e49b89defb9bd5031303835a6b50daa0448eb3e8537a7cc4ad98ac302b69863147a9ebb12e447aa8f2a94b606a3d96201f347c463ba01b59e SHA512 893f7ce552c09ba1bdc9be487dba6fa0bdc599a930762d01ea147c2d53f2c0e96d1643655f553d646c40a8f70ded0de5c9b41c0f8294172b440fe118364887d2
+DIST genpatches-5.4-43.base.tar.xz 1471384 BLAKE2B 5d95108953fa888770bc863ec3819bfb652e3cde4a8a9db3929e4dfe3cd87e100e993c83fe0d87d064e68878c4f548b327f33e89058d16d66dfe43cd0880c359 SHA512 3f387d99a5a3f458b366b8fb0d6ddc0891171b532741089fd3ccaa5900083102fc63ea54e811042dac9d6b0ac87781109944bd8ff3ac9b63e541e7c8c180d32b
+DIST genpatches-5.4-43.extras.tar.xz 1764 BLAKE2B 92a0a6bc5406ad2b27e6de9daa95b005a2ac80d0373d15cf8b080e6bda504285cc63137113230d7213a47722f3cbef61138034b6e844d8a1875c5098acc18b85 SHA512 15b38aef60c03de9ece8c48e27ac8398c2a21188223fa5fd830729a946738f1ab1f1b811f07a1909a172e394fd8e0b7ada5561cd58ef83112000436a741f0476
DIST genpatches-5.6-15.base.tar.xz 292284 BLAKE2B 0d80ef60c429516c2888e18704a4deaf6d293f5e60179b4dff080b1aff0088c69d5629a2bef1f57ccd90ca694460f3d57cfde7ed3274d30e982b506edf2bb5f6 SHA512 afb1c877d5317881deda321c87aae3138b147b45aeb4af5c1c377d87c142626904db59a5b26758a9f873bd8760c26e305487156438a553c9dda11f3ed1801875
DIST genpatches-5.6-15.extras.tar.xz 1756 BLAKE2B b28a36cb3ccbfb9b79757e1684535eb8283157accdfa357d47ee8a699a4837f75f4aa0dfedfbac3d9e402b36bb669d8623f37b0c8b9dc24d095457a0da40ffe0 SHA512 107ab66357f3ae9183488fdf0d963561e1b862dedc0863310d78e6607c380c8dce54d555e1190b6aa8b09c1222e6fd137947b489e84e91a3bf3f98fa7d85df20
DIST genpatches-5.6-16.base.tar.xz 305568 BLAKE2B 90609dd7eb9cda256927fbce372f24898098f933cccfb90d73f88ab0d6b4caca29b3f2e8d016eb344394e9828e5fd493f38b3b2c0f621fd08c99f54acff58fae SHA512 19b460551fe26dd7b7dcf929914710f0d7aa51bca384a5184518d97776e14d2ff40ae74e81c2d1f2c833e9a1b61cb513867b5243994dd54ed4aba62cb49291d3
--- /dev/null
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit kernel-build
+
+MY_P=linux-${PV%.*}
+GENPATCHES_P=genpatches-${PV%.*}-${PV##*.}
+# https://git.archlinux.org/svntogit/packages.git/log/trunk/config?h=packages/linux
+AMD64_CONFIG_VER=5.4.15-arch1
+AMD64_CONFIG_HASH=dc8d69b59a7a529ec5aaeb6b32b16e59a3cc1569
+# https://git.archlinux32.org/packages/log/core/linux/config.i686
+I686_CONFIG_VER=5.4.15-arch1
+I686_CONFIG_HASH=1ad219bd3f0ab439a81ed01fec7660eeea7daa0e
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="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
+ amd64? (
+ https://git.archlinux.org/svntogit/packages.git/plain/trunk/config?h=packages/linux&id=${AMD64_CONFIG_HASH}
+ -> linux-${AMD64_CONFIG_VER}.amd64.config
+ )
+ x86? (
+ https://git.archlinux32.org/packages/plain/core/linux/config.i686?id=${I686_CONFIG_HASH}
+ -> linux-${I686_CONFIG_VER}.i686.config
+ )"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ !sys-kernel/vanilla-kernel:${SLOT}
+ !sys-kernel/vanilla-kernel-bin:${SLOT}"
+
+src_prepare() {
+ local PATCHES=(
+ # meh, genpatches have no directory
+ "${WORKDIR}"/*.patch
+ )
+ default
+
+ # prepare the default config
+ case ${ARCH} in
+ amd64)
+ cp "${DISTDIR}"/linux-${AMD64_CONFIG_VER}.amd64.config .config || die
+ ;;
+ x86)
+ cp "${DISTDIR}"/linux-${I686_CONFIG_VER}.i686.config .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local config_tweaks=(
+ # shove arch under the carpet!
+ -e 's:^CONFIG_DEFAULT_HOSTNAME=:&"gentoo":'
+ # we do support x32
+ -e '/CONFIG_X86_X32/s:.*:CONFIG_X86_X32=y:'
+ # disable signatures
+ -e '/CONFIG_MODULE_SIG/d'
+ -e '/CONFIG_SECURITY_LOCKDOWN/d'
+ # disable compression to allow stripping
+ -e '/CONFIG_MODULE_COMPRESS/d'
+ # disable gcc plugins to unbreak distcc
+ -e '/CONFIG_GCC_PLUGIN_STRUCTLEAK/d'
+ )
+ sed -i "${config_tweaks[@]}" .config || die
+}