[Grok-dev] Making an egg bundle for Grok

Maurits van Rees m.van.rees at zestsoftware.nl
Fri May 16 20:31:23 EDT 2008

Hi fellow grokkers!

Out of the Grokkerdam sprint z3c.recipe.eggbasket was born.  This lets
you quickstart a grok project by first installing the grok egg and its
dependencies from a tar ball without relying on a zillion cheese shops
and sourceforges, like this:

recipe = z3c.recipe.eggbasket
eggs = grok
url = http://grok.zope.org/releaseinfo/grok-eggs-0.12.tgz

The tar ball that is pointed to was made with zc.sourcerelease and
some handwavy procedure.  We decided we wanted that to be easier.  So
I added a command line script to z3c.recipe.eggbasket.  It is only on
trunk, so if you want to test it, you need a checkout from:


It has a buildout.cfg for testing.  The important part is this, which
you could add to any random buildout (say the grok one):

recipe = zc.recipe.egg
eggs = z3c.recipe.eggbasket
arguments =
    egg = 'grok',
    versionfile = 'http://grok.zope.org/releaseinfo/grok-0.12.cfg'

This is slightly awkward: note the comma and the quotes that are
needed in the arguments.  But it does the trick.  You give the name of
an egg and a version file (can also be a local buildout.cfg).  Then
you run bin/buildout and bin/releasemaker.  You may want to grab a
coffee or a beer at that point as it may take a while. :-)

I would say: just try it out.  For testing it is faster to use for
example 'martian' instead of 'grok'.  That will give you a tar ball
with just the martian and zope.interface eggs.

So: there is working code and there is lots of room for improvement
(don't get me started).  Now would be a good time to hop in with
contributions, cheer me on or point me in a different direction.

Testing on Windows would be cool too, both of the script and the
recipe. :)

Naming suggestions for the script are also welcome: releasemaker,
releaser, eggbasket, create_egg_bundle, shipit, etc.

Maurits van Rees | http://maurits.vanrees.org/
            Work | http://zestsoftware.nl/
"This is your day, don't let them take it away." [Barlow Girl]

More information about the Grok-dev mailing list