diff --git a/pkgs/development/python-modules/py-melissa-climate/default.nix b/pkgs/development/python-modules/py-melissa-climate/default.nix new file mode 100644 index 000000000000..019b84bbf9fc --- /dev/null +++ b/pkgs/development/python-modules/py-melissa-climate/default.nix @@ -0,0 +1,58 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + aiohttp, + requests, + requests-futures, + pytestCheckHook, + mock, +}: + +buildPythonPackage rec { + pname = "py-melissa-climate"; + version = "2.1.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "kennedyshead"; + repo = "py-melissa-climate"; + tag = "V${version}"; + hash = "sha256-Z1A0G3g8dyoG+zUxUTqI/OxczvUVy2kSI04YP0WeXso="; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "setup_requires=['setuptools-markdown']," "" + ''; + + build-system = [ setuptools ]; + + dependencies = [ + aiohttp + requests + requests-futures + ]; + + nativeCheckInputs = [ + mock + pytestCheckHook + ]; + + disabledTests = [ + # Disable failing tests due to upstream bugs + "test_have_connection" + "test_send" + "test_send_ok" + ]; + + pythonImportsCheck = [ "melissa" ]; + + meta = { + description = "API wrapper for Melissa Climate"; + homepage = "https://github.com/kennedyshead/py-melissa-climate"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index c0f9a32e1faf..b1597807ce94 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -3514,7 +3514,8 @@ ]; "melissa" = ps: with ps; [ - ]; # missing inputs: py-melissa-climate + py-melissa-climate + ]; "melnor" = ps: with ps; [ aioesphomeapi @@ -7358,6 +7359,7 @@ "media_player" "media_source" "melcloud" + "melissa" "melnor" "meraki" "met" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 81cfb9c50d2b..037b08734c75 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12262,6 +12262,8 @@ self: super: with self; { py-madvr2 = callPackage ../development/python-modules/py-madvr2 { }; + py-melissa-climate = callPackage ../development/python-modules/py-melissa-climate { }; + py-multiaddr = callPackage ../development/python-modules/py-multiaddr { }; py-multibase = callPackage ../development/python-modules/py-multibase { };