1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 httpx,
7 pyjwt,
8 pythonOlder,
9 websockets,
10 yarl,
11}:
12
13buildPythonPackage rec {
14 pname = "elmax-api";
15 version = "0.0.6.4rc0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "albertogeniola";
22 repo = pname;
23 tag = "v${version}";
24 hash = "sha256-BYVfP8B+p4J4gW+64xh9bT9sDcu/lk0R+MvLsYLwRfQ=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 httpx
31 pyjwt
32 websockets
33 yarl
34 ];
35
36 # Test require network access
37 doCheck = false;
38
39 pythonImportsCheck = [ "elmax_api" ];
40
41 meta = with lib; {
42 description = "Python library for interacting with the Elmax cloud";
43 homepage = "https://github.com/albertogeniola/elmax-api";
44 changelog = "https://github.com/albertogeniola/elmax-api/releases/tag/v${version}";
45 license = with licenses; [ asl20 ];
46 maintainers = with maintainers; [ fab ];
47 };
48}