Eigenbau-Desktop mit Pekwm und Bmpanel

Aus LinuxUser 10/2013

Eigenbau-Desktop mit Pekwm und Bmpanel

© Spekulator, sxc.hu

Traumpaar mit Anhang

Keine der etablierten Arbeitsumgebungen entspricht Ihren Vorstellungen? Bauen Sie sich Ihren Desktop einfach selbst!

Gnome ist so komfortabel wie das ungefederte Hinterrad einer Vorkriegs-Harley, will aber partout nicht auf 3D-Effekte verzichten, die sich über den Bildschirm schleppen. KDE ähnelt der Schaltzentrale eines Großkraftwerks, bei der es die einzelnen Schalter erst einmal mühsam zu ergründen und zu begreifen gilt. Zudem verbraucht es einen deutlichen Anteil der Systemressourcen für sich selbst. XFCE ist ein passables Framework, schießt aber zu kurz. Razor-QT ist bestenfalls eine Vorschau auf das, was die Zukunft bringt.

Kommt Ihnen etwas davon bekannt vor? Dann leiden Sie vermutlich unter einer Integrierter-Desktop-Allergie. Wärmstens zu empfehlen ist in diesem Fall, einen Blick über den erfreulich niedrigen Gartenzaun der vorkonfigurierten Desktops der Distributionen zu werfen und sich eine individuelle Arbeitsumgebung selbst zusammenzustellen.

Vor knapp zwei Jahrzehnten, als Gnome und KDE nur als Idee existierten, war es vor allem dem Engagement der Distributoren der ersten Stunde zu verdanken, dass der Benutzer nicht mit einer Arbeitsumgebung im Regen stand, die den Namen nicht verdiente.

Der damals neue Fenstermanager Fvwm markierte den Standard, und zahlreiche Erweiterungen und Zusatzprogramme verhalfen zu komfortablen Arbeitsabläufen. Noch heute bauen sich Anwender und Entwickler ihre Umgebungen selbst, ohne eine einzige nicht konfigurierbare Eigenschaft eines integrierten Desktops zu benötigen.

Was macht eigentlich einen Desktop aus? Natürlich die Anwendungen, wobei Firefox, Thunderbird und LibreOffice Beispiele für das sind, womit wir tagtäglich arbeiten und das Drumherum eher in den Hintergrund tritt. Das ist der Punkt: Letztendlich brauchen wir etwas, das uns unterstützt, das wir aber nur bemerken, wenn es nötig ist.

Der Grundstein

Der Fenstermanager gehört in fast jedem Fall zur Basis, denn er fügt sich als Zwischenschicht in die Ebene oberhalb des X-Servers und unterhalb der Anwendungen ein. Er kümmert sich nicht nur um das Öffnen, Schließen und Verschieben von Fenstern, sondern bringt fast immer von Haus aus eine Sitzungsverwaltung und ein Anwendungsmenü mit. Nur auf jene, deren Einsatz in integrierten Umgebungen liegt, trifft das nicht zu – also KWin, Metacity/Mutter und XFWM4.

Es fällt schwer, aus der Vielzahl der Fenstermanager den richtigen zu wählen. Pekwm [1] ist einer, der zwar für die meisten Distributionen als Paket bereit steht, sich aber immer noch auf der Stufe des ewigen Geheimtipps bewegt.

In der Regel finden Sie nach der Installation einen entsprechenden Eintrag im Menü des Dialogs zum Anmelden, sofern das Paket einen Eintrag für die Software mitbringt. Das Projekt selbst liefert diesen nicht mit. Sollten Sie nichts Brauchbares vor finden, erstellen Sie eine Datei wie in Listing 1 und speichern diese unter /usr/share/xsessions/pekwm.desktop.

Listing 1

[Desktop Entry]
Name=PekWM
Comment=Kleiner und schneller Fenstermanager
Exec=pekwm
TryExec=pekwm
Type=XSession

