at master 1.2 kB view raw
1{ 2 lib, 3 pythonOlder, 4 aiofiles, 5 async-timeout, 6 buildPythonPackage, 7 cryptography, 8 fetchFromGitHub, 9 isPy3k, 10 libusb1, 11 mock, 12 pyasn1, 13 pycryptodome, 14 pytestCheckHook, 15 rsa, 16}: 17 18buildPythonPackage rec { 19 pname = "adb-shell"; 20 version = "0.4.4"; 21 format = "setuptools"; 22 23 disabled = !isPy3k; 24 25 src = fetchFromGitHub { 26 owner = "JeffLIrion"; 27 repo = "adb_shell"; 28 rev = "v${version}"; 29 hash = "sha256-pOkFUh3SEu/ch9R1lVoQn50nufQp8oI+D4/+Ybal5CA="; 30 }; 31 32 propagatedBuildInputs = [ 33 cryptography 34 pyasn1 35 rsa 36 ]; 37 38 optional-dependencies = { 39 async = [ 40 aiofiles 41 async-timeout 42 ]; 43 usb = [ libusb1 ]; 44 }; 45 46 doCheck = pythonOlder "3.12"; # FIXME: tests are broken on 3.13 47 48 nativeCheckInputs = [ 49 mock 50 pycryptodome 51 pytestCheckHook 52 ] 53 ++ lib.flatten (builtins.attrValues optional-dependencies); 54 55 pythonImportsCheck = [ "adb_shell" ]; 56 57 meta = with lib; { 58 description = "Python implementation of ADB with shell and FileSync functionality"; 59 homepage = "https://github.com/JeffLIrion/adb_shell"; 60 license = licenses.asl20; 61 maintainers = with maintainers; [ jamiemagee ]; 62 }; 63}