Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at gcc-offload 161 lines 3.0 kB view raw
1{ 2 lib, 3 appdirs, 4 buildPythonPackage, 5 colorama, 6 configobj, 7 distro, 8 dpath, 9 dvc-azure, 10 dvc-data, 11 dvc-gdrive, 12 dvc-gs, 13 dvc-hdfs, 14 dvc-http, 15 dvc-render, 16 dvc-s3, 17 dvc-ssh, 18 dvc-studio-client, 19 dvc-task, 20 fetchFromGitHub, 21 flatten-dict, 22 flufl-lock, 23 funcy, 24 grandalf, 25 gto, 26 hydra-core, 27 importlib-metadata, 28 importlib-resources, 29 iterative-telemetry, 30 networkx, 31 packaging, 32 pathspec, 33 platformdirs, 34 psutil, 35 pydot, 36 pygtrie, 37 pyparsing, 38 pythonOlder, 39 requests, 40 rich, 41 ruamel-yaml, 42 scmrepo, 43 setuptools-scm, 44 shortuuid, 45 shtab, 46 tabulate, 47 tomlkit, 48 tqdm, 49 typing-extensions, 50 voluptuous, 51 zc-lockfile, 52 enableGoogle ? false, 53 enableAWS ? false, 54 enableAzure ? false, 55 enableSSH ? false, 56}: 57 58buildPythonPackage rec { 59 pname = "dvc"; 60 version = "3.58.0"; 61 pyproject = true; 62 63 disabled = pythonOlder "3.8"; 64 65 src = fetchFromGitHub { 66 owner = "iterative"; 67 repo = "dvc"; 68 rev = "refs/tags/${version}"; 69 hash = "sha256-ljrQV+Ca0EooCdoEU1B2mnN62bpKV0ZGnX8W1yZWyjM="; 70 }; 71 72 pythonRelaxDeps = [ 73 "dvc-data" 74 "platformdirs" 75 ]; 76 77 postPatch = '' 78 substituteInPlace dvc/analytics.py \ 79 --replace-fail 'enabled = not os.getenv(DVC_NO_ANALYTICS)' 'enabled = False' 80 substituteInPlace dvc/daemon.py \ 81 --subst-var-by dvc "$out/bin/dcv" 82 ''; 83 84 build-system = [ setuptools-scm ]; 85 86 dependencies = 87 [ 88 appdirs 89 colorama 90 configobj 91 distro 92 dpath 93 dvc-data 94 dvc-http 95 dvc-render 96 dvc-studio-client 97 dvc-task 98 flatten-dict 99 flufl-lock 100 funcy 101 grandalf 102 gto 103 hydra-core 104 iterative-telemetry 105 networkx 106 packaging 107 pathspec 108 platformdirs 109 psutil 110 pydot 111 pygtrie 112 pyparsing 113 requests 114 rich 115 ruamel-yaml 116 scmrepo 117 shortuuid 118 shtab 119 tabulate 120 tomlkit 121 tqdm 122 typing-extensions 123 voluptuous 124 zc-lockfile 125 ] 126 ++ lib.optionals enableGoogle optional-dependencies.gs 127 ++ lib.optionals enableAWS optional-dependencies.s3 128 ++ lib.optionals enableAzure optional-dependencies.azure 129 ++ lib.optionals enableSSH optional-dependencies.ssh 130 ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ] 131 ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ]; 132 133 optional-dependencies = { 134 azure = [ dvc-azure ]; 135 gdrive = [ dvc-gdrive ]; 136 gs = [ dvc-gs ]; 137 hdfs = [ dvc-hdfs ]; 138 s3 = [ dvc-s3 ]; 139 ssh = [ dvc-ssh ]; 140 }; 141 142 # Tests require access to real cloud services 143 doCheck = false; 144 145 pythonImportsCheck = [ 146 "dvc" 147 "dvc.api" 148 ]; 149 150 meta = with lib; { 151 description = "Version Control System for Machine Learning Projects"; 152 homepage = "https://dvc.org"; 153 changelog = "https://github.com/iterative/dvc/releases/tag/${version}"; 154 license = licenses.asl20; 155 maintainers = with maintainers; [ 156 cmcdragonkai 157 fab 158 ]; 159 mainProgram = "dvc"; 160 }; 161}