Starten Sie nun in eine neue Pekwm-Sitzung, sehen Sie erst einmal gar nichts – außer das voreingestellte Hintergrundbild der Distribution. Über einen Klick mit der rechten Maustaste öffnen Sie das Menü, das den Zugriff auf einige Standardanwendungen gewährt. Selbst ein XDG-basiertes Menü steht aus dem Stand nicht bereit, lediglich Debian und dessen Derivate verwenden einen Mechanismus zur Erzeugen eines Menüs aus den installierten Anwendungen.

Zwar gibt es bereits seit einigen Jahren in Form des Projekts Pekwm_menu_tools [2] einen Ansatz, um dieses Problem zu beheben, aber in der Praxis erwies sich das Erstellen des Menüs als recht fehlerträchtig und noch zu weit von echter Alltagstauglichkeit entfernt.

So bleibt Ihnen aber immer noch das Anlegen eigener Menüeinträge in der Konfigurationsdatei ~/.pekwm/menu. Vermutlich werden Sie die meisten der schon vorhandenen Einträge nicht brauchen, sodass Sie diese einfach nach Ihren Erfordernissen ändern. Einen als Untermenü hinzugefügten Ausschnitt finden Sie in Listing 2.

Listing 2

Submenu = "Favoriten" {
Entry = "Dateimanager" { Actions = "Exec spacefm" }
Entry = "Webbrowser" { Actions = "Exec qupzilla" }
Entry = "E-Mail" { Actions = "Exec thunderbird" }
Entry = "Terminal" { Actions = "Exec konsole" }
}

Im erwähnten Ordner finden Sie alle weiteren Stellschrauben für Pekwm: Standardmäßig folgt die Software dem Sloppy-Focus-Prinzip. Das bedeutet, das der Fokus auf den Fenstern dem Mauszeiger folgt. In früherer Zeit war dies in anderen Umgebungen der Standard, steht aber heute in den großen integrierten Desktops nur als Option bereit.

Wenn Sie die Fenster lieber durch einen ausdrücklichen Mausklick aktivieren wollen, entfernen Sie in der Datei ~/.pekwm/mouse vor der Zeile INCLUDE = "$_PEKWM_ETC_PATH/mouse_click das Raute-Zeichen und setzen es vor die darüber liegende Zeile.

Mit der Tastatur

Obwohl gegenwärtig vor allem Gnome dafür in der Kritik steht, den Benutzer regelrecht an die Tastatur zu zwingen, sollte andersherum betrachtet ein Fenstermanager es ermöglichen, diesen mit der Tastatur zu bedienen. Pekwm steht hier nicht hintenan: Für sämtliche aus anderen Umgebungen bekannten Vorgänge, die in der Regel ein Tastenkürzel haben, steht hier ebenfalls eines bereit.

Die Konfiguration dazu finden Sie in der Datei ~/.pekwm/keys, welche die Software beim ersten Start aus der Systemkonfiguration erzeugt. Im Wesentlichen hält sich Pekwm dabei an übliche Standards. Allerdings ist die in anderen Welten zum Öffnen einer Schnellstartzeile bekannte Tastenkombination nicht belegt. Abhilfe schaffen Sie schnell mit einer Definition wie in Listing 3.

Listing 3

KeyPress = "Mod1 F2" { Actions = "ShowCmdDialog" }

Der interne Befehl ShowCmdDialog öffnet die in Pekwm eingebaute Eingabezeile. Wenn Ihnen die zu funktionsarm erscheint (was sie tatsächlich ist) ersetzen Sie den Befehl – beispielsweise durch xfrun4, sofern Sie den XFCE-Schnellstarter auf dem System installiert haben.

Alles unter Kontrolle

Pekwm allein hat mit seinem Menü schon einige Grundfunktionen zu bieten, aber ein Panel ermöglicht darüber hinaus, ständig diverse Informationen im Blick zu behalten. Bmpanel2 [3] ist ein passender Vertreter aus der großen Familie der Informationsbalken. Außerdem treten die Themendateien für Pekwm und Bmpanel2 oft paarweise auf, was ein optisch ansprechendes Ganzes deutlich erleichtert.

