|
Rationale
For example, Steve installed ubuntustudio-audio with synaptic and want to remove all of it, because his applications menu is cluttered with lots of entries. However, an "apt-get remove --purge ubuntustudio-audio; apt-get autoremove" does not do the job.
For example, Tasha followed instructions from a forum and installed ubuntustudio-audio to get audacity and lilypond, and now realizes she doesn't need the whole metapackage, but only wants a couple apps.
For example, Joe installed juniour-games-gl for his son. The son played the games for a while, and after getting bored of it, Joe deinstalled juniour-games-gl and also called apt-get autoremove. However, still the packages blt, tcl8.5 and tk8.5 remain on his computer, although they have not been installed before.
What logic can be used to avoid tediously wading through lists of packages (the way debfoster does)?
Tags:
(none)
|
|
Propose your solution
Attachments
No attachments.
Duplicates
Comments
cheesehead
(Brainstorm moderator)
wrote on the 21 Aug 09 at 12:57
|
|
|
Ubuntustudio-audio has 56 direct dependencies, The other 415 should be autoremovable after those 56 are removed.
You can easily manage metapackages in Synaptic using a custom filter:
Settings-> Filters -> New
Properties Tab -> New -> Dependencies Include
|
|
|
@cheesehead
I installed Ubuntu into a virtual machine and then installed the metapackage "ubuntustudio-audio". Now I want to uninstall it. First I just ticked the entry in Synaptic and clicked on "Remove". As expected, only the package "ubuntustudio-audio" has been deleted, all the other stuff comming with that package remained installed. Next I quickly reinstalled "ubuntustudio-audio", created the custom filter as you described and tried to uninstall ubuntustudio-audio. But _only_ ubuntustudio-audio has been deleted, the packages comming with it are still installed. This didn't work for me.
|
cheesehead
(Brainstorm moderator)
wrote on the 22 Aug 09 at 23:34
|
|
|
The filter will show you the dependencies, but not click them for you. You must click to uninstall each one, or group them all using shift+click at the top and bottom of the list.
I recommend doing each one, and committing after every 10 or so...several packages may be dependencies of other items in your system that you wish to keep.
That's a shortcoming of a GUI method, it's often easy to understand, but not necessarily the fastest or easiest to do something complicated.
You can also use terminal:
$ apt-cache show ubuntustudio-audio | grep Depends: | sed -e s/,//g -e s/Depends:\ //
aconnectgui alsa-tools alsa-tools-gui ardour audacious audacious-plugins-extra audacity beast bitscope bristol creox csound denemo ffado-dbus-server ffado-mixer-qt4 ffado-tools fluid-soundfont-gm fluidsynth freebirth freqtweak gcdmaster genpo gtick hydrogen jack-rack jack-tools jackbeat jackd jackeq jamin jdelay lilypond lilypond-data lmms meterbridge mixxx mscore muse patchage puredata qamix qjackctl qsynth seq24 shaketracker sooperlooper swami terminatorx timemachine timidity tk707 ubuntustudio-controls vkeybd zynaddsubfx python-changesettings
$sudo apt-get remove [paste list]
|
|
tillmo
wrote on the 23 Aug 09 at 16:05
|
|
|
The filter you propose does not work, because "Dependencies Include" selects all packages that depend on ubuntustudio-audio. You need to use "Dependent Packages Include" instead to get the packages that ubuntustudio-audio depends on. Then you have to select the first package, press shift-end in order to select all these packages. Then with a right mouse click, you mark the packages for (complete) removal. Then select Apply. Then select "Status" and "Installed (auto removable)" at the left bar. Again remove all packages with shift-end, right-click and apply.
But still, I cannot find this an acceptable solution, because:
1) The procedure is quite complicated (even when explaining it here, you mixed up "dependencies" with "dependent packages", which will happen to others, including myself, too)
2) More severely, the procedure does not work for e.g. planetpenguin-racer. With the described filter, synaptic displays a lot of libraries and even gimp! One definitely does not want to deinstall these when deinstalling planetpenguin-racer. By contrast, debfoster does exactly the right thing. It displays:
planetpenguin-racer is keeping the following 2 packages installed:
planetpenguin-racer-data planetpenguin-racer-extras
and then asks you whether you want to keep planetpenguin-racer, and if you don't, you are asked in turns whether you want to keep planetpenguin-racer-data and planetpenguin-racer-extras. However, this gets very tedious if a large number of packages are involved (there is no "shift-end" option...).
|
cheesehead
(Brainstorm moderator)
wrote on the 25 Aug 09 at 23:13
|
|
|
Okay, so please clean up all these comments into a couple of use cases, and edit your rational and solution to include them - many brainstorm users don't read the comments.
For example, Fred installed ubuntustudio-audio as part of an installation, and wants to remove all of it without reinstalling.
For example, Joe installed ubuntustudio-audio after a drunken dare involving Synaptic, and has next-day remorse, and wants to remove all of it.
For example, Tasha followed instructions from a forum and installed ubuntustudio-audio to get [application], and now realizes she doesn't need the whole metapackage, but only wants a couple apps.
What logic can be used to avoid tediously wading through lists of packages (the way debfoster does)?
|
|
Akerbos
wrote on the 26 Aug 09 at 05:21
|
|
|
The usual Linux way would be to give the user what he asks for: remove them all.
But, a tool could analyze dependencies among the packages selected for removal. To warn a user of possible harm, it would only consider dependent packages outside the set of selected ones. This way, you can deinstall the largest set of packages that has no impact on the system when missing. For the conflict packages, provide the options "Remove them and their dependent packages, too" and "Keep them"
|
Post your comment
|