Wie zeige ich alle installierten Pakete auf einem Gentoo-System, die mit emerge installiert wurden?

Wenn man mittels emerge Programmpakete auf einem Gentoo-System installiert, wird unter anderem ein Eintrag im so genanntenworldfile hinterlegt. Hierbei handelt es sich um eine Datei, welche alle jemals mit emerge installierten Programme auflistet, so dass man sich durch eine einfache Ausgabe dieser Datei sämtliche Programmpakte anzeigen lassen kann.

Das worldfile wird unter anderem auch vom Befehle emerge -u world ausgewertet, wenn alle installierten Pakete auf den neuesten Versionsstand aktualisiert werden sollen. Das worldfile lässt sich beispielsweise mit folgendem Befehl auslesen:

// Alle installierten Pakete anzeigen lassen

# less /var/lib/portage/world

app-admin/conky
app-admin/gkrellm
app-admin/logrotate
app-admin/metalog
app-admin/sudo
app-arch/gzip
app-arch/unrar
app-benchmarks/bashmark
app-cdr/cdrdao
app-cdr/k3b
app-cdr/nrg2iso
app-crypt/gnupg
app-crypt/gpgme
app-editors/bluefish
app-editors/gvim
app-editors/nano
app-editors/nvu
app-emulation/vmware-modules
app-emulation/wine
app-misc/gfontview
app-mobilephone/kmobiletools
app-mobilephone/obexftp
app-mobilephone/wammu
/var/lib/portage/world lines 1-23/181 12%

Suchen nach installierten Programmen

Um nach bestimmten installierten Paketen zu suchen, verwendet man einfach cat in Verbindung mit grep:

// Nach bestimmten installierten Paketen suchen

# cat /var/lib/portage/world | grep kde

kde-base/kcontrol
kde-base/kdebase-kioslaves
kde-base/kgpg
kde-base/konqueror
kde-base/kppp
kde-misc/krusader

In diesem Beispiel werden also alle KDE-Pakete aufgelistet, die auf dem System installiert sind.

Suche nach Kategorien

Alle Programme, die im Gentoo Portage zur Verfügung stehen, sind natürlich nach bestimmten Kategorien eingestuft worden. Die ebuilds (also die Installationsdateien von Programmen) befinden sich in einem bestimmten Verzeichnis unterhalb von /usr/portage, welche letztendlich die Kategorien widerspiegeln:

# ls /usr/portage/
app-accessibility  dev-ruby            media-gfx        sci-misc
app-admin          dev-scheme          media-libs       sci-physics
app-antivirus      dev-tcltk           media-plugins    sci-visualization
app-arch           dev-tex             media-radio      scripts
app-backup         dev-texlive         media-sound      sec-policy
app-benchmarks     dev-tinyos          media-tv         skel.ChangeLog
app-cdr            dev-util            media-video      skel.ebuild
app-crypt          distfiles           metadata         skel.metadata.xml
app-dicts          eclass              net-analyzer     sys-apps
app-doc            games-action        net-dialup       sys-auth
app-editors        games-arcade        net-dns          sys-block
[...]

Editoren befinden sich logischerweise im Verzeichnis app-editors,  Action-Spiele in games-action. Demnach können wir wieder cat und grep verwenden, um uns die installierten Programme einer bestimmten Kategorie anzeigen zu lassen:

// Installierte Pakete bestimmter Kategorien suchen

# cat /var/lib/portage/world | grep app-editors

app-editors/bluefish
app-editors/gvim
app-editors/nano
app-editors/nvu