1{ lib
2, mkDerivationWith
3, appdirs
4, buildPythonPackage
5, cachey
6, dask
7, docstring-parser
8, fetchFromGitHub
9, imageio
10, jsonschema
11, magicgui
12, napari-console
13, napari-npe2
14, napari-svg
15, numpydoc
16, pint
17, psutil
18, pydantic
19, pyopengl
20, pillow
21, pythonOlder
22, pyyaml
23, scikitimage
24, scipy
25, setuptools-scm
26, superqt
27, tifffile
28, toolz
29, tqdm
30, typing-extensions
31, vispy
32, wrapQtAppsHook
33, wrapt
34}:
35
36mkDerivationWith buildPythonPackage rec {
37 pname = "napari";
38 version = "0.4.16";
39 format = "pyproject";
40
41 disabled = pythonOlder "3.8";
42
43 src = fetchFromGitHub {
44 owner = "napari";
45 repo = pname;
46 rev = "refs/tags/v${version}";
47 hash = "sha256-Fx3DoTIb2ev5wMP/gmprPIoxeF2f+Cbac6pnWB/zTTw=";
48 };
49
50 SETUPTOOLS_SCM_PRETEND_VERSION = version;
51
52 nativeBuildInputs = [
53 setuptools-scm
54 wrapQtAppsHook
55 ];
56
57 propagatedBuildInputs = [
58 appdirs
59 cachey
60 dask.optional-dependencies.array
61 docstring-parser
62 imageio
63 jsonschema
64 magicgui
65 napari-console
66 napari-npe2
67 napari-svg
68 numpydoc
69 pint
70 pillow
71 psutil
72 pydantic
73 pyopengl
74 pyyaml
75 scikitimage
76 scipy
77 superqt
78 tifffile
79 toolz
80 tqdm
81 typing-extensions
82 vispy
83 wrapt
84 ];
85
86 postPatch = ''
87 substituteInPlace setup.cfg \
88 --replace "scikit-image>=0.19.1" "scikit-image" \
89 --replace "vispy>=0.10.0,<0.11" "vispy"
90 '';
91
92 dontUseSetuptoolsCheck = true;
93
94 postFixup = ''
95 wrapQtApp $out/bin/napari
96 '';
97
98 meta = with lib; {
99 description = "A fast, interactive, multi-dimensional image viewer";
100 homepage = "https://github.com/napari/napari";
101 license = licenses.bsd3;
102 maintainers = with maintainers; [ SomeoneSerge ];
103 };
104}