diff --git a/pkgs/by-name/cv/cve-prioritizer/package.nix b/pkgs/by-name/cv/cve-prioritizer/package.nix new file mode 100644 index 000000000000..705951a13d3c --- /dev/null +++ b/pkgs/by-name/cv/cve-prioritizer/package.nix @@ -0,0 +1,58 @@ +{ + lib, + fetchFromGitHub, + fetchpatch, + python3, +}: + +python3.pkgs.buildPythonApplication rec { + pname = "cve-prioritizer"; + version = "1.8.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "TURROKS"; + repo = "CVE_Prioritizer"; + rev = "refs/tags/v${version}"; + hash = "sha256-ade/gcRrdvVsp5F61ZndsNL3s3gq8TDk/dZvPc55S/8="; + }; + + patches = [ + # Add script, https://github.com/TURROKS/CVE_Prioritizer/pull/33 + (fetchpatch { + name = "add-script.patch"; + url = "https://github.com/TURROKS/CVE_Prioritizer/commit/c29f2332cde7d79e0c9f34c0a1811611a8fb73c9.patch"; + hash = "sha256-/hnS+YKO4zNGVGTG+KsugJH7Bt2OE8Q2F+7ZX+uhFlU="; + }) + ]; + + postPatch = '' + # https://github.com/TURROKS/CVE_Prioritizer/pull/32 + substituteInPlace pyproject.toml \ + --replace-fail "CVE Prioritizer" "cve-prioritizer" + ''; + + build-system = with python3.pkgs; [ setuptools ]; + + dependencies = with python3.pkgs; [ + click + pandas + python-dotenv + requests + termcolor + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "cve_prioritizer" ]; + + meta = { + description = "Vulnerability patching with CVSS, EPSS, and CISA's Known Exploited Vulnerabilities"; + homepage = "https://github.com/TURROKS/CVE_Prioritizer"; + changelog = "https://github.com/TURROKS/CVE_Prioritizer/releases/tag/v${version}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "cve-prioritizer"; + }; +}