Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, aiohttp
3, buildPythonPackage
4, fetchFromGitHub
5, orjson
6, pydevccu
7, pytest-aiohttp
8, pytestCheckHook
9, python-slugify
10, pythonOlder
11, setuptools
12, voluptuous
13, websocket-client
14, xmltodict
15, wheel
16}:
17
18buildPythonPackage rec {
19 pname = "hahomematic";
20 version = "2023.9.3";
21 format = "pyproject";
22
23 disabled = pythonOlder "3.11";
24
25 src = fetchFromGitHub {
26 owner = "danielperna84";
27 repo = pname;
28 rev = "refs/tags/${version}";
29 hash = "sha256-j8uM/vEfZO1C4jsYU68nTt/cmhRKsW2MTFG84g53vE4=";
30 };
31
32 nativeBuildInputs = [
33 setuptools
34 wheel
35 ];
36
37 propagatedBuildInputs = [
38 aiohttp
39 orjson
40 python-slugify
41 voluptuous
42 ];
43
44 nativeCheckInputs = [
45 pydevccu
46 pytest-aiohttp
47 pytestCheckHook
48 ];
49
50 pythonImportsCheck = [
51 "hahomematic"
52 ];
53
54 meta = with lib; {
55 description = "Python module to interact with HomeMatic devices";
56 homepage = "https://github.com/danielperna84/hahomematic";
57 changelog = "https://github.com/danielperna84/hahomematic/releases/tag/${version}";
58 license = with licenses; [ mit ];
59 maintainers = with maintainers; [ fab ];
60 };
61}