diff --git a/pkgs/development/python-modules/demetriek/default.nix b/pkgs/development/python-modules/demetriek/default.nix new file mode 100644 index 000000000000..99b889eae274 --- /dev/null +++ b/pkgs/development/python-modules/demetriek/default.nix @@ -0,0 +1,65 @@ +{ lib +, aiohttp +, awesomeversion +, backoff +, buildPythonPackage +, pydantic +, fetchFromGitHub +, poetry-core +, yarl +, aresponses +, pytest-asyncio +, pytestCheckHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "demetriek"; + version = "0.4.0"; + format = "pyproject"; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "frenck"; + repo = "python-demetriek"; + rev = "refs/tags/v${version}"; + sha256 = "sha256-LCHHBcZgO9gw5jyaJiiS4lKyb0ut+PJvKTylIvIKHhc="; + }; + + postPatch = '' + # Upstream doesn't set a version for the pyproject.toml + substituteInPlace pyproject.toml \ + --replace "0.0.0" "${version}" \ + --replace "--cov" "" + ''; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + aiohttp + awesomeversion + backoff + pydantic + yarl + ]; + + checkInputs = [ + aresponses + pytest-asyncio + pytestCheckHook + ]; + + pythonImportsCheck = [ + "demetriek" + ]; + + meta = with lib; { + description = "Python client for LaMetric TIME devices"; + homepage = "https://github.com/frenck/python-demetriek"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 19d9c09d7936..f2f472276c87 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -1606,7 +1606,8 @@ ]; # missing inputs: lacrosse-view "lametric" = ps: with ps; [ aiohttp-cors - ]; # missing inputs: demetriek + demetriek + ]; "landisgyr_heat_meter" = ps: with ps; [ ultraheat-api ]; @@ -3918,6 +3919,7 @@ "konnected" "kraken" "kulersky" + "lametric" "landisgyr_heat_meter" "lastfm" "launch_library" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 112bd45d1b6d..330aede22384 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2277,6 +2277,8 @@ self: super: with self; { deluge-client = callPackage ../development/python-modules/deluge-client { }; + demetriek = callPackage ../development/python-modules/demetriek { }; + demjson3 = callPackage ../development/python-modules/demjson3 { }; dendropy = callPackage ../development/python-modules/dendropy { };