1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 aiohttp,
6 click,
7 requests,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "python-mystrom";
13 version = "2.2.0";
14 format = "setuptools";
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-VFsTA/isBw0H7qXQhOX6K2p1QcVxO7q5TIzf8YivVgc=";
19 };
20
21 propagatedBuildInputs = [
22 aiohttp
23 click
24 requests
25 setuptools
26 ];
27
28 # no tests are present
29 doCheck = false;
30
31 pythonImportsCheck = [
32 "pymystrom.bulb"
33 "pymystrom.pir"
34 "pymystrom.switch"
35 ];
36
37 meta = with lib; {
38 description = "Python API client for interacting with myStrom devices";
39 mainProgram = "mystrom";
40 longDescription = ''
41 Asynchronous Python API client for interacting with myStrom devices.
42 There is support for bulbs, motion sensors, plugs and buttons.
43 '';
44 homepage = "https://github.com/home-assistant-ecosystem/python-mystrom";
45 changelog = "https://github.com/home-assistant-ecosystem/python-mystrom/releases/tag/${version}";
46 license = with licenses; [ mit ];
47 maintainers = with maintainers; [ fab ];
48 };
49}