1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 buildPythonPackage,
6 setuptools,
7 bidict,
8 h5py,
9 matplotlib,
10 numpy,
11 scikit-learn,
12 scipy,
13 shortuuid,
14 six,
15 joblib,
16 pywavelets,
17 mock,
18 tkinter,
19 opencv-python,
20}:
21
22buildPythonPackage rec {
23 pname = "biosppy";
24 version = "2.2.3";
25 pyproject = true;
26
27 src = fetchFromGitHub {
28 owner = "scientisst";
29 repo = "BioSPPy";
30 tag = "v${version}";
31 hash = "sha256-R+3K8r+nzrCiZegxur/rf3/gDGhN9bVNMhlK94SHer0=";
32 };
33
34 build-system = [
35 setuptools
36 ];
37
38 dependencies = [
39 opencv-python
40 bidict
41 h5py
42 matplotlib
43 numpy
44 scikit-learn
45 scipy
46 shortuuid
47 six
48 joblib
49 pywavelets
50 mock
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}