1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, click
5, click-log
6, dataclasses
7, pure-pcapy3
8, pyserial-asyncio
9, voluptuous
10, zigpy
11, asynctest
12, pythonOlder
13, pytestCheckHook
14, pytest-asyncio
15, pytest-timeout
16}:
17
18buildPythonPackage rec {
19 pname = "bellows";
20 version = "0.28.0";
21
22 src = fetchFromGitHub {
23 owner = "zigpy";
24 repo = "bellows";
25 rev = version;
26 sha256 = "sha256-j1vS6PDvvuJapECn0lKGuBkYwWsyzJaTZDRQPjMsuLk=";
27 };
28
29 propagatedBuildInputs = [
30 click
31 click-log
32 pure-pcapy3
33 pyserial-asyncio
34 voluptuous
35 zigpy
36 ] ++ lib.optionals (pythonOlder "3.7") [
37 dataclasses
38 ];
39
40 checkInputs = [
41 pytestCheckHook
42 pytest-asyncio
43 pytest-timeout
44 ] ++ lib.optionals (pythonOlder "3.8") [
45 asynctest
46 ];
47
48 disabledTests = [
49 # AssertionError: assert 65534 is None
50 # https://github.com/zigpy/bellows/issues/436
51 "test_startup_nwk_params"
52 ];
53
54 pythonImportsCheck = [
55 "bellows"
56 ];
57
58 meta = with lib; {
59 description = "Python module to implement EZSP for EmberZNet devices";
60 homepage = "https://github.com/zigpy/bellows";
61 license = licenses.gpl3Plus;
62 maintainers = with maintainers; [ etu mvnetbiz ];
63 };
64}