diff --git a/pkgs/development/python-modules/python-bsblan/default.nix b/pkgs/development/python-modules/python-bsblan/default.nix new file mode 100644 index 000000000000..73f41f63b121 --- /dev/null +++ b/pkgs/development/python-modules/python-bsblan/default.nix @@ -0,0 +1,64 @@ +{ lib +, aiohttp +, aresponses +, buildPythonPackage +, fetchFromGitHub +, packaging +, poetry-core +, pydantic +, pytest-asyncio +, pytest-mock +, pytestCheckHook +, pythonOlder +, yarl +}: + +buildPythonPackage rec { + pname = "python-bsblan"; + version = "0.5.6"; + format = "pyproject"; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "liudger"; + repo = pname; + rev = "v${version}"; + hash = "sha256-eTKexiuomlTryy2bD2w9Pzhb4R9C3OIbLNX+7h/5l+c="; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + aiohttp + packaging + pydantic + yarl + ]; + + checkInputs = [ + aresponses + pytest-asyncio + pytest-mock + pytestCheckHook + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'version = "0.0.0"' 'version = "${version}"' \ + --replace "--cov" "" + ''; + + pythonImportsCheck = [ + "bsblan" + ]; + + meta = with lib; { + description = "Module to control and monitor an BSBLan device programmatically"; + homepage = "https://github.com/liudger/python-bsblan"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e293253b127b..c68af36f28b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9014,6 +9014,8 @@ in { python-box = callPackage ../development/python-modules/python-box { }; + python-bsblan = callPackage ../development/python-modules/python-bsblan { }; + python-cinderclient = callPackage ../development/python-modules/python-cinderclient { }; python-constraint = callPackage ../development/python-modules/python-constraint { };