Versionssprung

Schon im Vorfeld der Entwicklungen von Gnome 2 haben namhafte Hersteller wie Sun, Compaq und HP Gnome, das GNU Network Object Model Environment, als Desktop-Alternative für Unix propagiert. Unix-Veteran Sun will in Solaris 9 sogar Gnome 2 als Standard-Desktop ausliefern.

In Pocket speichern vorlesen Druckansicht 110 Kommentare lesen
Lesezeit: 8 Min.
Von
  • Dr. Fred Hantelmann
Inhaltsverzeichnis

Geneigte Anwender haben Gnome 2 seit dem 26. Juni in Quellform im Zugriff. Laut Entwicklerteam ist Gnome 2 mit Linux, BSD, Solaris und HP-UX kompatibel. Das Produkt versteht sich als frei erhältlicher sowie einfach zu bedienender Desktop und außerdem als Entwicklungsplattform. Täglich benötigte Anwendungen wie Dateimanager, Editor und Terminal, aber auch Multimedia-Applikationen und Spiele zählen zur Grundausstattung.

iX hat die gut 60 MByte umfassende und aus 60 bzip2-komprimierten Einzelpaketen bestehende finale Version ausführlich getestet und sich vor allem die mit Gnome 2 neu implementierten Konzepte angesehen und sie in Sachen Performance und Alltagstauglichkeit bewertet. Notwendige Schritte zum Übersetzen und Installieren des Desktops - exemplarisch für Red Hat Linux 7.3 - illustriert der Kasten ‘Meta-Garball’.

Mehr Infos

Meta-Garball

Voraussetzungen für das Übersetzen und Installieren von Gnome 2 sind 2 GByte freier Plattenplatz. Unter Zuhilfenahme von Garnome 0.12.0 - das ist eine vom Gnome-2-Release-Koordinator Jeff Waugh erstellte Sammlung von Makefiles (siehe Kasten ‘Quellen’) - ist im günstigsten Fall lediglich ein einziger Aufruf von make install im Verzeichnis meta/gnome-desktop unterhalb von Garnome erforderlich, um alle Pakete in der richtigen Reihenfolge auszupacken, zu übersetzen und in eine Testhierarchie unterhalb des eigenen Heimatverzeichnisses zu kopieren. Auf dem Pentium-III-Testsystem mit 1-GHz-CPU und 384 MByte RAM forderte die Prozedur insgesamt knapp 100 Minuten reale Systemzeit.

Im Vorfeld waren lediglich die laut Readme-Datei von Garnome benötigten und nicht vorhandenen RPM-Pakete zu installieren und anschließend in der Konfigurationsdatei gar.conf.mk von Garnome der Variablen FILE_SITES der Pfad mitzuteilen, der die bzip2-Pakete enthält. Fehlerfrei lief das Übersetzen jedoch nicht, und das lag im Wesentlichen an vermeintlichen Garnome-Fehlern.

Zum einen erwartet Garnome zusätzlich zu den 60 Gnome-2-Paketen freetype-2.0.9.tar.gz und metacity-2.3.987.tar.gz sowie scrollkeeper-0.3.10.tar.gz anstelle des zur Gnome-2-Quellcode-Distribution zählenden Pakets scrollkeeper-0.3.09.tar.bz2. Zum anderen benötigt Garnome für das Erstellen von gnome-session die Datei garnome-0.11.0.png, die laut Garnome beim Starten einer Gnome-2-Session als Splash-Screen erscheinen soll. Wer einen alternativen Splash-Screen verwenden will, kann die Datei gnome/gnome-session/Makefile geeignet modifizieren.

Weitere Stolpersteine, die zum Abbruch von make install führten, betrafen die vergebliche Suche nach diff-Files für die Pakete freetype und scrollkeeper. Diese sind zwar Bestandteil von Garnome, jedoch sucht das Übersetzungsskript sie unterhalb des per FILE_SITES definierten Pfads. Nach Kopieren dieser zwei Dateien an eben diese Position lief die Übersetzung problemlos zu Ende. Ein wichtiger Hinweis an dieser Stelle: make clean entfernt alle Einträge im Unterverzeichnis download. Dort sollten daher allenfalls Kopien der Distribution oder symbolische Links auf die Distribution liegen.

Anschließend fand sich im Heimatverzeichnis eine Gnome-2-Hierarchie, die Dank -g-Option beim Übersetzen immerhin 215 MByte Plattenplatz belegte. Das Entfernen der Debug-Informationen via strip reduzierte den Umfang um fast 100 MByte.

Einen ersten Eindruck gewährte die in der Readme-Datei von Garnome beschriebene Startalternative innerhalb von Xnest, dem ‘Nested’ X-Server. Für weitere Tests wurde schließlich in /etc/X11/xdm/Xsession ein Schalter gnome2 eingefügt, der exec $HOME/garnome/bin/gnome-session ausführen soll. Dazu erstellte der Tester in /etc/X11/gdm/Sessions ein Shell-Skript Gnome2 mit folgendem Inhalt:

