btrbk: add mainProgram (#356350)
[NixPkgs.git] / pkgs / by-name / de / dep-scan / package.nix
blob561d97debfa16ed17a4f0b06ca64a48c75beb301
2   lib,
3   fetchFromGitHub,
4   python3,
5 }:
7 let
8   appthreat-vulnerability-db = (
9     python3.pkgs.appthreat-vulnerability-db.overrideAttrs (oldAttrs: rec {
10       version = "5.7.8";
11       src = oldAttrs.src.override {
12         rev = "refs/tags/v${version}";
13         hash = "sha256-R00/a9+1NctVPi+EL7K65w/e88c9oSW5xXGgno+MCXo=";
14       };
15     })
16   );
19 python3.pkgs.buildPythonApplication rec {
20   pname = "dep-scan";
21   version = "5.4.8";
22   pyproject = true;
24   src = fetchFromGitHub {
25     owner = "owasp-dep-scan";
26     repo = "dep-scan";
27     rev = "refs/tags/v${version}";
28     hash = "sha256-QTvxKoqBxTb/xFaIHsYe3N+7ABJ6sDd2vVcjkMbm3xI=";
29   };
31   pythonRelaxDeps = [ "oras" ];
33   build-system = with python3.pkgs; [ setuptools ];
35   dependencies = with python3.pkgs; [
36     appthreat-vulnerability-db
37     cvss
38     defusedxml
39     jinja2
40     oras
41     packageurl-python
42     pdfkit
43     pygithub
44     pyyaml
45     quart
46     rich
47     toml
48   ];
50   nativeCheckInputs = with python3.pkgs; [
51     httpretty
52     pytest-cov-stub
53     pytestCheckHook
54   ];
56   pythonImportsCheck = [ "depscan" ];
58   preCheck = ''
59     export HOME=$(mktemp -d)
60   '';
62   disabledTests = [
63     # Test is not present
64     "test_query_metadata2"
65   ];
67   meta = with lib; {
68     description = "Security and risk audit tool based on known vulnerabilities, advisories, and license limitations for project dependencies";
69     homepage = "https://github.com/owasp-dep-scan/dep-scan";
70     changelog = "https://github.com/owasp-dep-scan/dep-scan/releases/tag/v${version}";
71     license = licenses.mit;
72     maintainers = with maintainers; [ fab ];
73     mainProgram = "dep-scan";
74   };