1{
2 lib,
3 stdenv,
4 aiohttp,
5 buildPythonPackage,
6 fetchFromGitHub,
7 poetry-core,
8 pytest-aiohttp,
9 pytest-cov-stub,
10 pytest-timeout,
11 pytestCheckHook,
12 pythonOlder,
13}:
14
15buildPythonPackage rec {
16 pname = "motioneye-client";
17 version = "0.3.14";
18 format = "pyproject";
19
20 disabled = pythonOlder "3.8";
21
22 src = fetchFromGitHub {
23 owner = "dermotduffy";
24 repo = "motioneye-client";
25 rev = "v${version}";
26 hash = "sha256-kgFSd5RjO+OtnPeAOimPTDVEfJ47rXh2Ku5xEYStHv8=";
27 };
28
29 postPatch = ''
30 substituteInPlace pyproject.toml \
31 --replace 'aiohttp = "^3.8.1,!=3.8.2,!=3.8.3"' 'aiohttp = "*"'
32 '';
33
34 nativeBuildInputs = [ poetry-core ];
35
36 propagatedBuildInputs = [ aiohttp ];
37
38 nativeCheckInputs = [
39 pytest-aiohttp
40 pytest-cov-stub
41 pytest-timeout
42 pytestCheckHook
43 ];
44
45 pythonImportsCheck = [ "motioneye_client" ];
46
47 meta = with lib; {
48 description = "Python library for motionEye";
49 homepage = "https://github.com/dermotduffy/motioneye-client";
50 license = with licenses; [ mit ];
51 maintainers = with maintainers; [ fab ];
52 broken = stdenv.hostPlatform.isDarwin;
53 };
54}