1{
2 lib,
3 attrs,
4 buildPythonPackage,
5 click,
6 commoncode,
7 dockerfile-parse,
8 fetchFromGitHub,
9 pytestCheckHook,
10 pythonOlder,
11 setuptools-scm,
12}:
13
14buildPythonPackage rec {
15 pname = "container-inspector";
16 version = "32.0.1";
17 format = "setuptools";
18
19 disabled = pythonOlder "3.6";
20
21 src = fetchFromGitHub {
22 owner = "nexB";
23 repo = pname;
24 rev = "refs/tags/v${version}";
25 hash = "sha256-J9glnfs6l36/IQoIvE8a+Cw4B8x/6r5UeAU8+T/OiQg=";
26 };
27
28 dontConfigure = true;
29
30 postPatch = ''
31 # PEP440 support was removed in newer setuptools, https://github.com/nexB/container-inspector/pull/51
32 substituteInPlace setup.cfg \
33 --replace ">=3.7.*" ">=3.7"
34 '';
35
36 nativeBuildInputs = [ setuptools-scm ];
37
38 propagatedBuildInputs = [
39 attrs
40 click
41 dockerfile-parse
42 commoncode
43 ];
44
45 nativeCheckInputs = [ pytestCheckHook ];
46
47 pythonImportsCheck = [ "container_inspector" ];
48
49 meta = with lib; {
50 description = "Suite of analysis utilities and command line tools for container images";
51 homepage = "https://github.com/nexB/container-inspector";
52 changelog = "https://github.com/nexB/container-inspector/releases/tag/v${version}";
53 license = with licenses; [ asl20 ];
54 maintainers = with maintainers; [ fab ];
55 };
56}