Fertige Pakete für die neue Gnome-Version gibt es bisher für die wenigsten Distributionen. Als Ersatz hilft das Skript Garnome beim Selbstkompilieren; damit machen Sie sich unabhängig vom Distributor.
Red Hats Desktop-Projekt Fedora [3] liefert derzeit als einzige Distribution die Desktop-Umgebung Gnome in der aktuellsten Version 2.6 mit; die Gnome-Entwickler selbst stellen lediglich den Quell-Code zur Verfügung. Diesen zu kompilieren kostet Zeit und Mühe, doch Garnome [1] automatisiert den Vorgang.
Entwicklungsumgebung
Eine aufwändige Software wie Gnome aus dem Programm-Code in maschinenlesbare Form übersetzen zu lassen, setzt eine komplette Entwicklungsumgebung und etwas Erfahrung mit configure[4] und make[5] voraus. Dazu zählen in erster Linie ein C- und C++-Compiler, darüberhinaus die Werkzeuge Binutils, Flex, Bison oder Yacc, Gettext und Patch. Weiterhin sind Wget, GZip und BZip2 vonnöten.
Diese Pakete stehen bei allen gebräuchlichen Distributionen zur Auswahl. Sind sie wie bei der Suse-Personal-Ausgabe nicht auf der mitgelieferten CD enthalten, lassen sie sich vom FTP-Server des Distributors herunterladen. Die genauen Paketnamen weichen dabei voneinander ab; das distributionsspezifische Paketwerkzeug fördert die genaue Bezeichnung zutage.
Achten Sie darauf, dass Ihre Compiler gcc und g++ nicht veraltet sind, aktuell ist Version 3.3. Neuere Distributionen liefern die benötigte Ausgabe ohnehin mit.
Für Benutzer der stabilen Debian-Version Woody sieht es allerdings schlecht aus: Zwar wäre die Nachinstallation eines aktuellen C-Compilers kein Problem, jedoch setzt Gnome 2.6 viele weitere Bibliotheken in aktuelleren Versionen voraus – darunter das Paket libc6, das für das gesamte System von entscheidender Bedeutung ist – dass sich ein Umstieg auf Debian Sarge (“testing“) nicht vermeiden lässt.
Nachdem diese Software auf dem System vorhanden ist, haben Sie die Voraussetzungen erfüllt, um C-Programme zu kompilieren; Gnome benötigt aber noch eine ganze Reihe weiterer Entwicklungspakete. Wie sie im Detail heißen, variiert von Distribution von Distribution, Tabelle 1 listet die Namen der Entwicklungspakete unter Suse und Debian Sarge auf, bei anderen Linux-Systemen weichen sie möglicherweise ab.
Tabelle 1: Benötigte Entwicklerpakete
| Basispaketname | Suse-Paketname | Debian-Sarge-Paketname |
| pkg-config | pkgconfig | pkg-config |
| fontconfig | fontconfig-devel | libfontconfig1-dev |
| FreeType (mindestens Version 2.0.9) | freetype2-devel | libfreetype6-dev |
| docbook-xml | docbook_4 | docbook-xml |
| docbook-xsl | docbook-xsl-stylesheets | docbook-xsl-stylesheets |
| libpng | libpng-devel | libpng-dev |
| libjpeg | libjpeg | libjpeg62-dev |
| libtiff | libtiff | libtiff3g-dev |
| XFree86 | XFree86-devel | libx11-dev |
| libpopt | popt-devel | libpopt-dev |
| libbz2 | bzip2 | libbz2-dev |
| zlib | zlib-devel | zlib1g-dev |
| libfam | fam-devel | libfam-dev |
| mozilla | mozilla-devel | mozilla-dev |
| ncurses | ncurses-devel | libncurses5-dev |
| libstartup-notification | libstartup-notification-devel | libstartup-notification0-dev |
Konfiguration
Nach den Vorbereitungen folgt die Installation des Garnome-Skripts selbst. Entpacken Sie das Archiv aus dem Verzeichnis garnome auf der CD in Ihrem Home-Verzeichnis mit tar xjf garnome-2.6.1.tar.bz2 und wechseln Sie ins neue Verzeichnis garnome-2.6.1.
Die Datei gar.conf.mk steuert die Garnome-Konfiguration. Die wichtigste Option lautet GARCHIVEDIR, mit dem Sie ein lokales Verzeichnis festlegen, dass die Gnome-Quellpakete enthält; tragen Sie hier um von der Heft-CD zu installieren beispielsweise GARCHIVEDIR = /media/cdrom/LinuxUser/gnome-2.6.1 ein – abhängig vom Pfad zu Ihrem CD-ROM-Laufwerk. Findet Garnome an der angegebenen Stelle die Quellpakete nicht, lädt es sie aus dem Internet herunter, sofern eine Verbindung besteht.
Ist Ihr Festplattenplatz begrenzt, entfernen Sie das Kommentarzeichen (#) vor der Zeile export BUILD_CLEAN = true, damit Garnome die entpackten und kompilierten Dateien der einzelnen Pakete nach erfolgter Installation wieder löscht. Weiterhin legen Sie unter main_prefix das Zielverzeichnis des fertigen Gnome fest, nach der Voreinstellung landet es in Ihrem Home-Verzeichnis unter garnome. Der Eintrag WORKROOTDIR definiert bei Bedarf ein Verzeichnis, in dem der Kompiliervorgang stattfinden soll, beispielsweise auf einer zweiten Festplatte mit ausreichend freiem Platz; während der Installation benötigt Garnome nämlich etwa 1 GByte Plattenspeicher.
Wollen Sie das fertige Gnome auch anderen Benutzern auf dem Rechner zur Verfügung stellen, legen Sie unter main_prefix einen öffentlichen Pfad wie /usr/local/garnome fest, bei den meistens Systemen brauchen Sie dazu root-Rechte. Ein allgemein zugängliches Zielverzeichnis ist auch für den Fall vorteilhaft, dass Sie die neue Desktop-Umgebung später in Ihren Display-Manager wie KDM (KDE Display Manager) oder GDM (Gnome Display Manager) integrieren möchten.
Kompilieren
Nun ist Garnome bereit, den eigentlich Kompilier- und Installationsprozess zu starten. Dazu wechseln Sie ins Unterverzeichnis desktop und geben dort das Kommando make paranoid-install ein. Nun arbeitet das Garnome-Skript Paket für Paket in der richtigen Reihenfolge ab: Es entpackt jedes Quell-Code-Archiv, führt das configure-Skript aus und kompiliert und installiert die fertigen Programme.
Unterbricht der Prozess unerwartet, bleibt Ihnen nichts anderes übrig, als die Fehlermeldung zu interpretieren. Bemängelt ein configure-Skript ein fehlendes oder zu altes Paket, installieren Sie dieses in der benötigten Version nach. Fehlt während dem eigentlichen Kompilieren eines Gnome-Pakets eine Datei, finden Sie das dazugehörige Paket mit pin Dateiname unter Suse oder mit apt-file Dateiname unter Debian; dazu muss das jeweilige Paket – pin bzw. apt-file – natürlich installiert sein. Nach der Korrektur rufen Sie wieder make paranoid-install auf und Garnome setzt an der Stelle des Abbruchs fort.
Je nach Leistung Ihres Rechners müssen Sie sich bis zu mehreren Stunden gedulden, bis Garnome alle Basispakete kompiliert hat. Um nach erfolgreicher Installation die während dem Kompilieren zwischengespeicherten Dateien wieder zu löschen, genügt das Kommando make paranoid-clean im selben Verzeichnis wie zuvor make paranoid-install; haben Sie bei der Konfiguratioen BUILD_CLEAN = true definiert, ist dieser Schritt überflüssig.
Zielgerade
Um sicher zu stellen, dass das neue Gnome die neuen Programmbibliotheken verwendet, dient eine Umgebungsvariable; der Befehl
export LD_LIBRARY_PATH=$HOME/garnome/lib:$LD_LIBRARY_PATH
führt suchende Programme zum richtigen Ziel.
Auch den Pfad, in dem nach ausführbaren Dateien gesucht wird, passen Sie an:
export PATH=$HOME/garnome/bin:$PATH
Listing 1 zeigt ein Skript, das alle nötigen Umgebungsvariablen auf einmal setzt; in der zweiten Zeile legen Sie das Verzeichnis fest, in dem Garnome zu finden ist. Dieses finden Sie auch in der Datei README im Garnome-Paket.
Listing 1
Garnome Startskript
#!/bin/sh GARNOME=$HOME/garnome PATH=$GARNOME/bin:$PATH LD_LIBRARY_PATH=$GARNOME/lib:$LD_LIBRARY_PATH PYTHONPATH=$GARNOME/lib/python2.2/site-packages PKG_CONFIG_PATH=$GARNOME/lib/pkgconfig:/usr/lib/pkgconfig XDG_DATA_DIRS=$GARNOME/share GDK_USE_XFT=1 export PATH LD_LIBRARY_PATH PYTHONPATH PKG_CONFIG_PATH GDK_USE_XFT XDG_DATA_DIRS exec $GARNOME/bin/gnome-session
In Ihrem Home-Verzeichnis liegt Gnome 2.6 nur zum Ausprobieren für Sie am richtigen Ort. Um es zu starten, kopieren Sie das Skript aus Listing 1 in eine Textdatei, beispielsweise ~/garnome/bin/garnome.sh. Dann beenden Sie die grafische Oberfläche: Unter Suse geben Sie als root den Befehl init 3 ein und gelangen in einen Runlevel ohne Display-Manager. Unter Debian genügt es, den Display-Manager zu beenden mit dem Befehl /etc/init.d/kdm stop (für KDM). Anschließend starten Sie Gnome 2.6 manuell mit startx $HOME/garnome/bin/garnome.sh und es erscheint Ihre brandneues Desktop-Umgebung.
Haben Sie Garnome in ein öffentlich zugängliches Verzeichnis installiert, lässt es sich auch über den Desktop-Manager starten, das spart den Weg über die Runlevel-Änderung. Dazu muss das Skript aus Listing 1 in einem allgemein verfügbaren Pfad liegen wie /usr/local/bin/ und für alle Benutzer per Rechtevergabe ausführbar sein. Für KDM tragen Sie es dann im KDE-Kontrollzentrum als neue Session ein.
Noch nicht alles
Um eine produktive Desktop-Umgebung für den Arbeitsalltag zu erhalten, braucht man gewöhnlich mehr als nur die Basispakete aus dem desktop-Verzeichnis. In der Garnome-Hierarchie finden Sie weitere Programmsammlungen in den Unterverzeichnissen von garnome-2.6.1. Wertvolle Software von Dritten außerhalb des Gnome-Projekts wie das Grafikprogramm Gimp oder die Chat-Clients Gaim und XChat, die ebenfalls die GTK-Grafikbibliothek verwenden und sich nahtlos in die Gnome-Umgebung eingliedern, befinden sich im Unterverzeichnis fifth-toe.
Wer nicht auf die Programme der Gnome-Office-Suite wie den multitalentierten Mail-Client Evolution oder die Textverarbeitung Abiword verzichten möchte, wird unter office fündig. Weitere Themes und Erweiterungen unter Anderem für den Webbrowser Epiphany gibt es im Unterverzeichnis geektoys. Für Entwickler interessant sind die Pakete unter hacker-tools mit seinen Debugging-Werkzeugen und Spezialeditoren; wer in der Sprache Mono programmiert, sollte zudem die Pakete aus mono installieren.
Bei der Zusatz-Software gehen Sie genauso vor wie bei den Basispaketen: Wechseln Sie ins jeweilige Verzeichnis und kompilieren und installieren Sie mit make paranoid-install die Einzelpakete. Allerdings setzen einige Zusatzprogramme weitere Entwicklungsbibliotheken voraus, sollten auf Ihrem System notwendige Pakete fehlen, erfahren Sie das aus der Fehlermeldung der configure-Skripte.
Glossar
-
Runlevel
-
Meistens gibt es auf Linux-Systemen fünf Runlevel, jede dieser Stufen startet verschiedene Dienste. Die Zahl und Art der Dienste hängt von der Distribution ab, unter Suse startet Runlevel 5 eine grafische Oberfläche, Runlevel 3 ein Multiuser-System mit Netzwerk im Textmodus.
Infos
[1] Garnome 2.6 Download: ftp://cipherfunk.org/pub/tarballs/garnome/
[2] Gnome 2.6: http://www.gnome.org/start/2.6/
[3] Fedora: http://fedora.redhat.com/
[4] configure: Andrea Müller, “Fehler-Fahnder”, LinuxUser 06/2004, S. 28 ff., http://www.linux-user.de/ausgabe/2004/06/028-configure/
[5] make: Andrea Müller, “Handgemacht”, LinuxUser 06/2004, S. 32 ff.




