Duisburger Linux User Group - http://www.dulug.de
Stammtisch 25.03.2005: Die Art der Vielfalt - Fenstermanager unter Linux
Unter Linux gibt es eine Vielzahl von Fenstermanagern die alle für die unterschiedlichsten Aufgaben entwickelt worden sind. Dieser Vortrag soll kurz auf X eingehen und anschliessend ein paar Fenstermanager vorstellen.
Keine Garantie auf Vollständigkeit und/oder Funktionalität!
Autor: M. Franke

X
Das X-Window-System wurde entwickelt um auch unter Linux grafische Oberflächen zu ermöglichen. X ist dabei aber keine grafische Oberfläche sondern nur eine Schnittstelle zwischen dem Linuxsystem und der grafischen Oberfläche. Es lädt alle nötigen/voreingestellten Treiber (Grafikkarte, Maus & Tastatur) und stellt diese Schnittstellen der grafischen Oberfläche zur Verfügung. Die grafische Oberfläche stellt wiederum oben genannte Geräte dem User zur Verfügung:

1. Linux
|
2. X-Server
|
3. Grafische Oberfläche
|
4. User

Bei X spricht man auch häufig vom X-Server, denn X ist ein weiterer Service (Dienst) der dem User zur Verfügung gestellt wird. Je nachdem welche Distribution man besitzt/installiert hat, gibt es unterschiedliche Möglichkeiten den X-Server zu konfigurieren:
SuSE: sax2 (in älteren Versionen nur sax)
Mandrake: drakconf
Debian/Slackware: xorgconfig/xfree86config
Die beiden beschriebenen Möglichkeiten mittels xorgconfig bzw. Xfree86config den X-Server zu konfigurieren existieren unter allen Linux-Distributionen, da das die ursprüngliche Variante ist den X-Server zu konfigurieren. Die Menüführung von xorgconfig ist sehr einfach, da man nur Fragen zu seiner Hardware beantworten muss. Man sollte natürlich sehr genau wissen welche Hardware man besitzt, so nutzt es einem z.B. nicht das man z.B. noch eine alte Grafikkarte von Miro hat, sondern man sollte wissen das der verwendete Grafikchip auf der Karte ein S3 ist. Weiss man nicht welche Frequenzen und welche Auflösung der Monitor darstellen kann, so sollte man mit den niedrigsten Einstellungen anfangen und sich langsam hocharbeiten. Hat man einen konfigurierten X-Server, so kann dieser folgendermassen gestartet werden:
$ X
Danach sieht man eine schwarz-weisse 'Oberfläche' und ein X als Mauscursor. Wie oben bereits beschrieben ist dies nur der X-Server ohne grafische Oberfläche. Dh. Man kann den X-Server auch nicht sanft beenden sondern muss die harte Methode wählen durch gleichzeitiges drücken der Tastenkombination STRG-ALT-BACKSPACE.
Möchte man nun eine grafische Oberfläche starten, so muss man den Befehl startx benutzen. Bei den meissten Distributionen ist KDE als Fenstermanager voreingestellt, welche daraufhin auch starten sollte:
$ startx
Möchte man nun nicht immer KDE als grafische Oberfläche haben, so gibt es verschiedene Möglcihkeiten das zu ändern. Zum einen bieten die meissten Distributionen in Ihren Konfigurationstools (Yast, Drakconf etc) die Möglcihkeit die grafische Oberfläche dauerhaft zu ändern oder man benutzt die Datei .xinitrc die sich im eigen Home-Verzeichnis befindet und editiert sie:
$ vi ~/.xinitrc
Danach öffnet sich der Vi als Editor und öffnet die Datei .xinitrc im Home-Verzeichnis. Durch drücken von Escape, gefolgt von i können wir die Datei nun bearbeiten. Wenn man nun Fluxbox als Fenstermanager benutzen möchte muss man folgende Zeile einegeben:
exec fluxbox
Danach muss die Datei gespeichert und der Vi beendet werden, was durch drücken von Escape, einem Doppelpunkt :, einem kleinen x und zuletzt von Enter abgeschlossen wird. Wenn man nun wieder startx eingibt, erscheint nun Fluxbox als Fenstermanager. Das setzt natürlich voraus das Fluxbox installiert ist! Man muss auch nicht den Vi als Editor nehmen, sondern kann einen anderen verwenden. Desweiteren bietet die Datei .xinitrc noch weitere Möglichkeiten die man einstellen kann, daruaf soll aber erst am Ende eingegangen werden. Im folgenden sollen nun ein paar Fenstermanager vorgestellt werden