PATH=$HOME/garnome/bin:$PATH
LD_LIBRARY_PATH=$HOME/garnome/lib:$LD_ LIBRARY_PATH
GDK_USE_XFT=1
export PATH LD_LIBRARY_PATH GDK_USE_XFT
exec /etc/X11/xdm/Xsession gnome2

Ist diese Datei ausführbar, erscheint im Sitzungsmenü des Gnome-Display-Managers ein zusätzlicher Eintrag Gnome2, der den Gnome-2-Desktop startet. Der Zugriff auf die neu hinzugekommene Dokumentation erforderte schließlich eine Erweiterung der Variablen OMF_DIR in /etc/scrollkeeper.conf um den Pfad $HOME/garnome/share/omf sowie den anschließenden Aufruf von scrollkeeper-rebuilddb.

Sämtliche Gnome-2-Bibliotheken und -Anwendungen setzen auf dem Funktionsumfang von Glib 2.0.4, dem Multiplattform-GUI-Toolkit GTK+ Version 2.0.5 und dem Text-Layout- und -Render-Paket Pango 1.0.3 auf. Letzteres dient der Darstellung von 8- und 16-Bit-Textinformationen. Pango kann sowohl Bitmap-Fonts (X-Fonts) als auch skalierbare Schriften unter Verwendung der FreeType-Bibliothek verarbeiten.

Darauf seitens Gnome 2 bereitgestellte Desktop-Metaphern umfassen Session-, Anwendungs- respektive Dateimanagement sowie eine kontextsensitive Hilfefunktion und den Informationsaustausch zwischen verschiedenen Anwendungen via Drag and Drop. Letzteres stellt GTK+ bereit, es unterstützt unter Unix die Protokolle Xdnd und Motif-DND.

Basis der Online-Hilfe ist das Open Metadata Framework OMF. Sämtliche Dokumente der Online-Hilfe entstehen aus XML-Dateien. Für ihre Verwaltung ist das Metadata-Managementsystem Scrollkeeper zuständig, das quasi ein Vermittlungsglied zwischen einer Anwendung und einem Hilfe-Browser bildet: Anwendungen müssen ihre OMF-konforme Dokumentation während der Installation beim Scrollkeeper registrieren und dieser liefert einem Scrollkeeper-konformen Hilfe-Browser die gesuchte Information. Im Rahmen von Gnome 2 bildet yelp das Frontend für die Hilfefunktion, das wiederum die lesbaren Informationen über die Docbook-DTD-Stylesheets erzeugt.

Mehr Infos

In Sachen Session-Management ist alles beim Alten geblieben: gnome-session verwaltet sämtliche X-Anwendungen, die die Session-Management-Funktionen von X11 nutzen. Für Gnome-2-Programme ist diese Funktion erwartungsgemäß recht sauber implementiert. Beispielsweise verwenden die Terminalemulatoren nach dem Neustart einer Sitzung das während des Abmeldens gültige aktuelle Arbeitsverzeichnis, der Dateimanager öffnet alle zuvor präsentierten Fenster, und der Hilfe-Browser zeigt das zuletzt dargestellte Dokument an. Der Gnome-2-Texteditor gedit öffnet bei erneuter Anmeldung zwar alle zuletzt aktiven Dokumente, positioniert jedoch den Cursor stets an den Dateianfang.

Nautilus, der Dateimanager, basiert jetzt vollständig auf GTK+ 2 und Gnome 2. Er wirkt noch bunter als sein Vorgänger und zeigt ein spürbar besseres Reaktionsverhalten als die 1.x-Versionen. Die Navigation durch Verzeichnisse erfolgt zügig, Drag and Drop innerhalb des Dateibaums funktioniert einwandfrei. Die hohe Farbvielfalt erfordert allerdings ein entsprechend hochwertiges Visual des X-Servers. Im TrueColor-Modus liefert der Nautilus ein professionelles Erscheinungsbild, auf 8-Bit-Displays wirkt die Darstellung unscharf und verwaschen.

Neben dem Terminalemulator gnome-terminal zählen zum Lieferumfang von Gnome 2 die Admin-Werkzeuge gnome-system-log (listet Einträge aus /var/log/messages) und gnome-system-monitor (zeigt die aktuell aktiven Anwendungen sowie CPU- und Speicherauslastung) und typische, von anderen Desktops bekannte Utilities wie eine Zeichentabelle gcharmap, Dateisuchhilfe gsearchtool, Wörterbuch gdict und der obligatorische Taschenrechner gcalc. Aus Sicht eines Anwendungsprogrammieres fehlt dem gcalc eine Konvertierungsroutine zwischen den Dual-, Oktal, Dezimal- und Hexadezimalzahlensystemen.

Im Bereich Multimedia beinhaltet Gnome 2 schwerpunktmäßig Audiotools. Rund um den Enlightened Sound Daemon (EsounD) und die von Silicon Graphics entwickelte Audio-File-Bibliothek stehen dem Anwender ein Mixer, Soundrecorder und CD-Player zur Verfügung. Videoanwendungen gehören bislang nicht dazu.