Das besagte Panel starten Sie einfach mit dem Befehl bmpanel2, woraufhin sich ein Balken am unteren oder oberen Rand des Bildschirms öffnet – je nachdem, welches Thema Sie zunächst eingestellt haben. Am linken Rand finden Sie einen Umschalter für die Arbeitsflächen, daneben aktivieren Sie einzelne Fenster, und ganz rechts sehen Sie die aktuelle Zeit.

Sehr wahrscheinlich möchten Sie nicht bei jedem Anmelden das Panel neu starten. Wie es sich für einen ordentlichen Fenstermanager gehört, hält Pekwm dafür ein Startskript in ~/.pekwm/start bereit. Der Fenstermanager legt es beim ersten Aufruf an, aber bis auf einen erklärenden Text bleibt die Datei zunächst leer.

Hier schreiben Sie den Befehl bmpanel2 hinein, sowie weitere Programme, die Sie nicht immer wieder einzeln aufrufen wollen. Eine einfache Liste genügt, aber wenn nötig, dürfen Sie hier Shell-Syntax verwenden, um unter verschiedenen Umgebungen unterschiedliche Programme zu starten.

Bmpanel2 hält hinsichtlich der Features kaum mit den Leisten der großen Umgebungen mit. Hier springt bei Bedarf Pekwm in die Bresche: Die ursprünglich für den Fenstermanager Windowmaker entwickelten, aber von anderen wie Openbox oder Fluxbox adaptierten Dockapps finden in Pekwm ihren Platz, im sogenannten Harbour.

Fehlt Ihnen eine bestimmte paneltypische Funktion, wie ein Netzwerkmonitor oder eine Prozessliste mit drei Zeilen, rüsten Sie diese in Form der Dockapps Wmnet und Wmtop einfach nach (Abbildung 1). Insbesondere Debian und dessen Derivate sowie Mageia sind mit diesen Applets gut bestückt, sodass viele Wünsche sicher in Erfüllung gehen.

Abbildung 1: Bei Bedarf erweitern Sie das Panel Bmpanel2 mit Dockapps aus der Windowmaker-Welt.

Abbildung 1: Bei Bedarf erweitern Sie das Panel Bmpanel2 mit Dockapps aus der Windowmaker-Welt.

Einen gewissen Teil der Konfiguration erledigen Sie sogar grafisch: Das Programm Bmpanel2cfg kommt mit dem Panel selbst mit. Erwarten Sie jedoch nicht zu viel davon. Bis auf das Löschen nicht mehr benötigter und das Anlegen neuer Programmstarter sowie die Konfiguration einiger Werte für Drag & Drop ist es nicht besonders leistungsfähig (Abbildung 2). Die bei Fedora 19 mitgelieferte Version war nicht einmal in der Lage, die im System verfügbaren Themen zu erkennen und zur Auswahl anzubieten.

Abbildung 2: Das grafische Tool zum Konfigurieren des Panels erweist sich in der Praxis als sparsam ausgestattet und fehleranfällig.

Abbildung 2: Das grafische Tool zum Konfigurieren des Panels erweist sich in der Praxis als sparsam ausgestattet und fehleranfällig.

Neue Klamotten

Pekwm versteht auch Themes und leistet dabei mehr als viele minimalistische Vertreter seiner Art, bei denen Sie kaum mehr als Farben und die Breite der Linien zu ändern vermögen. Wie einige Mitbewerber vermag er seine Fensterdekoration aus PNG-Grafiken zu erstellen. Das bedeutet, dass die Möglichkeit besteht, Themen mit vertretbarem Aufwand zu portieren.

Der bekannteste unabhängige Themenpool im Internet [4] hält derzeit etwa 150 Pakete bereit, wobei viele davon praktischerweise gleich einen Part für Bmpanel enthalten oder zumindest darauf verweisen.

