Orphan Search

Bug #17297 reported by John Moser
36
This bug affects 2 people
Affects Status Importance Assigned to Milestone
synaptic (Ubuntu)
Confirmed
Wishlist
Unassigned

Bug Description

Synaptic should be able to search for "orphans" and list installed but not
depended on packages for quick and dirty cleanup. This can currently be done by
using deborphan, cut and paste, and apt for abot 20-30 minutes.

Revision history for this message
Michael Vogt (mvo) wrote :

Thanks for your bugreport.

This is already implemented. Please install deborphan and add a filter that
filters for the "orphan" status.

In the future synaptic will support a more inteligent way to tell about what
packages can be removed by keeping track about which packages are installed as
part of a dependency and which ones are installed by the user explicitly.

Cheers,
 Michael

Revision history for this message
John Moser (nigelenki) wrote :

"Orphaned" finds orphaned libs, but not orphaned packages like python-crap and
perl-crap. Try deborphan -a and you'll see a lot of stuff that you have to weed
through, for example:

main/text xsltproc

This is an orphan for me right now, but it doesn't show in synaptic no matter
what I do with the Orphaned box. It's not useful to me (what the heck is it?),
and nothing else relies on it. I should remove it.

Revision history for this message
Michael Vogt (mvo) wrote :

(In reply to comment #2)
> "Orphaned" finds orphaned libs, but not orphaned packages like python-crap and
> perl-crap. Try deborphan -a and you'll see a lot of stuff that you have to weed
> through, for example:

"deborphan -a" will give a lot of false positives. I don't think it should be
enabled by
default. One option would be to add a configuration parameter to synaptic that
allows to
pass any option(s) to deborphan.

I personally don't think that deborphan is the way forward. I think that adding
support
for automatic dependency tracking is the way forward. That means that any
dependency
that was installed will be removed again if it is no longer needed.

See http://udu.wiki.ubuntu.com/PackageDependencyManagement for details.

Revision history for this message
John Moser (nigelenki) wrote :

Careful with that. If I explicitly install something, it won't be depended on.

If you're talking about something like Gentoo's world file, which contains
everything the user explicitly installed, then yeah. Things that are
"installed" depend on other things. Currently, things that are "installed"
aren't a dependency (ubuntu-desktop for example isn't a dependency of anything),
and deborphan says they're orphaned.

Revision history for this message
John Moser (nigelenki) wrote :

Any status on this? I am still faced with having to remove things like -dev package that 'apt-get build-dep' and other oddities installed after a while; even after about 5 rounds of apt-get remove I'm faced with a lot of cruft:

bluefox@icebox:/tmp$ deborphan -a
main/gnome pitivi
main/shells dash
main/perl libxml-parser-perl
main/gnome libgbf-1-common
main/gnome xchat-gnome
main/utils units
main/gnome gnome-blog
main/libs gstreamer0.10-plugins-bad-multiverse
main/devel cdbs
main/web mozilla-firefox-locale-en-gb
main/gnome seahorse
main/net gaim-autoprofile
main/gnome rhythmbox-applet
restricted/base linux-amd64-generic
main/gnome ubuntu-calendar
main/graphics xine-ui
main/libs gstreamer0.10-gl
main/base ubuntu-standard
main/games filters
main/gnome gnome-art
main/net ifrename
main/admin laptop-mode
main/devel ddd
main/sound timidity-interfaces-extra
restricted/base linux-amd64-k8-smp
main/libs gstreamer0.10-sdl
main/libs libsafe
main/libs gstreamer0.10-plugins-bad
main/otherosfs wine
main/sound gtkpod
main/admin swapd
main/sound sox
main/net hping3
main/net gtk-gnutella
main/admin fuseiso
main/x11 libxmu-headers
main/gnome gparted
main/games corewars
main/graphics pngcrush
main/text ijsgimpprint
main/gnome planner
main/net gaim-meanwhile
main/admin pwgen
main/utils gpa
main/libs gstreamer0.10-plugins-ugly-multiverse
main/python python-gst
main/devel devscripts
main/gnome gwget
main/net openssh-server
main/games blast
main/games blobwars
main/base ubuntu-desktop
main/utils rats
main/games armagetron
main/net gaim-extendedprefs
main/x11 makedepend
main/mail procmail
main/devel devhelp-common
main/net gaim-themes
main/python python-gdchart
main/graphics mplayer
main/net gaim-guifications
main/base ubuntu-minimal
main/misc installation-report
main/sound lmms

