acr-cli: init at 0.14 (#359508)
[NixPkgs.git] / pkgs / by-name / ga / gallia / package.nix
blob1788e2784cc6831b1e56015398323b7a9b420b70
2   lib,
3   fetchFromGitHub,
4   python3,
5   cacert,
6 }:
8 python3.pkgs.buildPythonApplication rec {
9   pname = "gallia";
10   version = "1.9.0";
11   pyproject = true;
13   src = fetchFromGitHub {
14     owner = "Fraunhofer-AISEC";
15     repo = "gallia";
16     rev = "refs/tags/v${version}";
17     hash = "sha256-izMTTZrp4aizq5jS51BNtq3lv9Kr+xI7scZfYKXA/oY=";
18   };
20   pythonRelaxDeps = [ "aiofiles" ];
22   build-system = with python3.pkgs; [ poetry-core ];
24   dependencies = with python3.pkgs; [
25     aiofiles
26     aiohttp
27     aiosqlite
28     argcomplete
29     python-can
30     exitcode
31     construct
32     httpx
33     more-itertools
34     msgspec
35     platformdirs
36     psutil
37     pydantic
38     pygit2
39     tabulate
40     tomli
41     zstandard
42   ];
44   SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
46   nativeCheckInputs = with python3.pkgs; [
47     pytestCheckHook
48     pytest-asyncio
49   ];
51   pythonImportsCheck = [ "gallia" ];
53   preCheck = ''
54     export PATH=$out/bin:$PATH
55   '';
57   meta = with lib; {
58     description = "Extendable Pentesting Framework for the Automotive Domain";
59     homepage = "https://github.com/Fraunhofer-AISEC/gallia";
60     changelog = "https://github.com/Fraunhofer-AISEC/gallia/releases/tag/v${version}";
61     license = with licenses; [ asl20 ];
62     maintainers = with maintainers; [
63       fab
64       rumpelsepp
65     ];
66     platforms = platforms.linux;
67   };