diff --git a/pkgs/development/python-modules/pycontrol4/default.nix b/pkgs/development/python-modules/pycontrol4/default.nix new file mode 100644 index 000000000000..93f7dcdc0a23 --- /dev/null +++ b/pkgs/development/python-modules/pycontrol4/default.nix @@ -0,0 +1,43 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, aiohttp +, xmltodict +}: + +buildPythonPackage rec { + pname = "pycontrol4"; + version = "0.1.0"; + + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "lawtancool"; + repo = "pyControl4"; + rev = "v${version}"; + sha256 = "0idw9kv6yxrbp0r33vb1jlzgil20m2rjjfrxhcwxmbjjqv93zn6d"; + }; + + propagatedBuildInputs = [ + aiohttp + xmltodict + ]; + + # tests access network + doCheck = false; + + pythonImportsCheck = [ + "pyControl4.account" + "pyControl4.alarm" + "pyControl4.director" + "pyControl4.light" + ]; + + meta = with lib; { + description = "Python 3 asyncio package for interacting with Control4 systems"; + homepage = "https://github.com/lawtancool/pyControl4"; + license = licenses.asl20; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 528d5dffbf76..7e7103781a29 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5222,6 +5222,8 @@ in { pyatag = callPackage ../development/python-modules/pyatag { }; + pycontrol4 = callPackage ../development/python-modules/pycontrol4 { }; + pyfireservicerota = callPackage ../development/python-modules/pyfireservicerota { }; pyflick = callPackage ../development/python-modules/pyflick { };