diff --git a/pkgs/development/python-modules/deid/default.nix b/pkgs/development/python-modules/deid/default.nix new file mode 100644 index 000000000000..6c5146313881 --- /dev/null +++ b/pkgs/development/python-modules/deid/default.nix @@ -0,0 +1,74 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +, matplotlib +, pydicom +, python-dateutil +, setuptools +}: + +let + deid-data = buildPythonPackage rec { + pname = "deid-data"; + version = "unstable-2022-12-06"; + format = "pyproject"; + disabled = pythonOlder "3.7"; + + nativeBuildInputs = [ setuptools ]; + propagatedBuildInputs = [ pydicom ]; + + src = fetchFromGitHub { + owner = "pydicom"; + repo = "deid-data"; + rev = "5750d25a5048fba429b857c16bf48b0139759644"; + hash = "sha256-c8NBAN53NyF9dPB7txqYtM0ac0Y+Ch06fMA1LrIUkbc="; + }; + + meta = { + description = "Supplementary data for deid package"; + homepage = "https://github.com/pydicom/deid-data"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.bcdarwin ]; + }; + }; +in +buildPythonPackage rec { + pname = "deid"; + version = "0.3.21"; + + format = "pyproject"; + disabled = pythonOlder "3.7"; + + # Pypi version has no tests + src = fetchFromGitHub { + owner = "pydicom"; + repo = pname; + # the github repo does not contain Pypi version tags: + rev = "38717b8cbfd69566ba489dd0c9858bb93101e26d"; + hash = "sha256-QqofxNjshbNfu8vZ37rB6pxj5R8q0wlUhJRhrpkKySk="; + }; + + propagatedBuildInputs = [ + matplotlib + pydicom + python-dateutil + ]; + + nativeCheckInputs = [ + deid-data + pytestCheckHook + ]; + + pythonImportsCheck = [ + "deid" + ]; + + meta = with lib; { + description = "Best-effort anonymization for medical images"; + homepage = "https://pydicom.github.io/deid"; + license = licenses.mit; + maintainers = with maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5b33cc2f670f..7e63f3d96546 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2379,6 +2379,8 @@ self: super: with self; { defusedxml = callPackage ../development/python-modules/defusedxml { }; + deid = callPackage ../development/python-modules/deid { }; + delegator-py = callPackage ../development/python-modules/delegator-py { }; delorean = callPackage ../development/python-modules/delorean { };