1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 setuptools,
7 aiohttp,
8 mashumaro,
9 aiofiles,
10 aioresponses,
11 pytest-asyncio,
12 pytestCheckHook,
13}:
14
15buildPythonPackage rec {
16 pname = "airos";
17 version = "0.5.3";
18 pyproject = true;
19
20 disabled = pythonOlder "3.13";
21
22 src = fetchFromGitHub {
23 owner = "CoMPaTech";
24 repo = "python-airos";
25 tag = "v${version}";
26 hash = "sha256-P9IQ4MBjOZJksKipaq9+6Zgui9uO4zy2Rx74OCLPYCU=";
27 };
28
29 build-system = [ setuptools ];
30
31 dependencies = [
32 aiohttp
33 mashumaro
34 ];
35
36 nativeCheckInputs = [
37 aiofiles
38 aioresponses
39 pytest-asyncio
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [ "airos" ];
44
45 meta = {
46 description = "Ubiquity airOS module(s) for Python 3";
47 homepage = "https://github.com/CoMPaTech/python-airos";
48 changelog = "https://github.com/CoMPaTech/python-airos/releases/tag/v${version}";
49 license = lib.licenses.mit;
50 maintainers = [ lib.maintainers.jamiemagee ];
51 };
52}