1{ lib
2, async-timeout
3, attrs
4, buildPythonPackage
5, fetchFromGitHub
6, httpx
7, orjson
8, packaging
9, pythonOlder
10, xmltodict
11}:
12
13buildPythonPackage rec {
14 pname = "axis";
15 version = "48";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "Kane610";
22 repo = pname;
23 rev = "refs/tags/v${version}";
24 hash = "sha256-/Iz1F40Y00bgJUvNrkPGyA8Kkch92Kijeg8TQ8mostM=";
25 };
26
27 propagatedBuildInputs = [
28 async-timeout
29 attrs
30 httpx
31 orjson
32 packaging
33 xmltodict
34 ];
35
36 # Tests requires a server on localhost
37 doCheck = false;
38
39 pythonImportsCheck = [
40 "axis"
41 ];
42
43 meta = with lib; {
44 description = "Python library for communicating with devices from Axis Communications";
45 homepage = "https://github.com/Kane610/axis";
46 changelog = "https://github.com/Kane610/axis/releases/tag/v${version}";
47 license = with licenses; [ mit ];
48 maintainers = with maintainers; [ fab ];
49 };
50}