PyPM: A package manager for Python
by Troy Topnik

Troy Topnik, October 20, 2009

Package managers are useful things. For language distributions, they simplify the job of finding and installing modules, libraries or extensions for that language.

ActivePerl has had ppm for years, and indeed it's one of the big advantages of using ActivePerl over other Perl distributions. ActiveTcl got teacup a couple of years ago, which has allowed us to distribute a much "leaner" ActiveTcl 8.5, because users can easily install the extensions they need. Now ActivePython has its very own package manager: PyPM.

Python has had easy_install for a number of years, and more recently pip. These could be compared to Perl's CPAN shell, but like the CPAN shell they need to build the packages that are downloaded from the Python Package Index (PyPI). If you don't have a compiler installed and configured (i.e. most Windows systems), you can only build pure Python packages. Failing that, you can always search the web for a binary installer for your platform and Python version... somewhere... maybe...

ActivePython contains the first beta release of PyPM and the repository already has thousands of packages for Python 2.6. You can install these packages using the same command on Windows, Mac OS X and Linux.

There's a tutorial to get you started, and a list of packages currently available in the repository.

PyPM is following PEP 376 as it evolves to ensure you can using PyPM, pip and easy_install interchangeably without conflicts. We've also made sure it works with virtualenv.

We plan to add a GUI, keep adding packages from PyPI, and generally improve PyPM. So, give it a spin and be sure to let us know what you think!

Subscribe to ActiveState Blogs by Email

Share this post:

Category: ActiveBlog, python
About the Author: RSS

As ActiveState's Technical Product Manager for Stackato, Troy Topnik is responsible for defining and prioritizing the product roadmap to build the best cloud platform for deploying applications. Since joining ActiveState in 2001, he has held roles in Technical Support, Training, and Technical Writing. He believes in documentation-driven development as a pragmatic path to a better user experience.


2 comments for PyPM: A package manager for Python

Sridhar Ratakumar, the author of PyPM, wrote in from his well deserved vacation to correct me on my claim of pip and easy_install compatibility:

PEP 376 hasn't been finalized yet; so currently PyPM does not inter-operate with pip/easy_install. Once it is finalized, PyPM will.


[...] ActivePython 2.6 distribution includes ActiveState’s new Python Package Manager, PyPM. PyPM is relatively young, it’s labeled “beta”, and – not surprisingly [...]