On Thu, Jun 21, 2012 at 11:57 PM, Barry Warsaw <barry@python.org> wrote:
On Jun 21, 2012, at 07:48 AM, Chris McDonough wrote:
I don't know about Red Hat but both Ubuntu and Apple put all kinds of stuff on the default sys.path of the system Python of the box that's related to their software's concerns only. I don't understand why people accept this but get crazy about the fact that installing a setuptools distribution using easy_install changes the default sys.path.
Frankly, I've long thought that distros like Debian/Ubuntu which rely so much on Python for essential system functions should basically have two Python stacks. One would be used for just those system functions and the other would be for application deployment. OTOH, I often hear from application developers on Ubuntu that they basically have to build up their own stack *anyway* if they want to ensure they've got the right suite of dependencies. This is where tools like virtualenv and buildout on the lower end and chef/puppet/juju on the higher end come into play.
Yeah, I liked Hynek's method for blending a Python-centric application development approach with a system packaging centric configuration management approach: take an entire virtualenv and package *that* as a single system package. Another strategy that can work is application specific system package repos, but you have to be very committed to a particular OS and packaging system for that approach to make a lot of sense :) Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia