{ lib, aiohttp, aresponses, buildPythonPackage, fetchFromGitHub, mashumaro, orjson, poetry-core, pytest-asyncio, pytestCheckHook, pythonOlder, pythonRelaxDepsHook, syrupy, yarl, }: buildPythonPackage rec { pname = "autarco"; version = "0.3.0"; pyproject = true; disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "klaasnicolaas"; repo = "python-autarco"; rev = "refs/tags/v${version}"; hash = "sha256-IBf6Dw2Yf7m+5bQ72K0kPxGdtpl8JowQ9IO3gWS3Vso="; }; pythonRelaxDeps = [ "orjson" ]; postPatch = '' # Upstream doesn't set a version for the pyproject.toml substituteInPlace pyproject.toml \ --replace "0.0.0" "${version}" \ --replace "--cov" "" ''; nativeBuildInputs = [ poetry-core pythonRelaxDepsHook ]; propagatedBuildInputs = [ aiohttp mashumaro orjson yarl ]; __darwinAllowLocalNetworking = true; nativeCheckInputs = [ aresponses pytest-asyncio pytestCheckHook syrupy ]; pythonImportsCheck = [ "autarco" ]; meta = with lib; { description = "Module for the Autarco Inverter"; homepage = "https://github.com/klaasnicolaas/python-autarco"; changelog = "https://github.com/klaasnicolaas/python-autarco/releases/tag/v${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; }