1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, pytestCheckHook
6, matplotlib
7, pydicom
8, python-dateutil
9, setuptools
10}:
11
12let
13 deid-data = buildPythonPackage rec {
14 pname = "deid-data";
15 version = "unstable-2022-12-06";
16 format = "pyproject";
17 disabled = pythonOlder "3.7";
18
19 nativeBuildInputs = [ setuptools ];
20 propagatedBuildInputs = [ pydicom ];
21
22 src = fetchFromGitHub {
23 owner = "pydicom";
24 repo = "deid-data";
25 rev = "5750d25a5048fba429b857c16bf48b0139759644";
26 hash = "sha256-c8NBAN53NyF9dPB7txqYtM0ac0Y+Ch06fMA1LrIUkbc=";
27 };
28
29 meta = {
30 description = "Supplementary data for deid package";
31 homepage = "https://github.com/pydicom/deid-data";
32 license = lib.licenses.mit;
33 maintainers = [ lib.maintainers.bcdarwin ];
34 };
35 };
36in
37buildPythonPackage rec {
38 pname = "deid";
39 version = "0.3.21";
40
41 format = "pyproject";
42 disabled = pythonOlder "3.7";
43
44 # Pypi version has no tests
45 src = fetchFromGitHub {
46 owner = "pydicom";
47 repo = pname;
48 # the github repo does not contain Pypi version tags:
49 rev = "38717b8cbfd69566ba489dd0c9858bb93101e26d";
50 hash = "sha256-QqofxNjshbNfu8vZ37rB6pxj5R8q0wlUhJRhrpkKySk=";
51 };
52
53 propagatedBuildInputs = [
54 matplotlib
55 pydicom
56 python-dateutil
57 ];
58
59 nativeCheckInputs = [
60 deid-data
61 pytestCheckHook
62 ];
63
64 pythonImportsCheck = [
65 "deid"
66 ];
67
68 meta = with lib; {
69 description = "Best-effort anonymization for medical images";
70 homepage = "https://pydicom.github.io/deid";
71 license = licenses.mit;
72 maintainers = with maintainers; [ bcdarwin ];
73 };
74}