1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 packaging,
7 pytestCheckHook,
8 pythonOlder,
9 requests,
10 sh,
11}:
12
13buildPythonPackage rec {
14 pname = "anybadge";
15 version = "1.16.0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "jongracecox";
22 repo = "anybadge";
23 tag = "v${version}";
24 hash = "sha256-9qGmiIGzVdWHMyurMqTqEz+NKYlc/5zt6HPsssCH4Pk=";
25 };
26
27 postPatch = ''
28 substituteInPlace setup.py \
29 --replace-fail '=get_version(),' "='$version',"
30 '';
31
32 build-system = [
33 setuptools
34 ];
35
36 dependencies = [
37 packaging
38 ];
39
40 nativeCheckInputs = [
41 pytestCheckHook
42 requests
43 sh
44 ];
45
46 disabledTests = [
47 # Comparison of CLI output fails
48 "test_module_same_output_as_main_cli"
49 ];
50
51 disabledTestPaths = [
52 # No anybadge-server
53 "tests/test_server.py"
54 ];
55
56 pythonImportsCheck = [ "anybadge" ];
57
58 meta = {
59 description = "Python tool for generating badges for your projects";
60 homepage = "https://github.com/jongracecox/anybadge";
61 changelog = "https://github.com/jongracecox/anybadge/releases/tag/${src.tag}";
62 license = lib.licenses.mit;
63 maintainers = with lib.maintainers; [ fabiangd ];
64 };
65}