www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/10/15/05:48:14

Date: Thu, 15 Oct 1998 12:46:57 +0300 (IDT)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: Endlisnis <s257m AT unb DOT ca>
cc: djgpp AT delorie DOT com
Subject: Re: Uninstaller.
In-Reply-To: <3625065F.1BB892DC@unb.ca>
Message-ID: <Pine.SUN.3.91.981015124620.15214N-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com

On Wed, 14 Oct 1998, Endlisnis wrote:

> mine, you get a list of application names (from the ver files).
> With rm, after to uninstall everything, you are left with a
> directory skeleton; mine gets rid of the directories as well.

This is easy to do with `rm' as well: just add -r to the options:

	     rm -rvf @manifest/foo.mft

But beware: if a package's manifest file includes a name of a
directory, and that directory is not exclusively for that package, you
end up removing other files as well!  For example, here is a fragment
of the Groff manifest file:

	share/
	share/groff/
	share/groff/tmac/
	share/groff/tmac/hyphen.us
	share/groff/tmac/tmac.andoc

If you use "rm -rvf", you end up deleting everything in %DJDIR%/share
and the share directory itself, which will nuke all the files of the
other packages inside share.  Since many DJGPP packages include
directory names in the manifest files (the manifest files are
generated by running the GNU `find' utility, which by default lists
directories as well), it is IMHO *extremely* dangerous to remove
directories when uninstalling.

So if you really want to remove directories (I'm not sure this is so
important, btw), then you need to be smart about it.  For example,
defer removing them until the very end, and if the directory isn't
empty, either ask the user or skip removing it (and possibly print a
suitable message).

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019