diff --git a/pkgs/development/python-modules/solarman-opendata/default.nix b/pkgs/development/python-modules/solarman-opendata/default.nix new file mode 100644 index 000000000000..d96ea9e22b67 --- /dev/null +++ b/pkgs/development/python-modules/solarman-opendata/default.nix @@ -0,0 +1,50 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + wheel, + aiohttp, + pytest-asyncio, + pytest-cov-stub, + pytest-mock, + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "solarman-opendata"; + version = "0.0.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "solarmanpv"; + repo = "solarman-opendata"; + tag = "v${finalAttrs.version}"; + hash = "sha256-mLwvAs+RFaHXjOgMaIhKKTU4Dqzdu/pLtAwYc/B6oj4="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + aiohttp + ]; + + nativeCheckInputs = [ + pytest-asyncio + pytest-cov-stub + pytest-mock + pytestCheckHook + ]; + + pythonImportsCheck = [ "solarman_opendata" ]; + + meta = { + description = "Asynchronous Python API for Solarman devices"; + homepage = "https://github.com/solarmanpv/solarman-opendata"; + changelog = "https://github.com/solarmanpv/solarman-opendata/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +}) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 124db000ba47..38ce2a96e8ba 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -5930,7 +5930,8 @@ ]; "solarman" = ps: with ps; [ - ]; # missing inputs: solarman-opendata + solarman-opendata + ]; "solax" = ps: with ps; [ solax @@ -8227,6 +8228,7 @@ "snooz" "solaredge" "solarlog" + "solarman" "solax" "soma" "somfy_mylink" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d9ddbb57dadd..dc6568ece2b0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -18016,6 +18016,8 @@ self: super: with self; { solarlog-cli = callPackage ../development/python-modules/solarlog-cli { }; + solarman-opendata = callPackage ../development/python-modules/solarman-opendata { }; + solax = callPackage ../development/python-modules/solax { }; solc-select = callPackage ../development/python-modules/solc-select { };