1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 aiohttp, 7 semver, 8 deepmerge, 9 pytest-asyncio, 10 pytestCheckHook, 11 pythonOlder, 12}: 13 14buildPythonPackage rec { 15 pname = "blebox-uniapi"; 16 version = "2.3.0"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.9"; 20 21 src = fetchFromGitHub { 22 owner = "blebox"; 23 repo = "blebox_uniapi"; 24 rev = "refs/tags/v${version}"; 25 hash = "sha256-nqxbwHzx2cnojw/XX9XQoVvOCCd88tulY0m9xEHU3m4="; 26 }; 27 28 postPatch = '' 29 substituteInPlace setup.py \ 30 --replace-fail "pytest-runner" "" 31 ''; 32 33 nativeBuildInputs = [ setuptools ]; 34 35 propagatedBuildInputs = [ 36 aiohttp 37 semver 38 ]; 39 40 nativeCheckInputs = [ 41 deepmerge 42 pytest-asyncio 43 pytestCheckHook 44 ]; 45 46 pythonImportsCheck = [ "blebox_uniapi" ]; 47 48 meta = with lib; { 49 changelog = "https://github.com/blebox/blebox_uniapi/blob/v${version}/HISTORY.rst"; 50 description = "Python API for accessing BleBox smart home devices"; 51 homepage = "https://github.com/blebox/blebox_uniapi"; 52 license = licenses.asl20; 53 maintainers = with maintainers; [ dotlambda ]; 54 }; 55}