[Distutils] [Python Language Summit] Distutils / Packaging survey

zooko zooko at zooko.com
Wed Jan 28 18:03:42 CET 2009

Yesterday I spoke to a couple of hackers who use my allmydata-tahoe  
project, which is packaged with setuptools.  They complained about  
setuptools getting in their way, and I asked them each to name their  
top two complaints.

The first hacker, David, said:

David 1.  He can't easily install eggs into an arbitrary directory.   
Setuptools yells at him loudly when he tries.  .pth files work only  
in magical directories.  easy_install.pth makes it impossible to use  
GNU stow.  site.py should just just look for .eggs in all directories  
on sys.path.

David 2.  entry_points doesn't work when the svn checkout is just in  
PYTHONPATH or ".", and fails if there is a non-existent directory on  

The second hacker, Nathan, said:

Nathan 1: You cannot easily install in a non-standard location like / 

Nathan 2: You cannot uninstall.

Both David's and Nathan's first desire would be somewhat improved by  
my patch http://bugs.python.org/setuptools/issue54 (be more like  
distutils with regard to --prefix=).  Both of them would be *more*  
improved by my proposed extension to the standard Python import  
mechanism: "how to easily consume just the parts of eggs that are  
good for you" [1] (which is exactly what David suggested, except he  
suggested site.py do that instead of python importer doing it).

David's second problem I don't understand.  Perhaps it is a bug in  

Nathan's second problem -- you can't uninstall -- is widely known.   
Note that using GNU stow is one excellent solution to this problem,  
so perhaps if the first problem were solved then we would have  
another tool against the second.  Also, most users of setuptools  
don't seem to realize that they can uninstall almost everything  
(everything except scripts) simply by removing the .egg.

I see that PJE has replied to http://bugs.python.org/setuptools/ 
issue54 .  I'll follow-up on that ticket.



[1] http://mail.python.org/pipermail/python-dev/2008-March/078243.html
Tahoe, the Least-Authority Filesystem -- http://allmydata.org
store your data: $10/month -- http://allmydata.com/?tracking=zsig

More information about the Distutils-SIG mailing list