diff --git a/pkgs/development/python-modules/oemthermostat/default.nix b/pkgs/development/python-modules/oemthermostat/default.nix new file mode 100644 index 000000000000..7a2ecfc26c03 --- /dev/null +++ b/pkgs/development/python-modules/oemthermostat/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, pythonOlder +, requests +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "oemthermostat"; + version = "1.1.1"; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "Cadair"; + repo = "openenergymonitor_thermostat"; + rev = "v${version}"; + sha256 = "vrMw3/X8MtejO1WyUA1DOlfVCPTCPgcK5p3+OlTWcM4="; + }; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + requests + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "oemthermostat" + ]; + + meta = with lib; { + description = "Python module to interact with OpenEnergyMonitor thermostats"; + homepage = "https://github.com/Cadair/openenergymonitor_thermostat"; + license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index c0dad534f495..acc3a6f35cf5 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -597,7 +597,7 @@ "oasa_telematics" = ps: with ps; [ ]; # missing inputs: oasatelematics "obihai" = ps: with ps; [ pyobihai ]; "octoprint" = ps: with ps; [ ]; # missing inputs: pyoctoprintapi - "oem" = ps: with ps; [ ]; # missing inputs: oemthermostat + "oem" = ps: with ps; [ oemthermostat ]; "ohmconnect" = ps: with ps; [ defusedxml ]; "ombi" = ps: with ps; [ pyombi ]; "omnilogic" = ps: with ps; [ omnilogic ]; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8fea930437ba..946e6cae428e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5309,6 +5309,8 @@ in { ofxtools = callPackage ../development/python-modules/ofxtools { }; + oemthermostat = callPackage ../development/python-modules/oemthermostat { }; + olefile = callPackage ../development/python-modules/olefile { }; omegaconf = callPackage ../development/python-modules/omegaconf { };