Skip to main content

A buildout recipe to install distutils Python packages.

Project description

For Python packages which are only installable with distutils, and aren’t yet available as eggs. This recipe will download a distutils tarball, build it and place it inside your buildout inside a parts/site-packages directory.

It is up to you to inform your Python about this site-packages directory. You might do this with the zc.recipe.egg recipe:

[buildout]
parts =
    mypython

[mypython]
recipe = zc.recipe.egg
eggs = zc.recipe.egg
extra-paths = ${buildout:directory}/parts/site-packages/
interpreter = mypython
scripts = mypython

Options

url

The URL of the archives to download and install. The archive specified will be installed inside a site-packages directory.

build_ext

Additional build options passed to setup.py.

To-Do

Currently only enough work has been done on this recipe to get it to install mx-base and psycopg2. There is lots of room for improvement …

Example Usage

A sample buildout.cfg that installs mx-base and psycopg2 inside the site-packages directory. It also installs PostgreSQL for building psycopg2, adjusting the build_ext for psycopg2 to point to an existing PostgreSQL install would remove the need for this:

[buildout]
parts =
    egenix-mx-base
    mypython
    postgresql
    psycopg2

[egenix-mx-base]
recipe = collective.recipe.distutils
url = http://downloads.egenix.com/python/egenix-mx-base-3.0.0.zip

[mypython]
recipe = zc.recipe.egg
eggs = zc.recipe.egg
extra-paths = ${buildout:directory}/parts/site-packages/
interpreter = mypython
scripts = mypython

[postgresql]
recipe = zc.recipe.cmmi
url = http://example.com/postgresql-8.1.9.tar.gz

[psycopg2]
recipe = collective.recipe.distutils
url = http://example.com/psycopg2-2.0.6.tar.gz
build_ext =
        --pg-config=${buildout:directory}/parts/postgresql/bin/pg_config
        --rpath=${buildout:directory}/parts/postgresql/lib

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.recipe.distutils-0.1.tar.gz (4.2 kB view hashes)

Uploaded Source

Built Distribution

collective.recipe.distutils-0.1-py2.4.egg (7.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page