1{ lib
2, adb-shell
3, aiofiles
4, buildPythonPackage
5, fetchFromGitHub
6, mock
7, pure-python-adb
8, pytestCheckHook
9, pythonOlder
10}:
11
12buildPythonPackage rec {
13 pname = "androidtv";
14 version = "0.0.69";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "JeffLIrion";
21 repo = "python-androidtv";
22 rev = "v${version}";
23 hash = "sha256-GfwXYugDrxOe9ekC1M7mi0BuqmohHdgZVTO4J8+B5iI=";
24 };
25
26 propagatedBuildInputs = [
27 adb-shell
28 pure-python-adb
29 ];
30
31 passthru.optional-dependencies = {
32 async = [
33 aiofiles
34 ];
35 inherit (adb-shell.optional-dependencies) usb;
36 };
37
38 checkInputs = [
39 mock
40 pytestCheckHook
41 ]
42 ++ passthru.optional-dependencies.async
43 ++ passthru.optional-dependencies.usb;
44
45 disabledTests = [
46 # Requires git but fails anyway
47 "test_no_underscores"
48 ];
49
50 pythonImportsCheck = [
51 "androidtv"
52 ];
53
54 meta = with lib; {
55 description = "Communicate with an Android TV or Fire TV device via ADB over a network";
56 homepage = "https://github.com/JeffLIrion/python-androidtv/";
57 license = licenses.mit;
58 maintainers = with maintainers; [ jamiemagee ];
59 };
60}