Gentoo Housekeeping

You should occasionally execute this command pipe and review the ouput. On my box I see something like this:

# equery -N l | egrep ' \[M'
[I--] [M ] app-crypt/gpgme-0.4.0 (0.4)
[I--] [M ] app-editors/emacs-21.4-r1 (21)
[I--] [M ] app-editors/xemacs-21.4.12 ()
[I--] [M ] app-text/docbook-sgml-dtd-4.2-r1 (4.2)
[I--] [M ] app-text/xmlstarlet-0.9.1 (0)
[I--] [M ] dev-lang/php-4.4.2-r6 (4)
[I--] [M ] dev-perl/Audio-Wav-0.02 (0)
[I--] [M ] dev-perl/Class-MethodMaker-2.07-r2 (0)
[I--] [M ] dev-perl/Data-Dumper-2.101 (0) 
[I--] [M ] gnome-extra/at-spi-1.1.8 (0)
[I--] [M ] gnome-extra/libgail-gnome-1.0.2 (0)
[I--] [M ] media-sound/mp3splt-1.9 (0)
[I--] [M ] sys-apps/fileutils-4.1.11-r1 (0)
[I--] [M ] sys-apps/setserial-2.17-r2 (0)
[I--] [M ] sys-apps/sh-utils-2.0.15 (0)
[I--] [M ] sys-libs/gpm-1.20.1 (0)

This usually is the result of some package not being recorded the “world” file for whatever reasons and during the runtime of the system hasn’t received any updates or have been declared obsolete in the portage tree. For instance dev-perl/Data-dumper has been completely removed from the portage tree. The php version in the listing is obsolete and for other packages there are updated versions available.

Another good idea might be to run the pipeline and review the output as well

equery -N  l | egrep '~\] '

This would list the packages you have installed which were installed when they were in the state of “testing” in the portage tree. In the meantime, a particular package might have been declared “stable” or you actually don’t want to install any newer “testing” versions for that package. This would allow for some cleanup of the /etc/portage/package.keywords file.