Every Python scripts which is more complex than a single file or depends on external libraries will not be trivial to install by an end user.

More complex installation is also boring and tiresome, particularly if it has a number of dependencies, needs multiple steps and has to be repeated a few times.

Ideally if dependencies were resolved automatically, even better if there was a centralized repository with it and its dependencies.

Preparing a package and distributing any Python’s utility requires an extra effort but it pays off quickly by the easiness of the package installation.

  1. SetupTools:
  2. Python Packaging Guide
  3. Kenneth Reitz Packaging Guide
  4. pip-tools
  5. Bill Mills Package Lesson
  6. The Hitchhikers’s Guide to Packaging
  7. Real Python
  8. Twine:

Examples

  1. Uploading to PyPI