1{
2 lib,
3 aiohttp,
4 buildPythonPackage,
5 fetchFromGitHub,
6 setuptools,
7 construct,
8 websockets,
9 pytest-asyncio,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "vallox-websocket-api";
15 version = "5.4.0";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "yozik04";
20 repo = "vallox_websocket_api";
21 tag = version;
22 hash = "sha256-L9duL8XfDUxHgJxVbG7PPPRJRzVEckxqbB+1vX0GalU=";
23 };
24
25 build-system = [
26 setuptools
27 ];
28
29 dependencies = [
30 aiohttp
31 construct
32 websockets
33 ];
34
35 nativeCheckInputs = [
36 pytest-asyncio
37 pytestCheckHook
38 ];
39
40 pythonImportsCheck = [ "vallox_websocket_api" ];
41
42 meta = {
43 changelog = "https://github.com/yozik04/vallox_websocket_api/releases/tag/${src.tag}";
44 description = "Async API for Vallox ventilation units";
45 homepage = "https://github.com/yozik04/vallox_websocket_api";
46 license = lib.licenses.lgpl3Only;
47 maintainers = with lib.maintainers; [ dotlambda ];
48 };
49}