1{
2 lib,
3 buildPythonPackage,
4 debian-inspector,
5 docker,
6 dockerfile-parse,
7 fetchPypi,
8 gitpython,
9 idna,
10 license-expression,
11 packageurl-python,
12 pbr,
13 prettytable,
14 pythonOlder,
15 pyyaml,
16 regex,
17 requests,
18 stevedore,
19}:
20
21buildPythonPackage rec {
22 pname = "tern";
23 version = "2.12.1";
24 format = "setuptools";
25
26 disabled = pythonOlder "3.7";
27
28 src = fetchPypi {
29 inherit pname version;
30 hash = "sha256-yMIvFiliEHrbZMqvX3ZAROWcqii5VmB54QEYHGRJocA=";
31 };
32
33 preBuild = ''
34 cp requirements.{in,txt}
35 '';
36
37 nativeBuildInputs = [ pbr ];
38
39 propagatedBuildInputs = [
40 pyyaml
41 docker
42 dockerfile-parse
43 license-expression
44 requests
45 stevedore
46 debian-inspector
47 regex
48 gitpython
49 prettytable
50 idna
51 packageurl-python
52 ];
53
54 # No tests
55 doCheck = false;
56
57 pythonImportsCheck = [ "tern" ];
58
59 meta = with lib; {
60 description = "Software composition analysis tool and Python library that generates a Software Bill of Materials for container images and Dockerfiles";
61 mainProgram = "tern";
62 homepage = "https://github.com/tern-tools/tern";
63 changelog = "https://github.com/tern-tools/tern/releases/tag/v${version}";
64 license = licenses.bsd2;
65 maintainers = [ ];
66 };
67}