Files
2026-01-16 10:44:22 -08:00

57 lines
1.2 KiB
Nix

{
lib,
linkFarm,
clr,
ollama,
python3Packages,
rocmPackages,
magma-hip,
emptyDirectory,
stdenv,
}:
# This package exists purely to have a bunch of passthru.tests attrs
let
availableRocmDrvs = lib.pipe rocmPackages [
(lib.mapAttrsToList (
name: value: {
inherit name;
evaluated = builtins.tryEval value;
}
))
(builtins.filter (x: x.evaluated.success))
(map (x: {
inherit (x) name;
value = x.evaluated.value;
}))
(builtins.filter (x: lib.isDerivation x.value && (x.value.meta.available or true)))
];
in
stdenv.mkDerivation {
name = "rocm-tests";
nativeBuildInputs = [
clr
];
src = emptyDirectory;
postInstall = "mkdir -p $out";
passthru.tests = {
ollama = ollama.override {
inherit rocmPackages;
acceleration = "rocm";
};
rocmPackagesDerivations = linkFarm "rocmPackagesDerivations" (
map (x: {
name = x.name;
path = x.value;
}) availableRocmDrvs
);
torch = python3Packages.torch.override {
inherit rocmPackages;
rocmSupport = true;
cudaSupport = false;
magma-hip = magma-hip.override {
inherit rocmPackages;
};
};
};
}