1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 setuptools, 6 setuptools-scm, 7 wheel, 8 colorama, 9 configupdater, 10 importlib-metadata, 11 packaging, 12 platformdirs, 13 tomlkit, 14 pre-commit, 15 pyscaffoldext-cookiecutter, 16 pyscaffoldext-custom-extension, 17 pyscaffoldext-django, 18 pyscaffoldext-dsproject, 19 pyscaffoldext-markdown, 20 pyscaffoldext-travis, 21 virtualenv, 22 build, 23 certifi, 24 flake8, 25 pytest, 26 pytest-cov, 27 pytest-randomly, 28 pytest-xdist, 29 sphinx, 30 tox, 31}: 32 33buildPythonPackage rec { 34 pname = "pyscaffold"; 35 version = "4.5"; 36 pyproject = true; 37 38 src = fetchPypi { 39 pname = "PyScaffold"; 40 inherit version; 41 hash = "sha256-2En5ouFb3PFl4Z+Wg18LF+Gi1Z1MVhxEW4J6CB3m0mI="; 42 }; 43 44 nativeBuildInputs = [ 45 setuptools 46 setuptools-scm 47 wheel 48 ]; 49 50 postPatch = '' 51 substituteInPlace setup.cfg --replace "platformdirs>=2,<4" "platformdirs" 52 ''; 53 54 propagatedBuildInputs = [ 55 colorama 56 configupdater 57 importlib-metadata 58 packaging 59 platformdirs 60 setuptools 61 setuptools-scm 62 tomlkit 63 ]; 64 65 passthru.optional-dependencies = { 66 all = [ 67 pre-commit 68 pyscaffoldext-cookiecutter 69 pyscaffoldext-custom-extension 70 pyscaffoldext-django 71 pyscaffoldext-dsproject 72 pyscaffoldext-markdown 73 pyscaffoldext-travis 74 virtualenv 75 ]; 76 ds = [ pyscaffoldext-dsproject ]; 77 md = [ pyscaffoldext-markdown ]; 78 testing = [ 79 build 80 certifi 81 flake8 82 pre-commit 83 pytest 84 pytest-cov 85 pytest-randomly 86 pytest-xdist 87 setuptools 88 setuptools-scm 89 sphinx 90 tomlkit 91 tox 92 virtualenv 93 wheel 94 ]; 95 }; 96 97 pythonImportsCheck = [ "pyscaffold" ]; 98 99 meta = with lib; { 100 description = "Template tool for putting up the scaffold of a Python project"; 101 mainProgram = "putup"; 102 homepage = "https://pypi.org/project/PyScaffold/"; 103 license = licenses.mit; 104 maintainers = with maintainers; [ matthewcroughan ]; 105 }; 106}