diff --git a/pkgs/development/python-modules/lhpapi/default.nix b/pkgs/development/python-modules/lhpapi/default.nix new file mode 100644 index 000000000000..04cde62792f9 --- /dev/null +++ b/pkgs/development/python-modules/lhpapi/default.nix @@ -0,0 +1,41 @@ +{ + lib, + beautifulsoup4, + lxml, + hatchling, + requests, + tzdata, + buildPythonPackage, + fetchFromGitHub, +}: + +buildPythonPackage rec { + pname = "lhpapi"; + version = "1.0.10"; + pyproject = true; + + src = fetchFromGitHub { + owner = "stephan192"; + repo = "lhpapi"; + tag = "v${version}"; + hash = "sha256-Q9X1STaWWbWWy8wmCQ3Cx+z19+X3EcGl0u/Mmc49rAM="; + }; + + dependencies = [ + beautifulsoup4 + lxml + requests + tzdata + ]; + + build-system = [ hatchling ]; + + pythonImportsCheck = [ "lhpapi" ]; + + meta = { + description = "API to retrieve data from the Länderübergreifendes Hochwasser Portal (LHP)"; + homepage = "https://github.com/stephan192/lhpapi"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ _9R ]; + }; +} diff --git a/pkgs/servers/home-assistant/custom-components/hochwasserportal/package.nix b/pkgs/servers/home-assistant/custom-components/hochwasserportal/package.nix new file mode 100644 index 000000000000..f5a1dc628e23 --- /dev/null +++ b/pkgs/servers/home-assistant/custom-components/hochwasserportal/package.nix @@ -0,0 +1,38 @@ +{ + lib, + buildHomeAssistantComponent, + fetchFromGitHub, + pytest-homeassistant-custom-component, + + # dependency + lhpapi, +}: + +buildHomeAssistantComponent rec { + owner = "stephan192"; + domain = "hochwasserportal"; + version = "1.0.8"; + + src = fetchFromGitHub { + owner = "stephan192"; + repo = "hochwasserportal"; + tag = "v${version}"; + hash = "sha256-q2usHeWcx/1UrM7MQ156SFy8cFIiCcsmIr6721hzSLI="; + }; + + dependencies = [ + lhpapi + ]; + + nativeCheckInputs = [ + pytest-homeassistant-custom-component + ]; + + meta = { + changelog = "https://github.com/stephan192/hochwasserportal/releases/tag/${version}"; + description = "Home Assistant integration for Länderübergreifendes Hochwasser Portal"; + homepage = "https://github.com/stephan192/hochwasserportal"; + maintainers = with lib.maintainers; [ _9R ]; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 78a390a9fdd2..23b5e9321042 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9190,6 +9190,8 @@ self: super: with self; { lhapdf = toPythonModule (pkgs.lhapdf.override { python3 = python; }); + lhpapi = callPackage ../development/python-modules/lhpapi { }; + lib4package = callPackage ../development/python-modules/lib4package { }; lib4sbom = callPackage ../development/python-modules/lib4sbom { };