Zu Gnome 2 zählen ferner die Gnome-Version gdm des X-Display-Managers, dessen Erscheinungsbild nun thematisierbar ist. Als Window-Manager kommt standardmäßig der via Emacs-ähnlichem Lisp-Programmcode erweiterbare Sawfish zum Einsatz. Sawfish wurde ebenfalls auf GTK+ 2 und Gnome 2 portiert und löst damit den im Rahmen der Entwicklung von Gnome 2 genutzten Window-Manager Metacity ab. Für das Übersetzen von Gnome 2 über die Garnome-0.12-Skripts ist Metacity hingegen erforderlich.

Einer kompletten Neugestaltung erfreut sich das Gnome Control Center, das aktuell ein Icon-basiertes Menüsystem bildet und via Nautilus zugänglich ist. Äußerlich wirkt das Gnome Control Center nun wie das von Windows her bekannte Systemfenster. Leider entspricht diese Komponente einer Baustelle. Die Entwickler weisen ausdrücklich darauf hin, dass die Version weder vollständig ist noch stabil arbeitet und empfehlen statt dessen die Vorgängerversion 1.4 zu benutzen.

Leider kein Scherz: Ein Systemwerkzeug, das die Systemeinstellungen beschädigen kann, hat in einer Final-Version nichts zu suchen.

Ebenfalls als Anlehnung an die Redmonder Praxis der zentralen Verwaltung von Desktop-Eigenschaften offenbart sich die per GConf implementierte Präferenz-Datenbasis. An Stelle der gefürchteten Registry tritt bei GConf ein Unix-üblicher Dateibaum mit vielen kleinen XML-Dateien. Zu jeder Desktop-Komponente, aber auch zu jeder Gnome-2-Anwendung unterhält GConf eine Datei %gconf.xml, die, wie die Dateikennung vermuten lässt, die jeweiligen Eigenschaften der einzelnen Komponenten im XML-Format kodiert. Ein zugehöriger gconf-editor trägt die Versionsnummer 0.2. Sein Aufruf führt zum leider nicht als Witz zu verstehenden Hinweis, er sei komplett ungetestet und könne die GConf-Konfiguration zerstören (siehe obigen [#shot Screenshot]).

Wenig Freude bereitete außerdem die Version 2.0.0 des Gnome-Editors gedit. Er nahm keine per Drag and Drop aus dem Filemanager übermittelte Dateien auf und brach reproduzierbar beim Verlassen des Menüs Bearbeiten->Vorlieben mit einem Speicherzugriffsfehler ab. Das Problem konnte selbst ein Update auf die inzwischen verfügbare Version 2.0.2 nicht beheben.

Zusammenfassend bleibt festzustellen, dass Gnome 2 zahlreiche und durchaus zukunftsorientierte Neuerungen bringt, diese aber nur in Ausnahmefällen des Titels ‘Final’ würdig sind. Gut gelungen sind das Session-Management und die Hilfefunktion, die Hauptanwendungen wie Filemanager, Terminalemulator und die erwähnten Utilities laufen weitgehend stabil. gedit mag für den Alltag geeignet sein, die bemerkten reproduzierbaren Abstürze sind jedoch nicht akzeptabel. Keineswegs vollständig ist außerdem die Internationalisierung. Gelegentliches Sprachmischmasch bei den Tasten- und Menübeschriftungen stören und die Online-Hilfe ist komplett in englischer Sprache.

Gänzlich enttäuschend fielen die Konfigurationswerkzeuge auf, speziell das Gnome Control Center und der GConf Editor. Die Entwickler hätten gut daran getan, diese Komponenten als Contributed Software zu deklarieren, zumal es dem Ansehen des sonst von beispielhaftem Ehrgeiz geprägten Projekts schädlich ist, wenn eine Anwendung sich beim Start als ‘weit entfernt von zuverlässig’ deklariert. Bis zum Redaktionsschluss dieser iX-Ausgabe, immerhin fünf Wochen nach der offiziellen Freigabe von Gnome 2, liefern die inzwischen verfügbaren Updates kei-ne Besserung dieses Zustands.

Wer Zeit hat oder neugierig ist, dem sei das Abenteuer Gnome 2 durchaus empfohlen. Ein paralleler Betrieb von Gnome 1.x und Gnome 2 ist konfliktfrei möglich, von einem Ersatz einer bestehenden Gnome 1.x Konfiguration durch das neue Major Release sei jedoch vorerst abgeraten. Nicht umsonst liefert der auf Qualitätssicherung bedachte Distributionshersteller Red Hat bisher keine Gnome-2-RPMs aus, und auch Sun verweist auf seinen Webseiten nur auf die ältere Betaversion 1.

Dr. Fred Hantelmann
widmet seine Arbeitskraft der Ma Res Marktforschung und Informationstechnologie GmbH.

Mehr Infos

iX-Wertung

(+) zum Teil Verbesserungen beim Reaktionsverhalten

(+) Parallelbetrieb mit Vorversion möglich

(-) Konfigurationsmanagement unvollständig

(-) gedit instabil

(avr)