1{
2 lib,
3 buildPythonPackage,
4 pythonOlder,
5 fetchFromGitHub,
6
7 # build-system
8 poetry-core,
9
10 # dependencies
11 bitarray,
12 crc,
13
14 # tests
15 pytestCheckHook,
16}:
17
18buildPythonPackage rec {
19 pname = "airtouch5py";
20 version = "0.3.0";
21 pyproject = true;
22
23 disabled = pythonOlder "3.10";
24
25 src = fetchFromGitHub {
26 owner = "danzel";
27 repo = "airtouch5py";
28 tag = version;
29 hash = "sha256-St2FjyUXyTmy0shQfUzuB+lUSaadEyjdNJJkQA4aCxQ=";
30 };
31
32 build-system = [ poetry-core ];
33
34 pythonRelaxDeps = [
35 "bitarray"
36 "crc"
37 ];
38
39 dependencies = [
40 bitarray
41 crc
42 ];
43
44 nativeCheckInputs = [ pytestCheckHook ];
45
46 pythonImportsCheck = [ "airtouch5py" ];
47
48 meta = with lib; {
49 changelog = "https://github.com/danzel/airtouch5py/releases/tag/${version}";
50 description = "Python client for the airtouch 5";
51 homepage = "https://github.com/danzel/airtouch5py";
52 license = licenses.asl20;
53 maintainers = with maintainers; [ jamiemagee ];
54 };
55}