I often find myself in the situation that I install a bunch of packages for a specific task or project. E.g. some -devs to compile an app, or a couple of sound editors to find out which one's best. When the project is done or no longer relevant I want to get rid of all the cruft I installed for it. I tried building custom empty dependency packages for this purpose with equivs, but that's pretty cumbersome. So, what if aptitude would have the ability to build custom tasks, not unlike the standard Debian tasks in that they act like empty packages depending on a bunch of stuff. You would probably go into some kind of "build task" mode, and then all the packages you install are added to the tasks dependencies, all the deinstalled ones go into conflicts. Those packages should NOT change their "automatic" status. Uninstallation of the task will free the packages which were automatically installed for removal as well. As a side benefit the task serves as documentation when one is faced with the question: "Why did I (or my co-admin) install this package in the first place?"
On Fri, Jun 07, 2002 at 05:35:26PM +0200, Robert Bihlmeyer <robbe@orcus.priv.at> was heard to say: I actually added this (or a rough equivalent) to my personal todo a few weeks ago..but I've been working on other stuff and neglecting aptitude lately. My initial idea for the UI was something like: aptitude install --with-tag foo bar baz ... and anything listed on the command-line to be installed would have the "foo" tag set on it. (actually, that could be "anything listed on the command line, as well as automatically installed packages ---- but I think it's more useful to just tag stuff listed on the command-line) Tags would be used through a package pattern. Extending that to the "graphical" interface could be done in a couple ways -- your suggestion is one of them. Anyway, I have the same problem, and I like your suggestion. Daniel
merge 149311 497642 665824
retitle 149311 aptitude: add/remove/browse user-tags in curses interface
thanks
Hello
We have user-tags which cover all three requests.
At the moment these can only be set from the command-line but you can
query them interactively ("?user-tag(foo)").
When they can also be added and removed interactively then I will
consider these bugs dealt with. Also possible is extended support for
browsing/grouping by user-tag.
Examples:
# aptitude install --add-user-tag william-debian-packaging-tutorial
build-essential devscripts debhelper
# aptitude search '?user-tag(william)'
# aptitude install --add-user-tag william-debian-packaging-tutorial cdbs
...
[Note that there is no --purge, you are actually using --purge-unused here]
# aptitude purge --purge-unused '?user-tag(william-debian-packaging-tutorial)'
It could be useful to remove the user tag at the same time:
# aptitude purge --purge-unused --remove-user-tag
william-debian-packaging-tutorial
'?user-tag(william-debian-packaging-tutorial)'
And you can add the tag to any packages you already installed:
# aptitude add-user-tag build-essential devscripts ...
Regards