1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, mock
5, noiseprotocol
6, protobuf
7, pytest-asyncio
8, pytestCheckHook
9, pythonOlder
10, zeroconf
11}:
12
13buildPythonPackage rec {
14 pname = "aioesphomeapi";
15 version = "10.2.0";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "esphome";
22 repo = pname;
23 rev = "v${version}";
24 sha256 = "sha256-SUM9P7qmP3LWANw8LiwMsT5sN1kZJvqeaBT/ZDmTtwE=";
25 };
26
27 propagatedBuildInputs = [
28 noiseprotocol
29 protobuf
30 zeroconf
31 ];
32
33 checkInputs = [
34 mock
35 pytest-asyncio
36 pytestCheckHook
37 ];
38
39 pythonImportsCheck = [
40 "aioesphomeapi"
41 ];
42
43 meta = with lib; {
44 description = "Python Client for ESPHome native API";
45 homepage = "https://github.com/esphome/aioesphomeapi";
46 license = licenses.mit;
47 maintainers = with maintainers; [ fab hexa ];
48 };
49}