Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, buildPythonPackage
3, pythonOlder
4, fetchPypi
5, dataclasses-json
6, pycryptodome
7, setuptools
8, pytest-asyncio
9, pytest-cases
10, pytestCheckHook
11}:
12
13buildPythonPackage rec {
14 pname = "pysiaalarm";
15 version = "3.0.2";
16
17 disabled = pythonOlder "3.8";
18
19 src = fetchPypi {
20 inherit pname version;
21 sha256 = "sha256-hS0OaafYjRdPVSCOHfb2zKp0tEOl1LyMJpwnpvsvALs=";
22 };
23
24 postPatch = ''
25 substituteInPlace setup.cfg \
26 --replace "==" ">="
27 substituteInPlace pytest.ini \
28 --replace "--cov pysiaalarm --cov-report term-missing" ""
29 '';
30
31 propagatedBuildInputs = [
32 dataclasses-json
33 pycryptodome
34 setuptools
35 ];
36
37 checkInputs = [
38 pytest-asyncio
39 pytest-cases
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [
44 "pysiaalarm"
45 "pysiaalarm.aio"
46 ];
47
48 meta = with lib; {
49 description = "Python package for creating a client that talks with SIA-based alarm systems";
50 homepage = "https://github.com/eavanvalkenburg/pysiaalarm";
51 license = licenses.mit;
52 maintainers = with maintainers; [ dotlambda ];
53 };
54}