1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 setuptools,
7 aiohttp,
8 click,
9 construct,
10 pycryptodomex,
11 pytestCheckHook,
12 pytest-asyncio,
13 asynctest,
14}:
15
16buildPythonPackage rec {
17 pname = "pyps4-2ndscreen";
18 version = "1.3.1";
19 pyproject = true;
20
21 disabled = pythonOlder "3.6";
22
23 src = fetchFromGitHub {
24 owner = "ktnrg45";
25 repo = "pyps4-2ndscreen";
26 tag = version;
27 hash = "sha256-AXU9WJ7kT/0ev1Cn+CYhEieR7IM5VXebxQYWUS8bdds=";
28 };
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 aiohttp
34 click
35 construct
36 pycryptodomex
37 ];
38
39 nativeCheckInputs = [
40 pytest-asyncio
41 pytestCheckHook
42 asynctest
43 ];
44
45 # Disable tests for Python 3.11+ since they all require asynctest
46 doCheck = pythonOlder "3.11";
47
48 pythonImportsCheck = [ "pyps4_2ndscreen" ];
49
50 meta = {
51 description = "PS4 2nd Screen Python Library";
52 homepage = "https://github.com/ktnrg45/pyps4-2ndscreen";
53 changelog = "https://github.com/ktnrg45/pyps4-2ndscreen/releases/tag/${version}";
54 license = lib.licenses.lgpl2Plus;
55 maintainers = [ lib.maintainers.jamiemagee ];
56 };
57}