1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pythonOlder, 6 setuptools-scm, 7 click, 8 help2man, 9 markdown-it-py, 10 shtab, 11 tomli, 12 pytestCheckHook, 13}: 14 15buildPythonPackage rec { 16 pname = "setuptools-generate"; 17 version = "0.0.6"; 18 pyproject = true; 19 20 disabled = pythonOlder "3.9"; 21 22 src = fetchFromGitHub { 23 owner = "Freed-Wu"; 24 repo = "setuptools-generate"; 25 tag = version; 26 hash = "sha256-xDjxkWy/n0jStI9eLcM6WduyU9vGjtBOmJ86dpXjceQ="; 27 }; 28 29 nativeBuildInputs = [ setuptools-scm ]; 30 31 propagatedBuildInputs = [ 32 click 33 help2man 34 markdown-it-py 35 shtab 36 ] 37 ++ lib.optionals (pythonOlder "3.11") [ tomli ]; 38 39 nativeCheckInputs = [ pytestCheckHook ]; 40 41 pythonImportsCheck = [ "setuptools_generate" ]; 42 43 meta = with lib; { 44 description = "Generate shell completions and man page when building a python package"; 45 homepage = "https://github.com/Freed-Wu/setuptools-generate"; 46 changelog = "https://github.com/Freed-Wu/setuptools-generate/blob/${src.rev}/CHANGELOG.md"; 47 license = licenses.gpl3Only; 48 maintainers = with maintainers; [ natsukium ]; 49 }; 50}