1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 certifi,
6 scapy,
7 urllib3,
8 semantic-version,
9 aiohttp,
10 jsons,
11 requests,
12 # Test inputs
13 pytestCheckHook,
14 pyyaml,
15 pytest-asyncio,
16 async-timeout,
17}:
18
19buildPythonPackage rec {
20 pname = "plugp100";
21 version = "5.1.5";
22 format = "setuptools";
23
24 src = fetchFromGitHub {
25 owner = "petretiandrea";
26 repo = "plugp100";
27 tag = version;
28 sha256 = "sha256-bPjgyScHxiUke/M5S6BOw7df7wbNuSy5ouVIK5guWxw=";
29 };
30
31 propagatedBuildInputs = [
32 certifi
33 jsons
34 requests
35 aiohttp
36 semantic-version
37 scapy
38 urllib3
39 pyyaml
40 ];
41
42 nativeCheckInputs = [
43 pytestCheckHook
44 pytest-asyncio
45 async-timeout
46 ];
47
48 disabledTestPaths = [
49 "tests/integration/"
50 "tests/unit/hub_child/"
51 "tests/unit/test_plug_strip.py"
52 "tests/unit/test_hub.py "
53 "tests/unit/test_klap_protocol.py"
54 ];
55
56 meta = with lib; {
57 description = "Python library to control Tapo Plug P100 devices";
58 homepage = "https://github.com/petretiandrea/plugp100";
59 license = licenses.gpl3;
60 maintainers = with maintainers; [ pyle ];
61 };
62}