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/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 58b814a21b59..7fad286901a1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2404,6 +2404,8 @@ in { 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 { };