lol
This commit is contained in:
@@ -50,6 +50,8 @@ in
|
|||||||
linuxPackages_cachyos-lts = cachyosPackages.cachyos-lts;
|
linuxPackages_cachyos-lts = cachyosPackages.cachyos-lts;
|
||||||
# Steamdeck
|
# Steamdeck
|
||||||
linuxPackages_cachyos-deckify = cachyosPackages.cachyos-deckify;
|
linuxPackages_cachyos-deckify = cachyosPackages.cachyos-deckify;
|
||||||
|
# Asahi (Apple Silicon)
|
||||||
|
linuxPackages_cachyos-asahi = cachyosPackages.cachyos-asahi;
|
||||||
|
|
||||||
# Clang Kernels
|
# Clang Kernels
|
||||||
# Latest
|
# Latest
|
||||||
@@ -73,5 +75,7 @@ in
|
|||||||
linuxPackages_cachyos-rc-lto-znver4 = cachyosPackages.cachyos-rc-lto-znver4;
|
linuxPackages_cachyos-rc-lto-znver4 = cachyosPackages.cachyos-rc-lto-znver4;
|
||||||
# Steamdeck
|
# Steamdeck
|
||||||
linuxPackages_cachyos-deckify-lto = cachyosPackages.cachyos-deckify-lto;
|
linuxPackages_cachyos-deckify-lto = cachyosPackages.cachyos-deckify-lto;
|
||||||
|
# Asahi (Apple Silicon)
|
||||||
|
linuxPackages_cachyos-asahi-lto = cachyosPackages.cachyos-asahi-lto;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ let
|
|||||||
ltsVersions = mkVersions (selectVariant versionSpec "lts" null);
|
ltsVersions = mkVersions (selectVariant versionSpec "lts" null);
|
||||||
rcVersions = mkVersions (selectVariant versionSpec "rc" null);
|
rcVersions = mkVersions (selectVariant versionSpec "rc" null);
|
||||||
hardenedVersions = mkVersions (selectVariant versionSpec "hardened" null);
|
hardenedVersions = mkVersions (selectVariant versionSpec "hardened" null);
|
||||||
|
asahiVersions = mkVersions (selectVariant versionSpec "asahi" null);
|
||||||
|
|
||||||
# ######################################################
|
# ######################################################
|
||||||
# Base LTO Config #
|
# Base LTO Config #
|
||||||
@@ -217,6 +218,31 @@ let
|
|||||||
withNTSync = false;
|
withNTSync = false;
|
||||||
withHDR = false;
|
withHDR = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# ######################################################
|
||||||
|
# Base Asahi Config #
|
||||||
|
# ######################################################
|
||||||
|
|
||||||
|
asahiAttrs = {
|
||||||
|
versions = asahiVersions;
|
||||||
|
|
||||||
|
# Asahi tracks the 6.18 series; use the LTS config base
|
||||||
|
taste = "linux-cachyos-asahi";
|
||||||
|
|
||||||
|
# Apple Silicon is aarch64-only; no x86 march tuning
|
||||||
|
mArch = null;
|
||||||
|
|
||||||
|
# NTSync and HDR are x86/display-stack features, not applicable here
|
||||||
|
withNTSync = false;
|
||||||
|
withHDR = false;
|
||||||
|
|
||||||
|
# Disable module building extras that don't apply to aarch64 targets
|
||||||
|
packagesExtend =
|
||||||
|
_kernel: _final: prev:
|
||||||
|
prev // { recurseForDerivations = false; };
|
||||||
|
|
||||||
|
description = "Linux EEVDF-BORE scheduler Kernel by CachyOS with Asahi Linux patches for Apple Silicon";
|
||||||
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
inherit
|
inherit
|
||||||
@@ -277,6 +303,16 @@ in
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
# Asahi GCC
|
||||||
|
cachyos-asahi = mkCachyKernel (
|
||||||
|
gccKernelAttrs
|
||||||
|
// asahiAttrs
|
||||||
|
// {
|
||||||
|
pname = "cachyos-asahi";
|
||||||
|
configPath = ./config-nix/${arch}-linux/cachyos-lts.${arch}-linux.nix;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# Deckify GCC
|
# Deckify GCC
|
||||||
cachyos-deckify = mkCachyKernel (
|
cachyos-deckify = mkCachyKernel (
|
||||||
gccKernelAttrs
|
gccKernelAttrs
|
||||||
@@ -346,6 +382,16 @@ in
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
# Asahi LTO
|
||||||
|
cachyos-asahi-lto = mkCachyKernel (
|
||||||
|
ltoKernelAttrs
|
||||||
|
// asahiAttrs
|
||||||
|
// {
|
||||||
|
pname = "cachyos-asahi-lto";
|
||||||
|
configPath = ./config-nix/${arch}-linux/cachyos-lts-lto.${arch}-linux.nix;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# RC LTO
|
# RC LTO
|
||||||
cachyos-rc-lto = mkCachyKernel (
|
cachyos-rc-lto = mkCachyKernel (
|
||||||
ltoKernelAttrs
|
ltoKernelAttrs
|
||||||
|
|||||||
@@ -9,7 +9,13 @@
|
|||||||
commonMakeFlags,
|
commonMakeFlags,
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
version = if stdenv.isAarch64 then "6.12.47" else cachyConfig.versions.linux.version;
|
version =
|
||||||
|
if cachyConfig.taste == "linux-cachyos-asahi" then
|
||||||
|
cachyConfig.versions.linux.version
|
||||||
|
else if stdenv.isAarch64 then
|
||||||
|
"6.12.47"
|
||||||
|
else
|
||||||
|
cachyConfig.versions.linux.version;
|
||||||
|
|
||||||
majorMinor = lib.versions.majorMinor version;
|
majorMinor = lib.versions.majorMinor version;
|
||||||
|
|
||||||
@@ -26,7 +32,14 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
src =
|
src =
|
||||||
if stdenv.isAarch64 then
|
if cachyConfig.taste == "linux-cachyos-asahi" then
|
||||||
|
fetchFromGitHub {
|
||||||
|
owner = cachyConfig.versions.linux.owner;
|
||||||
|
repo = cachyConfig.versions.linux.repo;
|
||||||
|
rev = cachyConfig.versions.linux.rev;
|
||||||
|
inherit (cachyConfig.versions.linux) hash;
|
||||||
|
}
|
||||||
|
else if stdenv.isAarch64 then
|
||||||
let
|
let
|
||||||
tag = "stable_20250916";
|
tag = "stable_20250916";
|
||||||
hash = "sha256-Rjn+eWl5cLcc9wgjS3HYVaWM5eKMN3pPfPbsu+QGR/M=";
|
hash = "sha256-Rjn+eWl5cLcc9wgjS3HYVaWM5eKMN3pPfPbsu+QGR/M=";
|
||||||
@@ -432,6 +445,10 @@ let
|
|||||||
"-d LATENCYTOP"
|
"-d LATENCYTOP"
|
||||||
"-d DEBUG_PREEMPT"
|
"-d DEBUG_PREEMPT"
|
||||||
];
|
];
|
||||||
|
# Asahi uses the LTS config base since it tracks the same 6.18 kernel series
|
||||||
|
configTaste =
|
||||||
|
if cachyConfig.taste == "linux-cachyos-asahi" then "linux-cachyos-lts" else cachyConfig.taste;
|
||||||
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
inherit src patches;
|
inherit src patches;
|
||||||
@@ -461,7 +478,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
runHook preBuild
|
runHook preBuild
|
||||||
|
|
||||||
echo ${cachyConfig.taste}
|
echo ${cachyConfig.taste}
|
||||||
cp "${config-src}/${cachyConfig.taste}/config" ".config"
|
cp "${config-src}/${configTaste}/config" ".config"
|
||||||
make $makeFlags olddefconfig
|
make $makeFlags olddefconfig
|
||||||
patchShebangs scripts/config
|
patchShebangs scripts/config
|
||||||
scripts/config ${lib.concatStringsSep " " pkgbuildConfig}
|
scripts/config ${lib.concatStringsSep " " pkgbuildConfig}
|
||||||
|
|||||||
@@ -31,6 +31,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"variants": {
|
"variants": {
|
||||||
|
"asahi": {
|
||||||
|
"sources": {
|
||||||
|
"linux": {
|
||||||
|
"fetcher": "github",
|
||||||
|
"owner": "AsahiLinux",
|
||||||
|
"repo": "linux",
|
||||||
|
"version": "6.18.15",
|
||||||
|
"rev": "asahi-6.18.15-1",
|
||||||
|
"hash": "sha256-A+/tpsog/ku+ujqMSLB+AkrKoUWxYDpoPzC4ESkeqvA="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"lts": {
|
"lts": {
|
||||||
"sources": {
|
"sources": {
|
||||||
"linux": {
|
"linux": {
|
||||||
|
|||||||
Reference in New Issue
Block a user