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