59 buildPythonPackage rec {
64 disabled = pythonOlder "3.8";
66 src = fetchFromGitHub {
69 rev = "refs/tags/${version}";
70 hash = "sha256-/MvKWpJzKWLj1+y8nPMQiAwdktmQyJNM+s6ctYNk9u0=";
79 substituteInPlace dvc/analytics.py \
80 --replace-fail 'enabled = not os.getenv(DVC_NO_ANALYTICS)' 'enabled = False'
81 substituteInPlace dvc/daemon.py \
82 --subst-var-by dvc "$out/bin/dcv"
85 build-system = [ setuptools-scm ];
87 nativeBuildInputs = [ pythonRelaxDepsHook ];
129 ++ lib.optionals enableGoogle passthru.optional-dependencies.gs
130 ++ lib.optionals enableAWS passthru.optional-dependencies.s3
131 ++ lib.optionals enableAzure passthru.optional-dependencies.azure
132 ++ lib.optionals enableSSH passthru.optional-dependencies.ssh
133 ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ]
134 ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ];
136 passthru.optional-dependencies = {
137 azure = [ dvc-azure ];
138 gdrive = [ dvc-gdrive ];
145 # Tests require access to real cloud services
148 pythonImportsCheck = [
154 description = "Version Control System for Machine Learning Projects";
155 homepage = "https://dvc.org";
156 changelog = "https://github.com/iterative/dvc/releases/tag/${version}";
157 license = licenses.asl20;
158 maintainers = with maintainers; [