1{
2 lib,
3 acme,
4 aiohttp,
5 atomicwrites-homeassistant,
6 attrs,
7 buildPythonPackage,
8 ciso8601,
9 cryptography,
10 fetchFromGitHub,
11 pycognito,
12 pyjwt,
13 pytest-aiohttp,
14 pytest-timeout,
15 pytestCheckHook,
16 pythonOlder,
17 setuptools,
18 snitun,
19 syrupy,
20 xmltodict,
21}:
22
23buildPythonPackage rec {
24 pname = "hass-nabucasa";
25 version = "0.81.1";
26 pyproject = true;
27
28 disabled = pythonOlder "3.11";
29
30 src = fetchFromGitHub {
31 owner = "nabucasa";
32 repo = "hass-nabucasa";
33 rev = "refs/tags/${version}";
34 hash = "sha256-/sY/JijBCcGcbMjoX0yuhFIWvU+TFVN8sRxBx+CDVVs=";
35 };
36
37 pythonRelaxDeps = [ "acme" ];
38
39
40 build-system = [ setuptools ];
41
42 dependencies = [
43 acme
44 aiohttp
45 atomicwrites-homeassistant
46 attrs
47 ciso8601
48 cryptography
49 pycognito
50 pyjwt
51 snitun
52 ];
53
54 nativeCheckInputs = [
55 pytest-aiohttp
56 pytest-timeout
57 pytestCheckHook
58 syrupy
59 xmltodict
60 ];
61
62 pythonImportsCheck = [ "hass_nabucasa" ];
63
64 meta = with lib; {
65 description = "Python module for the Home Assistant cloud integration";
66 homepage = "https://github.com/NabuCasa/hass-nabucasa";
67 changelog = "https://github.com/NabuCasa/hass-nabucasa/releases/tag/${version}";
68 license = licenses.gpl3Only;
69 maintainers = with maintainers; [ Scriptkiddi ];
70 };
71}