Pekwm setzt aber voraus, dass Sie ein heruntergeladenes Archiv in ~/.pekwm/themes entpacken. Das erschwert die Übersicht etwas, da solche Dateien meist in ~/.themes liegen. Zum Wechsel des Themas hält das Desktopmenü in Pekwm | Themes einen Eintrag bereit. Danach brauchen Sie nur noch mit Pekwm | Reload die Konfiguration neu einzulesen, und schon erscheint das neue Thema.

Auch das Panel versteht sich auf Themen, wenngleich die Entwickler hier wiederum von den Standards abweichen. Diesmal sucht das Programm in /usr/share/bmpanel2/themes und in ~/.local/share/bmpanel2/themes nach verwertbaren Daten. Bei Themenarchiven aus dem Web, die beide Varianten enthalten, ist es wichtig, dass Sie jeweils nur die letzten beiden Unterordner verwenden, die den Namen des Themas tragen.

Während Sie bei Pekwm die Möglichkeit haben, das Thema im laufenden Betrieb über das Menü auszuwählen und sofort anzuwenden, verlangt das Panel nach einem Neustart. Der klappt zwar nicht über ein Kontextmenü oder ähnliches, aber der Eintrag in das oben erwähnte Startskript von Pekwm sorgt dafür, dass der Fenstermanager die dort verewigten Programme mit beendet und neu aufruft.

Sowohl bei Pekwm wie bei Bmpanel beeinflussen die Themen in einigen Fällen diverse Einstellungen, die üblicherweise die Programmen selbst kontrollieren. Falls also bei einem Wechsel des Themes plötzlich das Panel nach oben flutscht oder die Knöpfe im Fenstertitel nach links springen oder gleich ganz verschwinden, spielt also nicht das System verrückt.

TIPP

Falls Sie ein Thema zwar insgesamt mögen, Sie aber ein Detail stört, klonen Sie den betreffenden Ordner, benennen ihn um und ändern die entsprechende Definition.

Sicherlich würden Sie nichts dagegen haben, wenn GTK- und Qt-basierten Anwendungen in einem einheitlichen Kleid daherkommen. Natürlich besteht die Möglichkeit, die entsprechenden Konfigurationsdateien zu bearbeiten – aber es geht komfortabler: Für GTK-Oberflächen der Version 2 steht zum Beispiel mit Gtk-chtheme [5] ein Tool zum Wechsel der Oberfläche bereit (Abbildung 3).

Abbildung 3: Gtk-chtheme: Umkleiden nach Wunsch für GTK 2.

Abbildung 3: Gtk-chtheme: Umkleiden nach Wunsch für GTK 2.

Allerdings hat die Applikation rein gar keine Ahnung, wie sie mit GTK 3 umzugehen hat. Freilich sind solche Oberflächen außerhalb der Gnome-Welt noch nicht sehr weit verbreitet, doch mittlerweile haben immer mehr Entwickler entdeckt, dass Sie auf Dauer mit der alten GTK-Version nicht mehr auskommen.

Deshalb heißt es wohl oder übel: zum Texteditor greifen, um GTK 3 im gleichen Kleid zu sehen wie die Programme der Vorgängerversion. Öffnen Sie die Datei ~/.config/gtk-3.0/settings.ini oder legen Sie an, falls sie noch nicht existiert. Der Inhalt der Datei sollte so aussehen wie in Listing 4, wobei Sie natürlich Zukitwo durch den Namen des gewünschten Themas ersetzen.

Listing 4

[Settings]
gtk-application-prefer-dark-theme = false
gtk-theme-name = Zukitwo
gtk-fallback-icon-theme = gnome
gtk-icon-theme-name = [Zukitwo]

Bei Qt-Programmen haben Sie es in der Regel etwas leichter. Bei vielen Distributionen sind die Einstellungen so gesetzt, dass Qt sich außerhalb von KDE bei den Widgets von GTK 2 bedient und diese zum Darstellen der eigenen Oberflächen benutzt. Das funktioniert beinahe reibungslos und ohne Eingriffe von Ihrer Seite.

