summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-kernel/pf-sources/Manifest1
-rw-r--r--sys-kernel/pf-sources/pf-sources-6.2_p6.ebuild95
2 files changed, 96 insertions, 0 deletions
diff --git a/sys-kernel/pf-sources/Manifest b/sys-kernel/pf-sources/Manifest
index 2afbb39c81ad..25da357241ca 100644
--- a/sys-kernel/pf-sources/Manifest
+++ b/sys-kernel/pf-sources/Manifest
@@ -17,5 +17,6 @@ DIST linux-6.2-pf2.tar.gz 222861169 BLAKE2B b3e6bddc8639475313cb3203b99e068c109c
DIST linux-6.2-pf3.tar.gz 222849935 BLAKE2B d0c00d16dd92a0a1617442cea2bba0aa64fbba16ae7632609efbb3c107bd27c9e5920b4292497dfbbcc02c8e05d9c726dd0b39a6c31bd834edb976268f6537ba SHA512 f0e24f4a69befbdf14124d8f82f1387a7e8dad7c997e63850d04f81658baf9d9bb7c827fabbe5163695eee8dd4c7bdc3c010674471fe8a3f3b57d2680b0593d7
DIST linux-6.2-pf4.tar.gz 222900183 BLAKE2B 6ed60362c81577e314c944f063ddbe547961990d1a54843ac1238f8e2e01fee8fd319be2f3ff33b364ce98909bba4f3fc4c61c67f3375a46b38c9c2db7568c34 SHA512 16aa5baeaa9e55a0c483b08baa2fb40d1f7c698ed1baaa52b832569284740bb5a9ef78b1b3bb415f096772a1efd9490fb28cdf0442d17210ae82da9e7ee7b745
DIST linux-6.2-pf5.tar.gz 222904645 BLAKE2B 90b5bec754bed66535c949ceb835875ff926764d37a1a0aab26324c6e83ad4634d1782afd1b10d38f9f2f110fc052ecc335d1ba6536e8e09738cbb070e7e7ef9 SHA512 00576eb22380a1d61eaae1570c2cac5d8a7492887d1bd6c94181142510796629ca98406922dc64d351ac8d861d1dfe7fe95c673ef8eff13555ded2a17757a881
+DIST linux-6.2-pf6.tar.gz 222930980 BLAKE2B 03579940417cd704020922a2b55574951301899ffcfba5a83b4537d8d139ff54c0e573e456006ddbfa05b1ec57d261d8e16a5a2c3170fbd65c50614c18f68355 SHA512 23516bda6c957b0c1cca977a14453d9e033b96be92410038eb6851d9957eed9ef4592e86897377265b36886f9be8d7624ab82b9f3955b18fd6ecbb92ee2cb2a0
DIST prjc-519-r1-vd-test.patch 274504 BLAKE2B 87950689ffe97134100aa91d0ff89acd6f4e93b626ad7ab08af464a49457f16526cae7b863d53213dd129d47b6f97b3407ae7027b02656d9eba85942241e8d3f SHA512 d652b6060400329d051257fedee5d9f37a70554ab722e93a15f294d1c6229bfa227941461147e0128178b02875cdf838e0d71e89884d8c01e7549ee482213b71
DIST prjc_v5.18-r2.patch 270353 BLAKE2B 15d7ed7a0eb6f7ad37feaf52ab7c383e1c7c3e72fb41a767c8d1151a0ad41255c216ede1e4938a041f3b628874ed61398c61dd7b0e0b62090730f2fd0f6a70db SHA512 25c558bd6281a09bb611c6cca68084b27d0f2e290d2c0575e88b6a94322fad86de6dbeda30eb77919edd5adff921ad445593d9478f115ec93fa2e4c7ed6b5c1e
diff --git a/sys-kernel/pf-sources/pf-sources-6.2_p6.ebuild b/sys-kernel/pf-sources/pf-sources-6.2_p6.ebuild
new file mode 100644
index 000000000000..2ee0009ae2d4
--- /dev/null
+++ b/sys-kernel/pf-sources/pf-sources-6.2_p6.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Define what default functions to run.
+ETYPE="sources"
+
+# Use genpatches but don't include the 'experimental' use flag.
+K_EXP_GENPATCHES_NOUSE="1"
+
+# Genpatches version to use. -pf patch set already includes vanilla linux updates. Regularly "1"
+# is the wanted value here, but the genpatches patch set can be bumped if it includes some
+# important fixes. src_prepare() will handle deleting the updated vanilla linux patches.
+# See https://archives.gentoo.org/gentoo-kernel/ (or subscribe to the list) to see all patches.
+K_GENPATCHES_VER="1"
+
+# -pf patch set already sets EXTRAVERSION to kernel Makefile.
+K_NOSETEXTRAVERSION="1"
+
+# pf-sources is not officially supported/covered by the Gentoo security team.
+K_SECURITY_UNSUPPORTED="1"
+
+# Define which parts to use from genpatches - experimental is already included in the -pf patch
+# set.
+K_WANT_GENPATCHES="base extras"
+
+# Major kernel version, e.g. 5.14.
+SHPV="${PV/_p*/}"
+
+# Replace "_p" with "-pf", since using "-pf" is not allowed for an ebuild name by PMS.
+PFPV="${PV/_p/-pf}"
+
+inherit kernel-2 optfeature
+detect_version
+
+DESCRIPTION="Linux kernel fork that includes the pf-kernel patchset and Gentoo's genpatches"
+HOMEPAGE="https://pfkernel.natalenko.name/
+ https://dev.gentoo.org/~mpagano/genpatches/"
+SRC_URI="https://codeberg.org/pf-kernel/linux/archive/v${PFPV}.tar.gz -> linux-${PFPV}.tar.gz
+ https://dev.gentoo.org/~mpagano/genpatches/tarballs/genpatches-${SHPV}-${K_GENPATCHES_VER}.base.tar.xz
+ https://dev.gentoo.org/~mpagano/genpatches/tarballs/genpatches-${SHPV}-${K_GENPATCHES_VER}.extras.tar.xz"
+
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+S="${WORKDIR}/linux-${PFPV}"
+
+K_EXTRAEINFO="For more info on pf-sources and details on how to report problems,
+ see: ${HOMEPAGE}."
+
+pkg_setup() {
+ ewarn ""
+ ewarn "${PN} is *not* supported by the Gentoo Kernel Project in any way."
+ ewarn "If you need support, please contact the pf developers directly."
+ ewarn "Do *not* open bugs in Gentoo's bugzilla unless you have issues with"
+ ewarn "the ebuilds. Thank you."
+ ewarn ""
+
+ kernel-2_pkg_setup
+}
+
+src_unpack() {
+ # Since the Codeberg-hosted pf-sources include full kernel sources, we need to manually override
+ # the src_unpack phase because kernel-2_src_unpack() does a lot of unwanted magic here.
+ unpack ${A}
+
+ mv linux linux-${PFPV} || die "Failed to move source directory"
+}
+
+src_prepare() {
+ # When genpatches basic version is bumped, it also includes vanilla linux updates. Those are
+ # already in the -pf patch set, so need to remove the vanilla linux patches to avoid conflicts.
+ if [[ ${K_GENPATCHES_VER} -ne 1 ]]; then
+ find "${WORKDIR}"/ -type f -name '10*linux*patch' -delete ||
+ die "Failed to delete vanilla linux patches in src_prepare."
+ fi
+
+ # kernel-2_src_prepare doesn't apply PATCHES(). Chosen genpatches are also applied here.
+ eapply "${WORKDIR}"/*.patch
+ default
+}
+
+pkg_postinst() {
+ # Fixes "wrongly" detected directory name, bgo#862534.
+ local KV_FULL="${PFPV}"
+ kernel-2_pkg_postinst
+
+ optfeature "userspace KSM helper" sys-process/uksmd
+}
+
+pkg_postrm() {
+ # Same here, bgo#862534.
+ local KV_FULL="${PFPV}"
+ kernel-2_pkg_postrm
+}