1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, gpiozero 5, mock 6, pyserial 7, pyserial-asyncio 8, pyusb 9, pytest-asyncio 10, pytestCheckHook 11, pythonOlder 12, zigpy 13}: 14 15buildPythonPackage rec { 16 pname = "zigpy-zigate"; 17 version = "0.11.0"; 18 format = "setuptools"; 19 20 disabled = pythonOlder "3.8"; 21 22 src = fetchFromGitHub { 23 owner = "zigpy"; 24 repo = "zigpy-zigate"; 25 rev = "refs/tags/${version}"; 26 hash = "sha256-eGN2QvPHZ8gfPPFdUbAP9cs43jzUHDBS/w1tni1shB0="; 27 }; 28 29 propagatedBuildInputs = [ 30 gpiozero 31 pyserial 32 pyserial-asyncio 33 pyusb 34 zigpy 35 ]; 36 37 nativeCheckInputs = [ 38 mock 39 pytest-asyncio 40 pytestCheckHook 41 ]; 42 43 pythonImportsCheck = [ 44 "zigpy_zigate" 45 ]; 46 47 disabledTestPaths = [ 48 # Fails in sandbox 49 "tests/test_application.py " 50 ]; 51 52 meta = with lib; { 53 description = "Library which communicates with ZiGate radios for zigpy"; 54 homepage = "https://github.com/zigpy/zigpy-zigate"; 55 changelog = "https://github.com/zigpy/zigpy-zigate/releases/tag/${version}"; 56 license = licenses.gpl3Plus; 57 maintainers = with maintainers; [ mvnetbiz ]; 58 platforms = platforms.linux; 59 }; 60}