Skip to content

Commit

Permalink
sys-kernel/asahi-sources: new package, add 6.9.12_p1
Browse files Browse the repository at this point in the history
Signed-off-by: James Calligeros <[email protected]>
  • Loading branch information
chadmed committed Jul 28, 2024
1 parent 1659f84 commit ffb5abd
Show file tree
Hide file tree
Showing 4 changed files with 137 additions and 0 deletions.
4 changes: 4 additions & 0 deletions sys-kernel/asahi-sources/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
DIST genpatches-6.9-13.base.tar.xz 688596 BLAKE2B 4d999aac191dbde56dbb6feae3d328d2e33f4731b7f9f6853bcd7e7f47e73dcb182e64b41c05e3035fade78ad02157a4fadc7e2e7e0d6a0a4bba5ff49b071adb SHA512 d9347755a75a5c34dee79cbf3eb012f7c3b669510c9fe1d87035ac36073139e9e22ca55cedf2bbda5cd493026637d266ea227473c9a3c6f402c0f0c41b9e3579
DIST genpatches-6.9-13.extras.tar.xz 4060 BLAKE2B 001215e8ff494a0daf42306c4f2301e477c4135a8817b4b0c2abe7bf6894c570e7bfcf8454d1db1703a52ab77b5d54dd6fcdcef72fc1a3e9730f238996830dd5 SHA512 9cbaa56e9d2dc20915d6831f73903ecefbc1361e56d27cf71df36db87b648643cb974cdea1ab96426a6eeec710259755fb58ec285425c6b7ba44f2a42bb5549e
DIST linux-6.9.tar.xz 144034416 BLAKE2B 4cf86c3cfe6e6534745d42dfaeca59b17ea1168c4e8b615c80e6d8aac735f11283cd85fa992b440b5d4452917e94b9f08397a64af0be5894e3df23c68892377e SHA512 fed3b4cd1fbfb4d94618587c1934273d2ecc8b6e42a3d586ff8a5f24980be930f2ef803aa2923ca3bfa5e4e619f967f3af315368f24fa76f610b10443624a579
DIST linux-asahi-6.9.12-1.patch 5386072 BLAKE2B e568cbb2e6f52fa1b708f3ff2264f4b26e46b77218d3cad9a3b18902e1181ce50cd596e308615ec9440db42a9c64f63bde08eeed60856d2e0f320d5a7dc2de73 SHA512 023abd2543c6f86e1eb5f3e65c9c4c9648275c65929b83540d2f5dd75a5ce0969483d128d7a47aeb6a6353b74c5e304c9816f8230a35a229520c7e79ef4e97b0
75 changes: 75 additions & 0 deletions sys-kernel/asahi-sources/asahi-sources-6.9.12_p1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI="8"
ETYPE="sources"

CKV="$(ver_cut 1-3)"
K_SECURITY_UNSUPPORTED="1"
K_WANT_GENPATCHES="base extras"
K_GENPATCHES_VER="13"
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_BASE="$(ver_rs 2 - $(ver_cut 1-4))"
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_BASE="$(ver_cut 1-2)"
else
MY_BASE="$(ver_cut 1-3)"
fi
fi

EXTRAVERSION="-asahi-${MY_TAG}"

ASAHI_TAG="asahi-${MY_BASE}-${MY_TAG}"

DESCRIPTION="Asahi Linux kernel sources"
HOMEPAGE="https://asahilinux.org"
SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}
https://github.com/AsahiLinux/linux/compare/v${MY_BASE}...${ASAHI_TAG}.patch
-> linux-${ASAHI_TAG}.patch
"
KV_FULL="${PVR/_p/-asahi-}"
S="${WORKDIR}/linux-${KV_FULL}"

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
)
"

UNIPATCH_STRICTORDER="yes"
UNIPATCH_LIST="
${FILESDIR}/asahi-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch
${DISTDIR}/linux-${ASAHI_TAG}.patch
"

src_prepare() {
default

# remove asahi upstream set localversion, use EXTRAVERSION instead
rm localversion.05-asahi
}

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
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
From 7bc5223ed71bdee422c01c67b0456c4238b4a36e Mon Sep 17 00:00:00 2001
From: Janne Grunau <[email protected]>
Date: Sat, 18 May 2024 11:47:46 +0200
Subject: [PATCH 1/1] config: gentoo: Drop RANDSTRUCT from
GENTOO_KERNEL_SELF_PROTECTION_COMMON

It is incompatible with RUST and the current method of selected it
results in Kconfig breakage due to circular dependencies. Drop it for
asahi-kernel.

Signed-off-by: Janne Grunau <[email protected]>
---
distro/Kconfig | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/distro/Kconfig b/distro/Kconfig
index 9166e4a9abe6..ad4b417e0da7 100644
--- a/distro/Kconfig
+++ b/distro/Kconfig
@@ -174,7 +174,7 @@ if GENTOO_KERNEL_SELF_PROTECTION
config GENTOO_KERNEL_SELF_PROTECTION_COMMON
bool "Enable Kernel Self Protection Project Recommendations"

- depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES && RANDSTRUCT_PERFORMANCE
+ depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES

select BUG
select STRICT_KERNEL_RWX
@@ -221,8 +221,6 @@ config GENTOO_KERNEL_SELF_PROTECTION_COMMON
select GCC_PLUGIN_LATENT_ENTROPY
select GCC_PLUGIN_STRUCTLEAK
select GCC_PLUGIN_STRUCTLEAK_BYREF_ALL
- select GCC_PLUGIN_RANDSTRUCT
- select GCC_PLUGIN_RANDSTRUCT_PERFORMANCE
select ZERO_CALL_USED_REGS if CC_HAS_ZERO_CALL_USED_REGS

help
--
2.45.0

18 changes: 18 additions & 0 deletions sys-kernel/asahi-sources/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>James Calligeros</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</email>
</maintainer>
<use>
<flag name="symlink">Automatically symlink the kernel sources to /usr/src/linux</flag>
<flag name="rust">Pull in the Rust For Linux dependencies</flag>
</use>
<upstream>
<remote-id type="github">AsahiLinux/linux</remote-id>
</upstream>
</pkgmetadata>

0 comments on commit ffb5abd

Please sign in to comment.