[Distutils] wheels or system packages for pip on ubuntu

Reinout van Rees reinout at vanrees.org
Wed Sep 3 14:38:24 CEST 2014


On 03-09-14 14:22, Marius Gedminas wrote:
>
> Do you use buildout 1.x then?  buildout 2.x doesn't support isolation,
> so all system packages are available (unless you wrap it with a
> virtualenv).

Buildout 2.x.

syseggrecipe basically tells buildout that some package is available 
globally (by adding a develop-eggs/the_package.egg-link file or so).

Otherwise buildout will download and compile numpy/psycopg2/mapnik if it 
encounters such a dependency in the setup.py.

>> => is there a way to *selectively* use such a system package in an
>> otherwise-isolated virtualenv?
>
> You can symlink selected directories (the Python package directory and
> sometimes .so files from other subdirs) into the virtualenv.  This is
> hacky and I know of no tool to automate it.

I was looking for an automated non-hacky way :-)
Good to know I haven't missed anything. I'm almost exclusively using 
buildout, so I'm not that knowledgeable regarding pip.

>> => What is the best way to differentiate here? Separate
>> company-internal "wheelhouse" per ubuntu version? Custom tags?
>
> My gut feeling says go with a company-internal wheelhouse.  A simple
> directory with a bunch of *.whl files exposed via Apache's mod_autoindex
> suffices.  export PIP_FIND_LINKS=https://intranet.server/wheels/trusty/
> to make use of it automatically.  $DISTRIB_CODENAME, defined by sourcing
> /etc/lsb-release, can be helpful here.

Ok, sounds fine.



Reinout

-- 
Reinout van Rees                          http://reinout.vanrees.org/
reinout at vanrees.org                   http://www.nelen-schuurmans.nl/
"Learning history by destroying artifacts is a time-honored atrocity"



More information about the Distutils-SIG mailing list