I've just tried to create a wininst based version of my packages. The installer works great except for a few nits: * the text box showing the description could be wider * no documentation files are installed -- is there a way to get those installed somewhere * the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ? * the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have) Any hints ? -- Marc-Andre Lemburg ______________________________________________________________________ Company: http://www.egenix.com/ Consulting: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/
these aren't bdist related, but general features i'd like to see included with distutils (at some point) :]
* no documentation files are installed -- is there a way to get those installed somewhere
mmm, a python standard location for documentation would be a big help. all my docs are currently in HTML, but i'm sure many people are using a variety of formats. nonetheless, if python had a standard format/location for documentation i think the all users would benefit. perhaps distutils laying out some sort of resonable standard on its own would be enough to get the whole community to adopt it? (of course, some documentation browsing tools in python would be a nice followup)
* the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have)
i was recently noticing some sort of "uninstall" would be a handy feature from the commandline. technically, i would assume distutils could take the list of files to install and simple erase the files instead. then if the containing folder was empty, remove the folder. anyways, back to the bdist specific issues
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ?
distutils on windows always installs to this directory. bdist or otherwise. i don't see any need for change?
Pete Shinners wrote:
these aren't bdist related, but general features i'd like to see included with distutils (at some point) :]
* no documentation files are installed -- is there a way to get those installed somewhere
mmm, a python standard location for documentation would be a big help. all my docs are currently in HTML, but i'm sure many people are using a variety of formats. nonetheless, if python had a standard format/location for documentation i think the all users would benefit. perhaps distutils laying out some sort of resonable standard on its own would be enough to get the whole community to adopt it? (of course, some documentation browsing tools in python would be a nice followup)
Right. I'd suggest to take Martin's approach on Unix and a distutils convention on Windows (e.g. \Python\Site-Docs).
* the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have)
i was recently noticing some sort of "uninstall" would be a handy feature from the commandline. technically, i would assume distutils could take the list of files to install and simple erase the files instead. then if the containing folder was empty, remove the folder.
Right, this should work. The install process would have to keep a list of installed files in some standard location (and for each package) though.
anyways, back to the bdist specific issues
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ?
distutils on windows always installs to this directory. bdist or otherwise. i don't see any need for change?
See my other post. I don't really think that extensions should go into \Python directly; a directory like the one on Unix would be better, e.g. \Python\Site-Packages, IMHO at least. -- Marc-Andre Lemburg ______________________________________________________________________ Company: http://www.egenix.com/ Consulting: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/
I've just tried to create a wininst based version of my packages. The installer works great except for a few nits:
* the text box showing the description could be wider Probably the text shown in this box should be reformatted by bdist_wininst to better fit in the box... Currently the 'packager' has to do it manually.
* no documentation files are installed -- is there a way to get those installed somewhere wininst follows distutils very closely and does not care about this.
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ? This is the standard on windows. \Python20\Lib is treated as location for modules belonging to core python. Note that this behaviour has one serious consequence: Since the distutils distributed with python are in \python20\lib\distutils, and installing a new version of distutils will install in \python20\distutils, and c:\python20\lib appears in sys.path *before* c:\python20, it requires special actions to actually *use* this newly installed distutils: The user has to delete or renamed or otherwise disable the directory \python20\lib\distutils. * the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have) This is something I have in my mind for a long time, but since distutils itself does not care about uninstalling I've never done it. The hooks are all there in wininst: A callback is called for every action taken on the filesystem during installation. It would be easy to write a log file which could be used for uninstallation.
Any hints ?
-- Marc-Andre Lemburg
Regards, Thomas
Thomas Heller wrote:
I've just tried to create a wininst based version of my packages. The installer works great except for a few nits:
* the text box showing the description could be wider Probably the text shown in this box should be reformatted by bdist_wininst to better fit in the box... Currently the 'packager' has to do it manually.
* no documentation files are installed -- is there a way to get those installed somewhere wininst follows distutils very closely and does not care about this.
Some more testing with the generic distutils install command showed the same behaviour -- I think we have a problem in that area... after all, packages without documentation are not really all that useful.
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ? This is the standard on windows. \Python20\Lib is treated as location for modules belonging to core python. Note that this behaviour has one serious consequence: Since the distutils distributed with python are in \python20\lib\distutils, and installing a new version of distutils will install in \python20\distutils, and c:\python20\lib appears in sys.path *before* c:\python20, it requires special actions to actually *use* this newly installed distutils: The user has to delete or renamed or otherwise disable the directory \python20\lib\distutils.
Hmm, I think we should at least install the packages or modules in a special subdir of \Python -- we wouldn't want to clutter up the base installation directory with single modules or other third packages, or would we ?
* the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have) This is something I have in my mind for a long time, but since distutils itself does not care about uninstalling I've never done it. The hooks are all there in wininst: A callback is called for every action taken on the filesystem during installation. It would be easy to write a log file which could be used for uninstallation.
Would be "nice to have" for 2.1 ;-) A way to set the installer background bitmap and the one shown in the install dialog would also be nice :) -- Marc-Andre Lemburg ______________________________________________________________________ Company: http://www.egenix.com/ Consulting: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/
MAL wrote:
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ? This is the standard on windows. \Python20\Lib is treated as location for modules belonging to core python. Note that this behaviour has one serious consequence: Since the distutils distributed with python are in \python20\lib\distutils, and installing a new version of distutils will install in \python20\distutils, and c:\python20\lib appears in sys.path *before* c:\python20, it requires special actions to actually *use* this newly installed distutils: The user has to delete or renamed or otherwise disable the directory \python20\lib\distutils.
Hmm, I think we should at least install the packages or modules in a special subdir of \Python -- we wouldn't want to clutter up the base installation directory with single modules or other third packages, or would we ? IIRC there has been some discussion about this in the archives, and the current scheme was what Guido wanted.
* the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have) This is something I have in my mind for a long time, but since distutils itself does not care about uninstalling I've never done it. The hooks are all there in wininst: A callback is called for every action taken on the filesystem during installation. It would be easy to write a log file which could be used for uninstallation.
Would be "nice to have" for 2.1 ;-) A way to set the installer background bitmap and the one shown in the install dialog would also be nice :)
What's the exact schedule for 2.1? I have implemented a '--bitmap' option for bdist_wininst, which allows to replace the 'python powered' bitmap with a custom one. I'm not yet convinced that we need a way to change the background bitmap because there isn't any ;-) Would you like to test it? Shall I send you a windows installer for this patched distutils version? I fear the uninstaller would take a little longer... Thomas
Thomas Heller wrote:
MAL wrote:
* the installer install directly into \Python20 -- shouldn't it install to \Python20\Lib ? What's the standard here on Windows ? This is the standard on windows. \Python20\Lib is treated as location for modules belonging to core python. Note that this behaviour has one serious consequence: Since the distutils distributed with python are in \python20\lib\distutils, and installing a new version of distutils will install in \python20\distutils, and c:\python20\lib appears in sys.path *before* c:\python20, it requires special actions to actually *use* this newly installed distutils: The user has to delete or renamed or otherwise disable the directory \python20\lib\distutils.
Hmm, I think we should at least install the packages or modules in a special subdir of \Python -- we wouldn't want to clutter up the base installation directory with single modules or other third packages, or would we ? IIRC there has been some discussion about this in the archives, and the current scheme was what Guido wanted.
This doesn't seem right... simply dropping modules or packages into \Python will sooner or later cause trouble.
* the installer doesn't register itself in the Windows Software registry -- an uninstall is not possible (this would be *very* nice to have) This is something I have in my mind for a long time, but since distutils itself does not care about uninstalling I've never done it. The hooks are all there in wininst: A callback is called for every action taken on the filesystem during installation. It would be easy to write a log file which could be used for uninstallation.
Would be "nice to have" for 2.1 ;-) A way to set the installer background bitmap and the one shown in the install dialog would also be nice :)
What's the exact schedule for 2.1?
Last I heard, alpha 1 will ship tomorrow.
I have implemented a '--bitmap' option for bdist_wininst, which allows to replace the 'python powered' bitmap with a custom one.
Cool.
I'm not yet convinced that we need a way to change the background bitmap because there isn't any ;-)
Ok, but at least the text should be changeable :) Bitmaps would still be nice, though.
Would you like to test it? Shall I send you a windows installer for this patched distutils version?
Yes, please.
I fear the uninstaller would take a little longer...
... as long as it's there by the time people will want to deinstall a package, I don't think we have a problem ;-) -- Marc-Andre Lemburg ______________________________________________________________________ Company: http://www.egenix.com/ Consulting: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/
participants (3)
-
M.-A. Lemburg
-
Pete Shinners
-
Thomas Heller