[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Location for user installed plugin libraries and icons

On 2021-05-07 at 16:47, Jon Gough wrote:

> On 8/5/21 12:17 am, Kris Deugau wrote:
>> Jon Gough wrote:

>>> Is there a process that allows the deb to 'clean up' the
>>> application when the application is uninstalled, in particular
>>> any 'install' artefacts that have been installed by plugins?
>> Not really.  The Firefox package, for instance, won't clear up the
>> leftover cache data, bookmarks, and other configuration from
>> users' $HOME when uninstalled - including things like addons the
>> user may have installed direct from the Mozilla addons site.
> Hi, So, any user installable application extension/plugin which has 
> executables and supporting data is left behind on the system when the
> owning application is removed or updated using the system
> installation process? This is accepted behaviour?

Yes. In fact, it's intended and desired behavior.

> Shouldn't applications clean up after themselves and not leave user
> systems with junk lying around?

In addition to what others have said:

Just because the user uninstalled the program now, doesn't mean they
don't plan to reinstall it (either from the package, or by compilation
from upstream, or by some other means) later on - or, for that matter,
install a fork that also knows how to use the same plugins.

If the user-profile installed data is big enough for cleaning it up to
be a meaningful gain, isn't it also big enough for redownloading it - to
say nothing of re-applying any local configuration settings that may
have been stored in it - to be a painful consideration?

For example, using the Firefox reference mentioned above, I have
frequently uninstalled one Firefox version and later installed another -
testing whether my local configuration is compatible with an upgraded
version, then reverting to the older version to continue day-to-day use
while I work to update the code for the newer version. That local
configuration includes quite a few Firefox extensions (i.e., plugins in
another sense), including one which I maintain locally for my own use.

If uninstalling the Firefox package deleted the user-profile Firefox
data, that would be much more difficult (because I'd have to back up the
user-profile Firefox data before uninstalling one version, and restore
the backup after installing the other), and the first time I did the
uninstall I'd have lost my Firefox configuration - which is sizable and
extensive, and whose roots date back literally decades. I would have
been furious beyond belief to have lost that data. (While I did have
backups I could have reverted to, not everyone will, and even in my case
they were at that point older than I'd have liked to have to use.)

There are certainly trade-offs about not permitting packages to touch
files in $HOME at install or uninstall time; the risk of leaving
unneeded cruft behind, as you cite, is one of them.

For my money, however, the risk of data loss from deleting something
that the user wanted to keep is enough by itself to outweigh the
possibility of cruft. The problems of not necessarily being *able* to
access $HOME at package uninstall time (if, for example, some users'
home directories are on a currently-not-accessible encrypted filesystem
or a currently-not-mounted network share) just add more justification on
top of that.

   The Wanderer

The reasonable man adapts himself to the world; the unreasonable one
persists in trying to adapt the world to himself. Therefore all
progress depends on the unreasonable man.         -- George Bernard Shaw

Attachment: signature.asc
Description: OpenPGP digital signature

Reply to: