1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8
9 # dependencies
10 dpkt,
11
12 # tests
13 mock,
14 pytestCheckHook,
15 pytest-asyncio,
16}:
17
18buildPythonPackage rec {
19 pname = "aiortsp";
20 version = "1.4.0";
21 pyproject = true;
22
23 src = fetchFromGitHub {
24 owner = "marss";
25 repo = "aiortsp";
26 tag = "v${version}";
27 hash = "sha256-/ydsu+53WOocdWk3AW0/cXBEx1qAlhIC0LUDy459pbQ=";
28 };
29
30 nativeBuildInputs = [ setuptools ];
31
32 propagatedBuildInputs = [ dpkt ];
33
34 nativeCheckInputs = [
35 mock
36 pytestCheckHook
37 pytest-asyncio
38 ];
39
40 disabledTestPaths = [
41 # these tests get stuck, could be pytest-asyncio compat issue
42 "tests/test_connection.py"
43 ];
44
45 pythonImportsCheck = [ "aiortsp" ];
46
47 meta = with lib; {
48 description = "Asyncio-based RTSP library";
49 homepage = "https://github.com/marss/aiortsp";
50 changelog = "https://github.com/marss/aiortsp/blob/${src.rev}/CHANGELOG.rst";
51 license = licenses.lgpl3Plus;
52 maintainers = with maintainers; [ hexa ];
53 };
54}