1{ lib
2, fetchFromGitHub
3, coreutils
4, curl
5, gnugrep
6, gnused
7, gzip
8, nix
9, python
10 # python libs
11, colorlog
12, graphviz
13, numpy
14, packageurl-python
15, pandas
16, requests
17, reuse
18, tabulate
19}:
20
21python.pkgs.buildPythonApplication rec {
22 pname = "sbomnix";
23 version = "1.4.5";
24
25 src = fetchFromGitHub {
26 owner = "tiiuae";
27 repo = pname;
28 rev = "refs/tags/v${version}";
29 hash = "sha256-RxDFxVGivVBw2uhtzf231Q2HHTBFKSqGrknr2Es/ygM=";
30 };
31
32 makeWrapperArgs = [
33 "--prefix PATH : ${lib.makeBinPath [ coreutils curl gnugrep gnused gzip graphviz nix ]}"
34 ];
35
36 propagatedBuildInputs = [
37 colorlog
38 graphviz
39 numpy
40 packageurl-python
41 pandas
42 requests
43 reuse
44 tabulate
45 ];
46
47 pythonImportsCheck = [ "sbomnix" ];
48
49 meta = with lib; {
50 description = "Generate SBOMs for nix targets";
51 homepage = "https://github.com/tiiuae/sbomnix";
52 license = with licenses; [ asl20 bsd3 cc-by-30 ];
53 maintainers = with maintainers; [ henrirosten jk ];
54 };
55}