1{
2 lib,
3 aiohttp,
4 aioresponses,
5 bluetooth-data-tools,
6 buildPythonPackage,
7 fetchFromGitHub,
8 habluetooth,
9 orjson,
10 pytest-asyncio,
11 pytestCheckHook,
12 pythonOlder,
13 setuptools,
14 yarl,
15}:
16
17buildPythonPackage rec {
18 pname = "aioshelly";
19 version = "13.10.0";
20 pyproject = true;
21
22 disabled = pythonOlder "3.11";
23
24 src = fetchFromGitHub {
25 owner = "home-assistant-libs";
26 repo = "aioshelly";
27 tag = version;
28 hash = "sha256-sN8Qr+ZgKBaZbTgQSGujdZmA3N0fBMFEPnUIWiBkPhg=";
29 };
30
31 build-system = [ setuptools ];
32
33 dependencies = [
34 aiohttp
35 bluetooth-data-tools
36 habluetooth
37 orjson
38 yarl
39 ];
40
41 nativeCheckInputs = [
42 aioresponses
43 pytest-asyncio
44 pytestCheckHook
45 ];
46
47 pythonImportsCheck = [ "aioshelly" ];
48
49 meta = with lib; {
50 description = "Python library to control Shelly";
51 homepage = "https://github.com/home-assistant-libs/aioshelly";
52 changelog = "https://github.com/home-assistant-libs/aioshelly/releases/tag/${src.tag}";
53 license = licenses.asl20;
54 maintainers = with maintainers; [ fab ];
55 };
56}