nixpkgs/pkgs/os-specific/linux/scx/default.nix
2024-11-23 01:15:37 +05:30

39 lines
983 B
Nix

{
lib,
callPackage,
fetchFromGitHub,
}:
let
scx-common = rec {
versionInfo = lib.importJSON ./version.json;
inherit (versionInfo.scx) version;
src = fetchFromGitHub {
owner = "sched-ext";
repo = "scx";
rev = "refs/tags/v${versionInfo.scx.version}";
inherit (versionInfo.scx) hash;
};
meta = {
homepage = "https://github.com/sched-ext/scx";
changelog = "https://github.com/sched-ext/scx/releases/tag/v${versionInfo.scx.version}";
license = lib.licenses.gpl2Only;
platforms = lib.platforms.linux;
badPlatforms = [ "aarch64-linux" ];
maintainers = with lib.maintainers; [ johnrtitor ];
};
};
schedulers = lib.mergeAttrsList [
{ cscheds = import ./scx_cscheds.nix; }
{ rustscheds = import ./scx_rustscheds.nix; }
{ full = import ./scx_full.nix; }
];
in
(lib.mapAttrs (name: scheduler: callPackage scheduler { inherit scx-common; }) schedulers)
// {
inherit scx-common;
}