nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 74 lines 1.5 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pythonOlder, 6 ninja, 7 numpy, 8 packaging, 9 pybind11, 10 torch, 11 which, 12}: 13 14buildPythonPackage rec { 15 pname = "monai"; 16 version = "1.5.1"; 17 pyproject = true; 18 19 src = fetchFromGitHub { 20 owner = "Project-MONAI"; 21 repo = "MONAI"; 22 tag = version; 23 hash = "sha256-GhyUOp/iLpuKKQAwQsA6D7IiW8ym8QTC4OmRxEKydVA="; 24 # fix source non-reproducibility due to versioneer + git-archive, as with Numba, Pytensor etc. derivations: 25 postFetch = '' 26 sed -i 's/git_refnames = "[^"]*"/git_refnames = " (tag: ${src.tag})"/' $out/monai/_version.py 27 ''; 28 }; 29 30 preBuild = '' 31 export MAX_JOBS=$NIX_BUILD_CORES; 32 ''; 33 34 build-system = [ 35 ninja 36 which 37 ]; 38 39 buildInputs = [ pybind11 ]; 40 41 dependencies = [ 42 numpy 43 packaging 44 torch 45 ]; 46 47 env.BUILD_MONAI = 1; 48 49 doCheck = false; # takes too long; tries to download data 50 51 pythonImportsCheck = [ 52 "monai" 53 "monai.apps" 54 "monai.data" 55 "monai.engines" 56 "monai.handlers" 57 "monai.inferers" 58 "monai.losses" 59 "monai.metrics" 60 "monai.optimizers" 61 "monai.networks" 62 "monai.transforms" 63 "monai.utils" 64 "monai.visualize" 65 ]; 66 67 meta = { 68 description = "Pytorch framework (based on Ignite) for deep learning in medical imaging"; 69 homepage = "https://github.com/Project-MONAI/MONAI"; 70 changelog = "https://github.com/Project-MONAI/MONAI/releases/tag/${version}"; 71 license = lib.licenses.asl20; 72 maintainers = [ lib.maintainers.bcdarwin ]; 73 }; 74}