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.22";
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 = "40dc96125daeb65856d643e12c3d6dfec756be0d";
50 hash = "sha256-OtxQPF29eqt8I1Q12ga8a1IjBVO+VBk6y0DQmRtCNoU=";
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}