I can't really pick these out and click off the ones I don't want. I have to do a lot of retyping.

Revision history for this message
John Moser (nigelenki) wrote :

Although, funny story about that, I ran the following to clean out the dev package but it took 4 or 5 rounds before it finished, and some general deborphanry to remove the extra libraries (i.e. anything not libsafe or gstreamer*):

$ sudo apt-get remove --purge `deborphan -a | grep '\-dev$' | awk '{print $2}'`

As for the list above, manually:

$ sudo apt-get remove --purge pitivi dash libxml-parser-perl libgbf-1-common cdbs ubuntu-calendar ifrename laptop-mode libxmu-headers ijsgimpprint python-gst devscripts blobwars armagetron makedepend procmail devhelp-common python-gdchart installation-report

Now I have a list of 61 to parse instead of 65.

Now a list of 48.

Now 47.

Now 47. A single new library is not needed.

Now 46, finally only things I want.

Revision history for this message
Michael Vogt (mvo) wrote :

We had a pretty good spec to automate this. Unfortunately it wasn't considered save for dapper so it wasn't implemented. See https://wiki.ubuntu.com/PackageDependencyManagement for details.

sorry,
 Michael

Revision history for this message
Michael Vogt (mvo) wrote :

The edgy version of synaptic support automatic tracking of packages that were installed as dependencies and will display packages that can be automatically removed in the status view (or via a filter). I consider this a better solution than using deborphan and if you agree I will close this bugreport.

Changed in synaptic:
status: Unconfirmed → Needs Info
Revision history for this message
John Moser (nigelenki) wrote : Re: [Bug 17297] Re: Orphan Search

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I suppose. Mine's empty though, aside from 4 linux-* things that it
says I can remove. As for deborphan:

bluefox@icebox:/tmp/x$ deborphan
libtasn1-2
gstreamer0.10-plugins-bad-multiverse
libgdk-pixbuf2
gstreamer0.10-gl
libquicktime0
gstreamer0.10-sdl
gstreamer0.10-plugins-bad
libefs1
libgnorbagtk0
gdk-imlib11-dev
libpisock8
libdmalloc4
gstreamer0.10-plugins-ugly-multiverse
liboobs-1-0
gstreamer0.10-pitfdll
libjessie-java
libhoard

I recognize a few things I installed (like hoard), a few things I didn't
(like liboobs). I'll probably go through wiping them out of existence
anyway.

.... and attempting that it suddenly tells me I can auto-remove the
newest kernel images available (2.6.17-8-generic), wow. A little buggy?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iQIVAwUBRRFawAs1xW0HCTEFAQKaGBAAhdP9+xeerDygMuHHSWGmtFgedxk8C5t7
nTNJMnr+4KHIubHyB8XourERlsKTBO673vkp9LASce9yqdCr8rrZ7u2xDF6G9xZK
8xe/GoS0Xg4cxi/I2N+cZTx+N7akgDAeJAi02DbLoCNwWDqRvg6vGbsPW0bsZnUf
MF9aoMkBqwU2dimtHpTb1ziEc+XtpXIaDSdXbORR42qLnWL5y7Vv6YsKZo1VqQKp
XBiTduBTgL9FaOlOT1kgTp36k4Np1tCYuxj/kX2GdvKz1bJWHD2qo539aNqOT1nF
SFJBC/Qai0wIGmFOM62JY0m2LuxgOWsengcVdOl4paorKPNVFIPTbf/N9Qa8wW/E
NHCs3cOzy82HDfkHJZz+oqnOQBIcHpQF6J4PMBSDUN0S6NQrziQW47JISK8Hb9tW
Cf3FRjMjaQaqGAnaR+NqNuPv3z7D8Y3bn5WmnqEApxB0+eYhoIFl9qcu69kyk1o4
SRaVykSDwFvv0zsaPKnLD5WCumT+L+khAn7FwcTVfjf/dVLSep+Vly8Rkm4ZZ5lE
Kr3E2LILtSVCZt45e5+3XVg5CGgRI303joFbRASSg+LsfT51vCmEqbeAtG8ZCNYs
vy30jG3qmRilASpT6GgGI4s1vsiPXiIsycX1Zo7Eg2znXO9gZxfIKhNNPDVVLLTG
Y6CNEDjjD1c=
=DyyT
-----END PGP SIGNATURE-----

