1{ lib
2, aiohttp
3, async-timeout
4, buildPythonPackage
5, crcmod
6, defusedxml
7, fetchFromGitHub
8, jsonpickle
9, munch
10, mypy
11, pyserial
12, pytest-aiohttp
13, pytest-asyncio
14, pytestCheckHook
15, python-dateutil
16, pytz
17, semver
18}:
19
20buildPythonPackage rec {
21 pname = "plugwise";
22 version = "0.14.5";
23
24 src = fetchFromGitHub {
25 owner = pname;
26 repo = "python-plugwise";
27 rev = "v${version}";
28 sha256 = "1kwks87raxs04dvnpmpn8l1cbzg5yb5nyinaqzxdsc6al83isbik";
29 };
30
31 propagatedBuildInputs = [
32 aiohttp
33 async-timeout
34 crcmod
35 defusedxml
36 munch
37 pyserial
38 python-dateutil
39 pytz
40 semver
41 ];
42
43 checkInputs = [
44 jsonpickle
45 mypy
46 pytest-aiohttp
47 pytest-asyncio
48 pytestCheckHook
49 ];
50
51 pythonImportsCheck = [ "plugwise" ];
52
53 __darwinAllowLocalNetworking = true;
54
55 meta = with lib; {
56 description = "Python module for Plugwise Smiles, Stretch and USB stick";
57 longDescription = ''
58 XKNX is an asynchronous Python library for reading and writing KNX/IP
59 packets. It provides support for KNX/IP routing and tunneling devices.
60 '';
61 homepage = "https://github.com/plugwise/python-plugwise";
62 license = with licenses; [ mit ];
63 maintainers = with maintainers; [ fab ];
64 };
65}