[Distutils] repeatable and updatable virtualenv

Rob Miller rob at kalistra.com
Wed Mar 24 19:26:05 CET 2010


Chris Withers wrote:
> Lennart Regebro wrote:
>> On Mon, Mar 22, 2010 at 09:59, Chris Withers <chris at simplistix.co.uk> 
>> wrote:
>>> Saint Germain wrote:
>>>> I'm currently trying more or less the same thing by combining buildout
>>>> with virtualenv and pip.
>>> This doesn't seem like a sane thing to do.
>>
>> Sure it does. It's just not very useful in most cases. Buildout by
>> itself works fine to isolate the python installation from the stuff
>> installed.
> 
> Well, no, using a virtualenv to wrap a buildout is far from insane, 
> especially until Gary's work to make site-packages optionally excluded 
> from the search path lands!
> 
> However, the OP's recommended recipes appear to just use buildout to 
> drive virtualenv, ignoring all of buildout's python package management.
> That seems insane...

I wrote the rjm.recipe.venv recipe.  All it does is turn the buildout root 
directory into a virtualenv, so you can use virtualenv to wrap the buildout 
w/o having to take an extra step, or worry about whether or not one of your 
downstream users has forgotten to do so.

That being said, I also like the idea of gp.recipe.pip.  I'll admit that it 
_is_ a bit insane.  But the pip/virtualenv combination fits my brain better 
than buildout.  I don't much care for zc.recipe.egg, I prefer virtualenv's 
approach of mimicking Python's package management mechanisms, so that I don't 
have to context switch between my sandboxed environments and the way Python 
works at the system level.  gp.recipe.pip is nowhere near as battle-hardened 
as zc.recipe.egg, nor does it support every use case that zc.recipe.egg 
supports, but I can certainly understand the motivation.

-r



More information about the Distutils-SIG mailing list