1{
2 lib,
3 async-timeout,
4 buildPythonPackage,
5 defang,
6 dnspython,
7 fetchFromGitHub,
8 playwrightcapture,
9 poetry-core,
10 pythonOlder,
11 redis,
12 requests,
13 pythonRelaxDepsHook,
14 sphinx,
15 ua-parser,
16}:
17
18buildPythonPackage rec {
19 pname = "lacuscore";
20 version = "1.9.4";
21 pyproject = true;
22
23 disabled = pythonOlder "3.8";
24
25 src = fetchFromGitHub {
26 owner = "ail-project";
27 repo = "LacusCore";
28 rev = "refs/tags/v${version}";
29 hash = "sha256-wjkU9rZvR7fySeNvMizLYL3JwsfhicdtezWeuwMCHgM=";
30 };
31
32 pythonRelaxDeps = [
33 "redis"
34 "requests"
35 ];
36
37 build-system = [ poetry-core ];
38
39 nativeBuildInputs = [ pythonRelaxDepsHook ];
40
41 dependencies = [
42 async-timeout
43 defang
44 dnspython
45 playwrightcapture
46 redis
47 requests
48 sphinx
49 ua-parser
50 ];
51
52 # Module has no tests
53 doCheck = false;
54
55 pythonImportsCheck = [ "lacuscore" ];
56
57 meta = with lib; {
58 description = "The modulable part of Lacus";
59 homepage = "https://github.com/ail-project/LacusCore";
60 changelog = "https://github.com/ail-project/LacusCore/releases/tag/v${version}";
61 license = licenses.bsd3;
62 maintainers = with maintainers; [ fab ];
63 };
64}