[Distutils] Simpler Python package management: the "egg" command

Luis Bruno eu at lbruno.org
Fri Aug 17 11:59:26 CEST 2007


Hello again,

I'm trying to ASCII-fy so that I don't send another base64 blob.

Bjorn Stabell wrote:
> Luis Bruno wrote:
> > Bjorn Stabell wrote:
> > > egg info pysqlite
> > > egg info pysqlite/2.0.0
> > > egg sync local
> >
> > Sorry, but I think you meant apt-get instead of egg. No, I didn't
> > search the archives. But making an apt-get repository (yum, emerge...)
> > can't be *that* hard; it also can't be an uncommon idea. Someone must
> > have suggested it before.
>
> The "egg" prototype already does the above commands.

I didn't have a look around your code. My whole post could be
summarized as: you're reinventing the apt-get paraphernalia.

I'd prefer to drop a python.list into /etc/apt/sources.list.d/ with:
deb http://eggs.python.org/apt <whatever> <whatever>
And use the rest of the tools I already have.

The really *big* -1 this has is that I'm basically gonna be using
--single-version-externally-managed eggs (which makes it impossible to
have multiple "inactive" versions and require() them, if I understood
Phillip Eby correctly).

> The "egg sync" stuff was to get the latest package information from
> PyPI and from your locally installed packages so that you can do fast
> and offline queries against it.  If you don't sync, you'll have to
> rescan every time; sync'ing is just an optimization, and since it
> gets put it in a little database, it makes making queries etc much
> easier as another benefit.

I was thinking "sync local" re-gets the repository's Packages
master-list. Then you read in the locally installed ones (which is a
matter of traversing sys.path and looking for the .egg-info files; I
think those are now (as of 2.5) expected to be there.

All this has been done before; that's why I'm being so bone-headed about it.

> > D*mn. Right now you just serve your .../site-packages and you can
> > easy_install from it.
>
> I haven't seen that done, but since eggs in uninstalled and installed
> form are the same, it should be easy.

I think easy_install -f <url> can work against an Apache directory
index. I thought that was the whole point behind it, really.

-- 
Luis "Bone-headed describes me so well" Bruno


More information about the Distutils-SIG mailing list