1{ ansicolors
2, attrs
3, autobahn
4, buildPythonPackage
5, fetchFromGitHub
6, jinja2
7, lib
8, mock
9, packaging
10, pexpect
11, psutil
12, pyserial
13, pytestCheckHook
14, pytest-dependency
15, pytest-mock
16, pyudev
17, pyusb
18, pyyaml
19, requests
20, setuptools
21, setuptools-scm
22, wheel
23, xmodem
24}:
25
26buildPythonPackage rec {
27 pname = "labgrid";
28 version = "23.0.3";
29
30 src = fetchFromGitHub {
31 owner = "labgrid-project";
32 repo = "labgrid";
33 rev = "refs/tags/v${version}";
34 sha256 = "sha256-yhlBqqCLOt6liw4iv8itG6E4QfIa7cW76QJqefUM5dw=";
35 };
36
37 nativeBuildInputs = [
38 setuptools
39 setuptools-scm
40 wheel
41 ];
42
43 pyproject = true;
44
45 propagatedBuildInputs = [
46 ansicolors
47 attrs
48 autobahn
49 jinja2
50 packaging
51 pexpect
52 pyserial
53 pyudev
54 pyusb
55 pyyaml
56 requests
57 xmodem
58 ];
59
60 preBuild = ''
61 export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
62 '';
63
64 nativeCheckInputs = [
65 mock
66 psutil
67 pytestCheckHook
68 pytest-mock
69 pytest-dependency
70 ];
71
72 meta = with lib; {
73 description = "Embedded control & testing library";
74 homepage = "https://labgrid.org";
75 license = licenses.lgpl21Plus;
76 maintainers = with maintainers; [ emantor ];
77 platforms = with platforms; linux;
78 };
79}