DebianThis forum is for the discussion of Debian Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
When ever I attempt to install a package, I am prompted with a warning in CLI that tells me that I no longer need specific files / packages and to run a specific command to flush them from my system however as I look - many are critical packages I don't want to lose and I don't understand why Debian is trying to remove them from my system. For example gnome* is not something I want to remove from my workstation - it is my only installed WM.
Distribution: Debian /Jessie/Stretch/Sid, Linux Mint DE
Posts: 5,195
Rep:
Autoremove is one of the least understood options in Debian I think it were better if it had not been included in apt.
If you do autoremove apt will remove those packages (duh!), but it is easy to re-install what you are missing. The configuration is not touched as you know. Have done it several times.
Autoremove is one of the least understood options in Debian
All due respect, but I think it's perfectly understood (though not universally popular). Imagine you tell apt-get to install package blah, and it drags in packages yada, yada and yada as dependencies. Then later you ask apt-get to remove blah. Autoremove will nudge you to remove the dependencies blah, blah and blah as well (assuming that they aren't also dependencies of any other packages that you installed later). That's it. No muss, no fuss.
I think that aptitude keep-all clears the "to be removed" markers from all packages currently installed, so that should shut up autoremove easily. However, another way to do it is simply remove all those packages and then install the ones you actually want manually. Some people find this inconvenient, but I like a leaner system.
Distribution: Debian /Jessie/Stretch/Sid, Linux Mint DE
Posts: 5,195
Rep:
Quote:
Originally Posted by Telemachos
All due respect, but I think it's perfectly understood (though not universally popular). Imagine you tell apt-get to install package blah, and it drags in packages yada, yada and yada as dependencies. Then later you ask apt-get to remove blah. Autoremove will nudge you to remove the dependencies blah, blah and blah as well (assuming that they aren't also dependencies of any other packages that you installed later). That's it. No muss, no fuss.
I was exaggerating... but seriously, it is not logical what is being proposed, and I don't quit get what you say.
You say: install blah, and yada1, yada2 and yada3 are being installed because blah depends on them. When I install blah, I expect to be offered to remove yada1, yada2 and yada3. Because those are reverse dependencies. (Other packages depends on them, namely blah). But I don't see why I am offered to remove blah1, blah2 and blah3.
When I change my understanding slightly I assume that blah1, blah2 and blah3 depend on blah. When I remove blah, I am offered to remove blah1, blah2 and blah3. Also not very clever, because blah1..blah3 could have been installed because of package yada. When I agree to autoremove blah1..blah3, I would lose yada as a result from that. Not logical either.
Reinstalling the wanted packages again after an autoremove indeed guarantees the leanest system.
You say: install blah, and yada1, yada2 and yada3 are being installed because blah depends on them. When I install blah, I expect to be offered to remove yada1, yada2 and yada3. Because those are reverse dependencies. (Other packages depends on them, namely blah). But I don't see why I am offered to remove blah1, blah2 and blah3
Huh? Either I was unclear or you misunderstood me or both. Let me try again.
I enter apt-get install slrn and APT says, "Fine, you can have slrn, but I also need to install libslang2 because it's required dependency." I do that and use slrn happily for a few months.
Later, I decide to uninstall slrn. At that point, apt-get says, "Fine, I'll remove slrn, but I recommend that you autoremove libslang2 also. I only installed it because of slrn, so if you don't want slrn, you don't need libslang2 any more."
That's all autoremove does. It tries to remove packages that were only installed as dependencies once you've removed the packages they depended on. I don't see what's illogical about that. Why would I want a library or helper program for a package I've uninstalled?
The problem in Carlos' case is that he installed Gnome using a meta-package and then removed one of the pieces or the meta-package wrapper. Since every package in the meta-package is a dependency of the main one, autoremove proceeds in a straight line and says, "Remove them all." This particular case has more to do with meta-packages than autoremove.
Distribution: Debian /Jessie/Stretch/Sid, Linux Mint DE
Posts: 5,195
Rep:
Quote:
Originally Posted by Telemachos
I enter apt-get install slrn and APT says, "Fine, you can have slrn, but I also need to install libslang2 because it's required dependency." I do that and use slrn happily for a few months.
Later, I decide to uninstall slrn. At that point, apt-get says, "Fine, I'll remove slrn, but I recommend that you autoremove libslang2 also. I only installed it because of slrn, so if you don't want slrn, you don't need libslang2 any more."
That's all autoremove does. It tries to remove packages that were only installed as dependencies once you've removed the packages they depended on. I don't see what's illogical about that. Why would I want a library or helper program for a package I've uninstalled?
That is according to my second understanding, and as you picture it here, it would have the desired effect. But this is a simple case.
Quote:
Originally Posted by Telemachos
The problem in Carlos' case is that he installed Gnome using a meta-package and then removed one of the pieces or the meta-package wrapper. Since every package in the meta-package is a dependency of the main one, autoremove proceeds in a straight line and says, "Remove them all." This particular case has more to do with meta-packages than autoremove.
Quite possible, I think it works like that. But it is highly confusing. Should a package manager which uses meta packages extensively still try to guess what you can autoremove?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.