Revision history for this message
John Moser (nigelenki) wrote :

A further look (deborphan -a) shows a ton of packages I installed myself as well, which I may want to remove. Games I no longer play, -dev packages, the fish shell.. things I have to clean up by hand, taking a lot of copy/paste in the shell.

Amusingly, users do want to mass-remove packages they installed once in a while. At least I do.

Revision history for this message
towsonu2003 (towsonu2003) wrote :

does the edgy version work for you?

Revision history for this message
John Moser (nigelenki) wrote :

I'm on edgy. Filters to list "orphans" still list the output of 'deborphan'.

Have you tried 'deborphan -a' to see if there's any packages you don't want installed that aren't on the auto-removable list?

Revision history for this message
towsonu2003 (towsonu2003) wrote :

On a fresh (just installed) edgy, auto-removable list is empty. deborhan -a lists the following:

main/base ubuntu-standard
main/net vsftpd
main/base linux-image-generic
main/base linux-image-2.6.17-7-generic
main/base ubuntu-desktop
main/base ubuntu-minimal
main/misc installation-report

the only thing I installed was vsftpd. the average user will not want to uninstall these, even by mistake, except vsftpd.

> Amusingly, users do want to mass-remove packages they installed once
> in a while. At least I do.

I don't think via using deborphan -a... But I see what you are trying to say I think. You want to see a list of files you installed to clean up the system. For that, I myself would like to see a field in synaptic filters such as "installed by user on top of base".

but I don't think it's a good idea to let synaptic use deborphan -a and give feedback to the user on the basis of its output. it's dangerous at best.

Revision history for this message
John Moser (nigelenki) wrote :

So is the regular orphan search (it lists gstreamer plug-ins I use).

I'm not worried about a fresh installed Edgy. Try it on a system you haven't reinstalled in a while. This isn't Windows, you don't have to re-install every 3 months to keep it working.

Revision history for this message
towsonu2003 (towsonu2003) wrote :

I see stuff like

main/editors openoffice.org
main/utils gconf-editor
main/admin language-selector
restricted/base linux-686
main/x11 x-window-system-core
main/gnome gnome-app-install
non-free/misc sl-modem-daemon
restricted/base linux-386
main/admin dhcdbd
main/base ubuntu-base

and so on. an average joe / jane wouldn't wanna see /play around w. these I think. but then again, I'm just a user. let's see what mr. Vogt thinks.

Revision history for this message
John Moser (nigelenki) wrote :

To get synaptic to show orphans, you have to add a filter. Follow these instructions:

- Start synaptic
- Proceed to Settings->Filters
- New filter
- Uncheck everything but "Orphaned"; if you leave anything else checked, then either nothing will show or every package available will show.
- View the filter under Custom Filters

I'm pretty sure we're talking about someone a little more advanced than Joe Mama is going to see.

Revision history for this message
Hervé Cauwelier (hcauwelier-deactivatedaccount) wrote :

My wishes about Deborphan and Synaptic:

- in the filter configuration, "Orphan" is split into "Orphan Libraries" and "Top-level packages";
- the "Orphan libraries" filter exists by default but is hidden while Deborphan is missing;
- installing Deborphan unveils this filter.

I'm not Joe Mama but I would like to save time in configuring Synaptic and saving space.

This is true the dependency tracking feature of Synaptic works quite well, but I require the verbosity of Deborphan in listing all packages not required by any one.

My Deborphan is currently listing 70 packages, maybe only one third of them is to remove, but Synaptic don't list them, like "libgsl0" or all "*-dev".

Michael Vogt (mvo)
Changed in synaptic (Ubuntu):
assignee: Michael Vogt (mvo) → nobody
status: Incomplete → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.