git.iko.soy/typeable/nixpkgs
on master help sign in
linux: add flavor metadata
commite6db435973160591fe7348876a5567c729495175 authorJonathan Ringer <jonringer117@gmail.com> dateThu 29 Oct 2020, 01:15 (6 years ago) parentf89356b
4 files changed+15−1
pkgs/os-specific/linux/kernel/generic.nix+8−1 pkgs/os-specific/linux/kernel/linux-libre.nix+1 pkgs/os-specific/linux/kernel/linux-zen.nix+1 pkgs/top-level/all-packages.nix+5
pkgs/os-specific/linux/kernel/generic.nix+8−1
@@ -45,6 +45,11 @@
4545 stdenv.hostPlatform != stdenv.buildPlatform
4646, extraMeta ? {}
4747
48+, isXen ? features.xen_dom0 or false
49+, isZen ? false
50+, isLibre ? false
51+, isHardened ? false
52+
4853# easy overrides to stdenv.hostPlatform.platform members
4954, autoModules ? stdenv.hostPlatform.platform.kernelAutoModules
5055, preferBuiltin ? stdenv.hostPlatform.platform.kernelPreferBuiltin or false
@@ -175,7 +180,9 @@ let
175180
176181 passthru = {
177182 features = kernelFeatures;
178− inherit commonStructuredConfig;
183+ inherit commonStructuredConfig isXen isZen isHardened isLibre;
184+ kernelOlder = lib.versionOlder version;
185+ kernelAtLeast = lib.versionAtLeast version;
179186 passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]);
180187 };
181188
pkgs/os-specific/linux/kernel/linux-libre.nix+1
@@ -17,6 +17,7 @@ let
1717in linux.override {
1818 argsOverride = {
1919 modDirVersion = "${linux.modDirVersion}-gnu";
20+ isLibre = true;
2021
2122 src = stdenv.mkDerivation {
2223 name = "${linux.name}-libre-src";
pkgs/os-specific/linux/kernel/linux-zen.nix+1
@@ -7,6 +7,7 @@ in
77buildLinux (args // {
88 modDirVersion = "${version}-zen1";
99 inherit version;
10+ isZen = true;
1011
1112 src = fetchFromGitHub {
1213 owner = "zen-kernel";
pkgs/top-level/all-packages.nix+5
@@ -18014,6 +18014,10 @@ in
1801418014 inherit kernel;
1801518015 inherit (kernel) stdenv; # in particular, use the same compiler by default
1801618016
18017+ # to help determine module compatibility
18018+ inherit (kernel) isXen isZen isHardened isLibre;
18019+ inherit (kernel) kernelOlder kernelAtLeast;
18020+
1801718021 # Obsolete aliases (these packages do not depend on the kernel).
1801818022 inherit (pkgs) odp-dpdk pktgen; # added 2018-05
1801918023
@@ -18277,6 +18281,7 @@ in
1827718281 kernelPatches.hardened.${kernel.meta.branch}
1827818282 ];
1827918283 modDirVersionArg = kernel.modDirVersion + "-hardened";
18284+ isHardened = true;
1828018285 });
1828118286
1828218287 linuxPackages_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux { });