1{ lib
2, asynctest
3, bleak
4, click
5, buildPythonPackage
6, fetchFromGitHub
7, pytest-asyncio
8, pytest-mock
9, pytestCheckHook
10, pythonOlder
11}:
12
13buildPythonPackage rec {
14 pname = "pyzerproc";
15 version = "0.4.11";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "emlove";
22 repo = pname;
23 rev = version;
24 sha256 = "sha256-FNiq/dbh5PMTxnKCKDSHEvllehAEUYvWZS+OyP3lSW8=";
25 };
26
27 postPatch = ''
28 sed -i "/--cov/d" setup.cfg
29 '';
30
31 propagatedBuildInputs = [
32 bleak
33 click
34 ];
35
36 checkInputs = [
37 pytest-asyncio
38 pytest-mock
39 pytestCheckHook
40 ] ++ lib.optionals (pythonOlder "3.8") [
41 asynctest
42 ];
43
44 pythonImportsCheck = [
45 "pyzerproc"
46 ];
47
48 meta = with lib; {
49 description = "Python library to control Zerproc Bluetooth LED smart string lights";
50 homepage = "https://github.com/emlove/pyzerproc";
51 license = with licenses; [ asl20 ];
52 maintainers = with maintainers; [ fab ];
53 platforms = platforms.linux;
54 };
55}