1{ lib
2, anytree
3, arrayqueues
4, av
5, buildPythonPackage
6, colorspacious
7, fetchPypi
8, flammkuchen
9, git
10, gitpython
11, imageio
12, imageio-ffmpeg
13, lightparam
14, matplotlib
15, nose
16, numba
17, numpy
18, opencv4
19, pandas
20, pims
21, pyqt5
22, pyqtgraph
23, pyserial
24, pytestCheckHook
25, pythonOlder
26, qdarkstyle
27, qimage2ndarray
28, scikit-image
29, scipy
30, tables
31}:
32
33buildPythonPackage rec {
34 pname = "stytra";
35 version = "0.8.34";
36 pyproject = true;
37 disabled = pythonOlder "3.7";
38
39 src = fetchPypi {
40 inherit pname version;
41 sha256 = "aab9d07575ef599a9c0ae505656e3c03ec753462df3c15742f1f768f2b578f0a";
42 };
43
44 patches = [
45 # https://github.com/portugueslab/stytra/issues/87
46 ./0000-workaround-pyqtgraph.patch
47 ];
48
49 propagatedBuildInputs = [
50 opencv4
51 pyqt5
52 pyqtgraph
53 numpy
54 scipy
55 numba
56 pandas
57 tables
58 git
59 scikit-image
60 matplotlib
61 qdarkstyle
62 gitpython
63 anytree
64 qimage2ndarray
65 flammkuchen
66 pims
67 colorspacious
68 lightparam
69 imageio
70 imageio-ffmpeg
71 arrayqueues
72 av
73 ];
74
75 nativeCheckInputs = [
76 nose
77 pytestCheckHook
78 pyserial
79 ];
80
81 disabledTestPaths = [
82 # Crashes python
83 "stytra/tests/test_z_experiments.py"
84 ];
85
86 meta = with lib; {
87 description = "A modular package to control stimulation and track behaviour";
88 homepage = "https://github.com/portugueslab/stytra";
89 license = licenses.gpl3Plus;
90 maintainers = with maintainers; [ tbenst ];
91 broken = true; # incompatible with pyqtgraph>0.13.0: https://github.com/portugueslab/stytra/issues/87
92 };
93}