1{
2 lib,
3 stdenv,
4 bidict,
5 buildPythonPackage,
6 fetchFromGitHub,
7 h5py,
8 joblib,
9 matplotlib,
10 mock,
11 numpy,
12 opencv-python,
13 peakutils,
14 pywavelets,
15 scikit-learn,
16 scipy,
17 setuptools,
18 shortuuid,
19 six,
20 tkinter,
21}:
22
23buildPythonPackage rec {
24 pname = "biosppy";
25 version = "2.2.3";
26 pyproject = true;
27
28 src = fetchFromGitHub {
29 owner = "scientisst";
30 repo = "BioSPPy";
31 tag = "v${version}";
32 hash = "sha256-R+3K8r+nzrCiZegxur/rf3/gDGhN9bVNMhlK94SHer0=";
33 };
34
35 build-system = [ setuptools ];
36
37 dependencies = [
38 bidict
39 h5py
40 joblib
41 matplotlib
42 mock
43 numpy
44 opencv-python
45 peakutils
46 pywavelets
47 scikit-learn
48 scipy
49 shortuuid
50 six
51 ]
52 ++ lib.optionals stdenv.hostPlatform.isDarwin [ tkinter ];
53
54 doCheck = false; # no tests
55
56 pythonImportsCheck = [
57 "biosppy"
58 "biosppy.signals"
59 "biosppy.synthesizers"
60 "biosppy.inter_plotting"
61 "biosppy.features"
62 ];
63
64 meta = {
65 description = "Biosignal Processing in Python";
66 homepage = "https://biosppy.readthedocs.io/";
67 changelog = "https://github.com/scientisst/BioSPPy/releases/tag/${src.tag}";
68 license = lib.licenses.bsd3;
69 maintainers = with lib.maintainers; [ genga898 ];
70 };
71}