diff --git a/pkgs/development/python-modules/qnapstats/default.nix b/pkgs/development/python-modules/qnapstats/default.nix new file mode 100644 index 00000000000..2eeb4e81d28 --- /dev/null +++ b/pkgs/development/python-modules/qnapstats/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, requests +, xmltodict +, responses +, python +}: + +buildPythonPackage rec { + pname = "qnapstats"; + version = "0.4.0"; + + format = "setuptools"; + + src = fetchFromGitHub { + owner = "colinodell"; + repo = "python-qnapstats"; + rev = version; + hash = "sha256-Tzi2QG1Xw12fLVfV49SPJKdz5VdJ4hQMuCHH8gxcOBE="; + }; + + propagatedBuildInputs = [ + requests + xmltodict + ]; + + checkInputs = [ + responses + ]; + + checkPhase = '' + runHook preCheck + + ${python.interpreter} tests/test-models.py + + runHook postCheck + ''; + + pythonImportsCheck = [ "qnapstats" ]; + + meta = { + description = "Python API for obtaining QNAP NAS system stats"; + homepage = "https://github.com/colinodell/python-qnapstats"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 3ffb7594cd0..9391d38d7fc 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2091,7 +2091,8 @@ georss-qld-bushfire-alert-client ]; "qnap" = ps: with ps; [ - ]; # missing inputs: qnapstats + qnapstats + ]; "qnap_qsw" = ps: with ps; [ aioqsw ]; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2f2afd4d4bb..f75bd9cb452 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8762,6 +8762,8 @@ in { qnap-qsw = callPackage ../development/python-modules/qnap-qsw{ }; + qnapstats = callPackage ../development/python-modules/qnapstats { }; + qrcode = callPackage ../development/python-modules/qrcode { }; qreactor = callPackage ../development/python-modules/qreactor { };