KDE
KDE sollte den meissten Linuxbenutzern wietesgehend bekannt sein, da dieser normalerweise standardmässig als Fenstermanager installiert wird, zumindestens bei Distributionen wie SuSE, Mandrake etc. KDE galt lange nicht als wirklich frei, da es die Qt-Bibliothek aus dem Hause Trolltech benutzte, welche nicht wirklich frei ist. Sobald Programme entwickelt werden die Geld einbringen sollen, müssen nämlich erstmal Linenzkosten an Trolltech bezahlt werden!

Gnome
Aufgrund dessen das KDE sich der Qt-Bibliothek bedient und lange nicht als frei galt wurde das Gnome-Projekt ins Leben gerufen das sich der GTK-Bibliothek bedient und keine Lizenzkosten verursacht falls Programme verkauft werden sollen.

FVWM
FVWM ist schon ein älterer Windowmanager und es gibt mehrer Varianten: fvwm, fvwm 2 und fvwm95. Wobei gerade letztere seinem Namen alle Ehre gibt und versucht ein wenig wie Windows 95 zu wirken. Das Menü des FVWM erreicht man durch klicken mit der linken Maustaste auf den Desktop. Die Menüs der einzelenen Fenster verstecken sich unter dem Knopf der Linksoben in der Ecke des Fensters ist.

Fluxbox
Fluxbox basiert auf Blackbox und ist ein neuerer WM. Das Menü von Fluxbox erreicht man durch klicken mit der linken Maustaste auf den Desktop. Alle Fenster werden wie üblich durch das kleine Kreuz rechtsoben geschlossen. Desweiteren ist Fluxbox themable, dh. Man kann sein Aussehen durch Themes verändern.

FVWM und Fluxbox sind beides sehr kleine und resourcenschonende WM, was sie somit auch für ältere Rechner attraktiv macht, im Gegensatz zu KDE oder Gnome. Man muss halt schauen was einem lieber ist, Usability und grosser Resourcenverbrauch oder eben weniger Usability dafür aber ein Resourcenschonendes arbeiten. Wobei man auch bedenken sollte das gerade KDE und Gnome trotz des Speicherverbrauch am ehesten für den Windowsumsteiger geeignet sind!
Zudem kann man z.B. unter Fluxbox auch KDE-Anwendungen starten, wodurch aber die Resourcenschonung dahin, da diese ja auch die KDE typischen Bibliotheken brauchen und nachladen.

Weitere Einstellungen
Zum Ende hin soll nochmal kurz das Programm xset angesprochen werden mit der sich einige Sachen bzgl. Des X-Server einstellen lassen. Zuerst soll die Hilfe zu xset aufgerufen werden:
$ xset --help
Somit sieht man z.B. den Eintrag bzgl. DPMS. Ich finde es immer ziemlich störend wenn man einen Film oder eine DVD schaut das sich nach 15 Min. Der Monitor abschaltet. Man muss die Maus bewegen und dann erscheint das Bild wieder. Dies kann man mit xset abschalten
$ xset -dpms
In den meissten Fällen reicht das aber nicht, da noch ein Bildschirmschoner eingeschaltet ist, der auch erst noch abgeschaltet werden muss:
$ xset -dpms s off
Und wenn man ganz viel 'Pech' hat bringt der Monitor selbst DPMS mit. Das muss dann im Monitor selbst abgeschaltet werden und kann nicht von Linux heraus geschehen. Die oben genannten Befehlen lassen sich auch durch Eintragen in die .xinitrc automatisch ausführen.

Beispiel der Datei .xinitrc
Im folgenden Beispiel wird der Fluxbox als WM gestartet. Zudem wird ein Hintergrund geladen und DPMS bzw. Der Bildschirmschoner abgeschaltet:
bsetbg /home/dulug/Bild.jpg &
xset -dpms s off
exec fluxbox