{ lib , buildPythonPackage , fetchFromGitHub , mock , noiseprotocol , protobuf , pytest-asyncio , pytestCheckHook , pythonOlder , zeroconf }: buildPythonPackage rec { pname = "aioesphomeapi"; version = "11.1.1"; format = "setuptools"; disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "esphome"; repo = pname; rev = "refs/tags/v${version}"; hash = "sha256-fyY3G2tsrqy5aTXYI+KGqMahWspdTjjjkS9JK/ohjhc="; }; postPatch = '' substituteInPlace requirements.txt \ --replace "protobuf>=3.12.2,<4.0" "protobuf>=3.12.2" ''; propagatedBuildInputs = [ noiseprotocol protobuf zeroconf ]; checkInputs = [ mock pytest-asyncio pytestCheckHook ]; pythonImportsCheck = [ "aioesphomeapi" ]; meta = with lib; { description = "Python Client for ESPHome native API"; homepage = "https://github.com/esphome/aioesphomeapi"; license = licenses.mit; maintainers = with maintainers; [ fab hexa ]; }; }