On Fri, 30 Aug 2002, Michael G Schwern wrote: >>I would question whether packlists are the thing to use in 'make >>uninstall'.
>It's sort of silly to require that you have a copy of the source >code in order to uninstall a module. I am not sure that it is silly. It seems to be the convention to do things this way: for example when installing a GNU package there may be a 'make uninstall' but there is no way to automatically remove the package without having the source code. If you do want the ability to uninstall then you use a package manager such as RPM, or such as GNU Stow, or any of the dozens of other packaging/uninstallation systems. The question is: should there be uninstall functionality with the package, which risks reinventing the wheel, or should it be up to the user to use whatever packaging tool he wishes, which risks annoying those users who don't want to bother with extra tools. (It starts to get hairier when you have upgrades from one version of a module to a later version, or configuration files which should not be changed during such an upgrade, or files shared between two different packages. Fortunately such issues don't usually come up with Perl modules (so far), but they are bread and butter for programs like rpm.) A compromise position is to not create any uninstall mechanism which requires storing packlists, but do have a 'make uninstall' since that comes for free once you have 'make install'. As I mentioned this is what many other programs seem to do. >Having a "make uninstall" target wouldn't be the canonical way to >remove a module, simply a way to address the "Shit! I didn't mean >to install that there!" problem. It needs to be decided: should there be a canonical way to remove a module? And I think my answer would be, once there is a way to type 'perl-uninstall' and have perl5 automatically remove itself from the system, we must have the same functionality for modules. But until that day there is no real need to implement an uninstaller, particularly as unused Perl modules lying around are no real hazard. >So you still need some sort of list of what's installed in order to >uninstall things once the original source tarball is gone. Assuming that this ability is a required feature, which I question. >Why don't you just run from the assumption that packlists aren't >such a hot idea And I thought I was doing such a good job of hiding my true feelings about packlists :-). >and implement something else? Probably do it with Module::Build as >I have no plans to do any significant changes to MakeMaker. If you are saying that MakeMaker will not get a fancy packlist-based uninstaller, then there is no reason not to rip out packlists now. Or at least quietly ignore them in new code. -- Ed Avis <[EMAIL PROTECTED]>
