[Distutils] how to easily consume just the parts of eggs that are good for you

David Cournapeau david at ar.media.kyoto-u.ac.jp
Mon Apr 14 02:25:32 CEST 2008


Gael Varoquaux wrote:
>
> 90 % (at least) of the world does not have such database. I, and probably
> you, have such a very nice database. I works well, and we can choose to
> forget the problems our users are facing. It does not solve them though.
>
> In addition, packaging is system-specific. I recently had to learn some
> Debian packaging, because I wanted my Ubuntu and Debian users to be able
> to use my projects seamlessly. What about RPMs for RHEL, Fedora,
> Mandriva? ... and coronary packages? and MSIs? ... When do I find time to
> do development if I have to learn all this packaging.

There is no way around it: you have to learn about them. It is a PITA, 
but there is a limit of what a tool can do, specially for things like 
installers. I agree it would be fantastic to have an abstraction on all 
those packaging systems, but I don't think it is possible without a huge 
amount of work if at all. Deploying softwares is simply a very big 
problem that won't go away magically, even if eggs were perfect and 
nobody would complain about it. I strongly believe it is one of the 
reason why windows has been so popular: instead of targetting many 
combinations, you target windows, which does everything you ever need to 
do, and MS kind of guarantee that something which works today will still 
work in ten years.

The only reliable way to handle dependencies if you don't have huge 
ressources is to bundle everything; IOW, not handling them. That's how 
most softwares work anyway on mac os X and windows: matlab for example 
is a huge thing with hundred of MB; most softwares do not depend on 
something else except the OS, which is a much more known thing on mac os 
X and windows than on linux. If you want to update a small part of it, 
life is tough, you upgrade everything. Of course, part of the thing is 
that it brings more revenue to mathworks, but I don't think it is the 
only reason. I also know some open source projects which do the same 
because they simply cannot track api changes (ardour, for example: if 
you build ardour from sources, you will get a private copy of the whole 
gtk stack).

cheers,

David


More information about the Distutils-SIG mailing list