[Distutils] Header installation

Moore, Paul Paul.Moore@uk.origin-it.com
Thu Mar 29 07:47:01 2001


From: Thomas Heller [mailto:thomas.heller@ion-tof.com]
> > The wininst installer is hackable, as it is basically
> > an exe prepended onto a zip file, so I can unzip the
> > distribution wherever I like. But I wish I didn't need
> > to do this. OTOH, I don't want my Windows "add/remove
> > programs" applet cluttered with loads of Python modules,
> > either (which I believe is also something the wininst
> > installer does).
>
> Only in the newest version (1.0.2pre, as in python2.1b2)
> the module is added to the add/remove programs list. Of
> course I could include a flag into the installer to let
> the user decide whether to record deinstall information,
> but normally this is not decided by the poor user. IMO
> most Windows installers are already asking questions where
> no one can provide the correct answer (You have already
> installed xxx.dll in anther language and in another
> version. Would you like it to be replaced?)

Agreed, I know of no other installer which offers the option to not set up
uninstall info. On the other hand, I know of no other case of "parts" of a
system having separate installers, so there's not much precedent. I have 17
or so modules - which would be half as many again entries in my add/remove
programs...

In the absence of a Python-specific "installed modules" repository (which I
actually think would be a better approach), I don't see much reason to
change from the Windows uninstall facility. But maybe having the description
*always* start with "Python -" (for example "Python - Numeric", "Python -
wxPython") would at least keep them together.

> >  So personally, I would prefer to just have a zip which
> > I could install myself...
>
> Since the installer is an exe prepended onto a zip file
> (as you noted), Winzip is happy to open and extract it as
> a zip file. Maybe if this fact would be documented better,
> it could come to rescue for the 'expert' user who has his
> own opinions about the install location, uninstall, and so
> on.

If that is guaranteed to remain the case, then yes it should be documented.

> > Two questions - is the bdist_zip option functional
> > (no time to try it just now)? And how can we persuade
> > package authors to provide a bdist_zip version of their
> > packages as well as an installer version?
>
> Last time I checked, 'bdist --formats=zip' creates
> a zip-file with pathnames relative to the root
> directory 'python20/package/module.py' or even
> worse 'Program Files/python/package/module.py' or
> 'Programme/python/package/module.py' depending on where
> your python is installed.

That's roughly what I remembered - and in my opinion that counts as "broken"
:-(

If format=zip remains broken, while format=bdist_wininst is working, zip
format will fall into disuse, to the extent that developers will not even
think of it - and so the only binary distributions available will be
installer-based :-( (Note: I don't have a problem with installers being
available, just with them being the only thing available).

> > (Sorry - I HATE installers, and particularly so when I
> > have no way of controlling or limiting what they do...)
>
> This is (mostly) true for any installers I know. (OK, the
> install location is normally changeable...)

True. Actually, what I hate with a vengeance is installers which don't tell
you what they *do*. Do they just install files in the application directory?
Do they add entries to the registry? Install files in the Windows directory?
What?

Can I ask that somewhere, the full details of exactly what the wininst
installer does and does not do, be documented. What it doesn't do is at
least as important as what it does. No hidden magic! (And yes, I know
there's always the source. But sources can change - documentation is a
contract, which doesn't get violated.)

Paul.