1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytest-mock,
6 pytestCheckHook,
7 pythonOlder,
8 requests,
9 setuptools-scm,
10 websocket-client,
11 zeroconf,
12}:
13
14buildPythonPackage rec {
15 pname = "devolo-home-control-api";
16 version = "0.18.3";
17 format = "setuptools";
18 disabled = pythonOlder "3.6";
19
20 src = fetchFromGitHub {
21 owner = "2Fake";
22 repo = "devolo_home_control_api";
23 rev = "v${version}";
24 hash = "sha256-4AyC1DDYtKl8SwJf75BbzoOAhbZXmBZ05ma9YmLzksM=";
25 };
26
27 nativeBuildInputs = [ setuptools-scm ];
28
29 propagatedBuildInputs = [
30 requests
31 zeroconf
32 websocket-client
33 ];
34
35 nativeCheckInputs = [
36 pytestCheckHook
37 pytest-mock
38 ];
39
40 # Disable test that requires network access
41 disabledTests = [
42 "test__on_pong"
43 "TestMprm"
44 ];
45
46 pythonImportsCheck = [ "devolo_home_control_api" ];
47
48 meta = with lib; {
49 description = "Python library to work with devolo Home Control";
50 homepage = "https://github.com/2Fake/devolo_home_control_api";
51 license = with licenses; [ gpl3Only ];
52 maintainers = with maintainers; [ fab ];
53 };
54}