summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-kernel/asahi-sources/Manifest1
-rw-r--r--sys-kernel/asahi-sources/asahi-sources-6.8.6_p1.ebuild76
2 files changed, 77 insertions, 0 deletions
diff --git a/sys-kernel/asahi-sources/Manifest b/sys-kernel/asahi-sources/Manifest
index 8715ebde0d66..23d203d4eafc 100644
--- a/sys-kernel/asahi-sources/Manifest
+++ b/sys-kernel/asahi-sources/Manifest
@@ -1,2 +1,3 @@
DIST asahi-sources-6.6.0_p16-rust-alloc-fix.patch 52132 BLAKE2B 3ba12bf87decb581626739786b8c0b6686c8a1d2c964ac534e2701473b117d59b084c686ba8e09bb65f27fbe57574ec2ddf8e89b544f3bdaaebc7acd4f0d2d5f SHA512 d4d1edab5a67152326a4712493a783660f68c1353e058536d19ed7a7f7d288e77b9916fc07639edd1f13f8a1948028fad3b92a90c03152522159b7f79ab54aa1
DIST asahi-sources-6.6.0_p16.tar.gz 229861406 BLAKE2B e8f90373fe3cfb0ee8824158c59d548af05d1e68626715a65dcf086b35cfe7f4d44b184f02bbfad33474040b86f488e4fa99c8886ae329cf138933161658f94c SHA512 fc62cf346b95229aa31bc1483c9fcffaeacf94d09d13801a3e8e50ed3ba7f3d1b1d4dd8083051879955e1f99bffa61bf411cd38fcc45e176d372fc1d205b9c76
+DIST linux-asahi-6.8.6-1.tar.gz 235247252 BLAKE2B 897e58cbe624b011952cd4a21b25b1bec0ad532c5cb5f30c9bd0ac33e4c981928f2c65df26d14c34629852f14e34f7c34ea4d4871084028cc20a285afba3b569 SHA512 b422427078bfd82a427bcc7a094c80f106e63359aaa7cf6dddf5976ec809a417fd19081e84a6b4bcfaba18a3cb48c6e86b2a5ce8829d14dec1dce4a7a7c0cfb6
diff --git a/sys-kernel/asahi-sources/asahi-sources-6.8.6_p1.ebuild b/sys-kernel/asahi-sources/asahi-sources-6.8.6_p1.ebuild
new file mode 100644
index 000000000000..f975144c1b51
--- /dev/null
+++ b/sys-kernel/asahi-sources/asahi-sources-6.8.6_p1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+K_SECURITY_UNSUPPORTED="1"
+ETYPE="sources"
+#K_WANT_GENPATCHES="base extras experimental"
+#K_GENPATCHES_VER="5"
+K_NODRYRUN="1"
+
+inherit kernel-2
+detect_version
+detect_arch
+
+if [[ ${PV} != ${PV/_rc} ]] ; then
+ # $PV is expected to be of following form: 6.0_rc5_p1
+ MY_TAG="$(ver_cut 6)"
+ MY_P="asahi-$(ver_rs 2 - $(ver_cut 1-4))-${MY_TAG}"
+else
+ # $PV is expected to be of following form: 5.19.0_p1
+ MY_TAG="$(ver_cut 5)"
+ if [[ "$(ver_cut 3)" == "0" ]] ; then
+ MY_P="asahi-$(ver_cut 1-2)-${MY_TAG}"
+ else
+ MY_P="asahi-$(ver_cut 1-3)-${MY_TAG}"
+ fi
+fi
+
+DESCRIPTION="Asahi Linux kernel sources"
+HOMEPAGE="https://asahilinux.org"
+KERNEL_URI="https://github.com/AsahiLinux/linux/archive/refs/tags/${MY_P}.tar.gz -> linux-${MY_P}.tar.gz"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}
+"
+
+KEYWORDS="~arm64"
+IUSE="rust"
+
+DEPEND="
+ ${DEPEND}
+ rust? (
+ || (
+ >=dev-lang/rust-bin-1.76[rust-src,rustfmt]
+ >=dev-lang/rust-1.76[rust-src,rustfmt]
+ )
+ dev-util/bindgen
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/asahi-sources-6.6.0_p16-enable-speakers-stage1.patch"
+ "${FILESDIR}/asahi-sources-6.6.0_p16-enable-speakers-stage2.patch"
+)
+
+src_unpack() {
+ unpack linux-${MY_P}.tar.gz
+ mv linux-${MY_P} linux-${KV_FULL} || die "Could not move source tree"
+}
+
+src_prepare() {
+ default
+ cd "${WORKDIR}/linux-${KV-FULL}" || die
+ # XXX: Genpatches do not yet work with Rust kernels
+ #handle_genpatches --set-unipatch-list
+ #[[ -n ${UNIPATCH_LIST} || -n ${UNIPATCH_LIST_GENPATCHES} || -n ${UNIPATCH_LIST_DEFAULT} ]] && \
+ # unipatch "${UNIPATCH_LIST_DEFAULT} ${UNIPATCH_LIST_GENPATCHES} ${UNIPATCH_LIST}"
+ #unpack_fix_install_path
+ #env_setup_xmakeopts
+ echo "-${MY_TAG}" > localversion.10-pkgrel || die
+ cd "${S}" || die
+}
+
+pkg_postinst() {
+ einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
+ einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
+ kernel-2_pkg_postinst
+}