Web lists-archives.com

Re: How to >>COMPLETELY<< remove an application?

On 03/08/2017 02:53 PM, Jimmy Johnson wrote:
On 03/08/2017 11:34 AM, Richard Owlet wrote:
On 03/08/2017 12:32 PM, Cindy-Sue Causey wrote:
On 3/8/17, Richard Owlett <rowlett@xxxxxxxxxxx> wrote:
I recently installed grml-debootstrap from a purchased DVD set of
Jessie(8.6.0). I have minimal available bandwidth so I install strictly
from DVDs.

I have discovered a potential bug for my specific use case and believe
I've narrowed the problem source to two specific files.

I have used script to record some of my test runs after I had edited the
files in question.

I wanted to record a test run duplicating the as originally installed
environment. I used Synaptic to remove the package - choosing the "Mark
for complete removal" option. It notified me that it would remove
configuration files which was why I chose that option.

I reinstalled grml-debootstrap from the same DVD set. I did a dry run
and got a quite different set of errors.

IIRC I've seen discussions about removing EVERYTHING related to a
package. I don't recall the details.

What is the most effective way to completely remove an application?

If all else fails, I can reinstall Debian completely to a new partition.
But I'd like to use this as an "educational" experience.

I use both "apt-get autoremove" and "apt-get purge" for package
removal. Purge is the one that FEELS LIKE it zaps everything,
configuration files and all, but I've never gone about it
scientifically to verify yay or nay for fact.

From "man apt-get":


           remove is identical to install except that packages are
instead of installed. Note that removing a package leaves its
           configuration files on the system. If a plus sign is
appended to
           the package name (with no intervening space), the identified
           package will be installed instead of removed.

           purge is identical to remove except that packages are
removed and
           purged (any configuration files are deleted too).


Ohhhh, and I learned something new today:


autoremove (and the auto-remove alias since 1.1)
autoremove is used to remove packages that were automatically
           installed to satisfy dependencies for other packages and
are now no
           longer needed.


I did not know that. I knew there was "remove" and "autoremove" but
had never pursued *why*. I started using "autoremove" after I kept
seeing apt-get proffer it.... for removal of packages that are no
longer dependencies for anything. So from now on... my opening
statement will be that I use "apt-get remove" and "apt-get purge".

Do Synaptic, Aptitude, and possibly anything else of that family have
similarly close but still different flags/commands?

Cindy :)

You got me looking at man-apt get.
It reminded me that I should clean my cache between test runs from a
repeatability perspective. It might explain some warning [rather than
error] messages I've gotten. I'm doing peculiar things, why shouldn't I
get peculiar messages.

Hi Richard,

First, unless you are using something older than Jessie you can use apt as in #apt update or #apt purge, apt-get is no longer needed.

Second, there is a command line package named "upgrade-system" that uses apt and deborphan, it will update, upgrade, autoremove and check for orphaned packages with the one command. On a Stable system let 'upgrade-system' have it's way, it's safe and will remove your crud, but on testing and Sid check what packages it's going to remove just like you would with any other package manager and if your not sure use 'gtkorphan' so you can see what you're doing.

So you could #apt purge 'package name' && upgrade-system
All done.


Not having known about upgrade-system, this seemed like something that I should look into, so I installed it.

Since I am running a 'stable' system I let it run. It updated the package lists and upgraded 10 packages. So far, so good. Then it ran deborphan (I guess) and wanted to remove 170 packages. Despite the suggestion that this was safe on a stable system, I perused the packages to be removed. These included sysvinit*! What! That would have removed sysvinit, sysvinit-core, and sysvinit-utils. Since I am still (obvously) running sysv as my init system, this would have been a BAD THING and NOT a Good Thing! This would have removed my init system! Presumably, it would then have installed systemd. This would also have been a BAD THING! So I said 'No' to that. It then proceeded to clear my apt cache archives completely. This is something that I never do, and would have told it not to do if it had asked me. It did not ask, it simply deleted everything in /var/cache/apt/archives!

I'll be deleting that package. I can run 'apt update' and 'apt upgrade' perfectly well and feel safer about what is happening on my system.