Sollten Sie dennoch ein Werkzeug dafür brauchen, weil GTK-Programme vielleicht für Sie keine nennenswerte Rolle spielen oder Ihre Distribution sich um das Anpassen nicht bemüht hat, bietet sich Qtconfig an (Abbildung 4). Gelegentlich kursiert es unter etwas anderem Namen in den Paketquellen: Fedora nennt es qt-config; bei Ubuntu und Debian heißt es qt4-qtconfig.

Der Reiter Appearance bietet die Möglichkeit, ein wenig mit den verfügbaren Themen zu spielen, und in Interface gibt es noch einige Feineinstellungen, zum Beispiel Animationen beim Öffnen von Menüs, die außerhalb der Qt-Welt einen Compositing-Manager erfordern würden.

Abbildung 4: Das Einstellungswerkzeug für Qt-Oberflächen ist gelegentlich etwas schwer zu finden.

Abbildung 4: Das Einstellungswerkzeug für Qt-Oberflächen ist gelegentlich etwas schwer zu finden.

Fazit

Pekwm bietet eine Menge Möglichkeiten, wenngleich Sie immer daran denken sollten, dass Sie für das Anpassen nicht um den Texteditor herum kommen. Das Ergebnis (Abbildung 5) ist aber in der Regel die Mühe wert: Ein einheitliches optisches Erscheinungsbild, gepaart mit einer grenzenlosen Konfigurierbarkeit verspricht lang anhaltende Freude.

Abbildung 5: Der neue Desktop mit einigen Anwendungen: Beim Dateimanager rechts im Hintergrund handelt es sich um SpaceFM.

Abbildung 5: Der neue Desktop mit einigen Anwendungen: Beim Dateimanager rechts im Hintergrund handelt es sich um SpaceFM.

Nichts ist vollkommen, weder der hier beschriebene Eigenbau noch die per Definition nach nahtloser Integration strebenden großen Wettbewerber KDE und Gnome. Doch noch immer sind eigene Kreationen nicht anachronistisch. Bemühungen in dieser Richtung fördern oft unkonventionelle Lösungen zu Tage – sofern Sie willens sind, neue Wege zu gehen. 

Installation

Da Pekwm für die meisten großen Distributionen und deren Ableger in ziemlich aktuellen Versionen bereit steht, dürfte sich das Kompilieren meist erübrigen. Nur OpenSuse-Benutzer gehen leer aus, sodass jene und alle anderen mit dem üblichen Dreischritt configure && make && make install zum Ziel gelangen.

Es empfiehlt sich, vor dem Aufruf, mit ./configure --help einen Blick auf die Optionen zu werfen. Zahlreiche Fähigkeiten müssen Sie auf diesem Wege explizit aktivieren, zum Beispiel Xinerama für mehrere Bildschirme oder den PNG-Support, den vielen Themen benötigen. Erforderlich sind neben den Development-Dateien zu X11 weitere Pakete, die sich aus den gewünschten Features ergeben. Fehlende Dateien mahnt das Configure-Skript an.

Bei Bmpanel sieht es dagegen eher trübe aus: Lediglich Fedora und Slacky vertreiben es über ihre offiziellen Bezugsquellen, und die Projektseite hält keine Links zu weiteren paketierten Versionen bereit. So bleibt Ihnen nur der Griff zum Compiler. Die Installation startet nach dem Entpacken des Tarballs mit cmake, gefolgt von make und make install.

Die Abhängigkeiten halten sich im Rahmen: Pango für Schriften und Cairo für Grafiken sowie natürlich Cmake selbst dürften für alle Distributionen bereit stehen. Wichtig ist außerdem die Präsenz des Entwicklerpakets für Python2, sofern Sie nicht auf das grafische Tool zum Konfigurieren für das Panel verzichten wollen. Zu guter Letzt sollte Asciidoc nicht fehlen, um die Dokumentation zu erzeugen.

Glossar

XDG

Die XDG-Standards stammen aus dem Freedesktop-Projekt und beziehen sich in diesem Fall auf das Erzeugen eines Anwendungsmenüs, bei dem das System nach installierten grafischen Programmen sucht.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 10/2013 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben