Openbox-Desktop
Aus Fedorawiki.de
Auf älteren Rechnern kann es zuweilen vorkommen, dass GNOME oder KDE ein wenig zu träge sind. Oftmals wird einem dann zu XFCE oder einem reinen Windowmanager geraten. Letztere sind zwar von Haus aus extrem schnell, dafür aber nicht so einfach zu bedienen und konfigurieren wie die großen Desktop Environments. In diesem Artikel soll der Windowmanager Openbox so ausgerüstet werden, dass er einen möglichst komfortablen Ersatz für GNOME darstellt, dabei aber ungleich schneller ist.
Inhaltsverzeichnis |
Zielsetzung & Einschränkungen
Der Openbox-Desktop soll mit ähnlichem Komfort daherkommen wie der Gnome-Desktop. Dazu wird das Look & Feel an die Standardkonfiguration von Fedora Core 5 angepasst. Als Basis für die Menüeinträge der Programme wurde dabei eine Standardinstallation von Fedora Core 5 herangezogen. Im Gegensatz zum Gnome-Menü werden neue Programme aber nicht automatisch hinzugefügt und deinstallierte entfernt, was eine händische Konfiguration erfordert. Wechselmedien werden zudem nicht automatisch mit einem Icon auf dem Desktop angezeigt. Ein- und Ausbinden dieser kann aber über nautilus und das Icon Computer gehandhabt werden. Die Desktop-Icons müssen über eine Datei angelegt werden, was mit Drag&Drop nicht möglich ist. Da fbpanel einen festen Pfad zu den einzelnen Icons erfordert, macht dieser Umstand einen Wechsel des Icon-Themes umso schwerer.
Abgesehen davon gibt es leider für die verwendeten Programme keine vorgefertigten Pakete, so dass alle aus dem Quellcode compiliert werden müssen. Die Beschreibung auf den einzelnen Seiten sollte dies aber relativ einfach machen.
Voraussetzungen
Damit dies möglich ist, müssen neben Openbox zusätzliche Programme installiert werden. Die Installation selber ist auf eigenen Wiki-Seiten beschrieben, deswegen folgt hier nur eine Übersicht, was alles benutzt wird:
Grundlegend:
Optional:
Konfiguration
Openbox
Konfigurationsdateien
Erstellt, falls noch nicht vorhanden, die Ordner ~/.config/openbox/ und ~/.local/share/themes/.
mkdir -p ~/.config/openbox/ mkdir -p ~/.local/share/themes/
Anschließend nehmt einen Editor Eurer Wahl und legt die folgenden Dateien mit dem Inhalt der verlinkten Seiten an:
Theme
Als Theme soll ein Clearlooks-Port für Openbox verwendet werden. Dieser sollte zuerst einmal heruntergeladen werden:
Anschließend wird er ins Verzeichnis ~/.local/share/themes/ entpackt:
tar xzf clearlooks-0.6.tar.gz -C ~/.local/share/themes/
Seit xorg 7.0 machen die Openbox-Themes Probleme mit einigen Einstellungen. Diese sollten vorher ausgeräumt werden. Öffnet dazu mit einem Editor die ~/.local/share/themes/Clearlooks/openbox-3/themerc und ändert den Bereich unter Fonts wie folgt ab:
!!window.active.label.text.font:Bitstream Vera Sans:pixelsize=10:bold:shadow=y:shadowtint=70:shadowoffset=1 !!window.inactive.label.text.font:Bitstream Vera Sans:pixelsize=10:bold:shadow=y:shadowtint=20:shadowoffset=1 window.active.label.text.font:Bitstream Vera Sans:pixelsize=10:bold window.inactive.label.text.font:Bitstream Vera Sans:pixelsize=10:bold menu.items.font:Bitstream Vera Sans:pixelsize=10 !!menu.title.text.font:Bitstream Vera Sans:bold:pixelsize=10:shadow=y:shadowtint=70 menu.title.text.font:Bitstream Vera Sans:bold
Erstellung einer Startdatei für gdm/kdm
Das Paket für openbox bringt schon seine eigene Startdatei mit. Diese sollte nicht geändert werden, da diese Änderungen bei einer Aktualisierung des Paketes überschrieben werden würden. Besser ist es, eine eigene Datei unter dem Namen /usr/share/xsessions/openbox-desktop.desktop anzulegen. Diese hat dabei folgenden Inhalt:
[Desktop Entry] Encoding=UTF-8 Name=Openbox Desktop Comment=A small and clean Desktop Environment based upon Openbox Comment[de]=Ein kleiner und schlanker Desktop basierend auf Openbox TryExec=openbox Exec=/usr/local/bin/openbox-desktop.sh Terminal=False [Window Manager] SessionManaged=true
Der Inhalt des Skriptes openbox-desktop.sh folgt dabei weiter unten.
fbpanel
Für fbpanel steht ebenfalls eine vorgefertigte Einstellungsdatei bereit. Speichert sie unter dem angegebenen Namen:
idesk
Zuerst sollte die Konfigurationsdatei für iDesk angelegt werden:
Anschließend werden drei Dateien im Verzeichnis ~/.idesktop/ angelegt, um Icons für Computer, Persöhnliches Verzeichnis und den Müll zu haben:
~/.idesktop/computer.lnk
table Icon Caption: Computer Icon: /usr/share/icons/Bluecurve/48x48/apps/icon-computer.png Width: 48 Height: 48 X: 61 Y: 13 Command[0]: nautilus --no-desktop computer:/// Command[1]: nautilus --browser --no-desktop computer:/// end
~/.idesktop/home.lnk
table Icon Caption: Persöhnliches Verzeichnis Icon: /usr/share/icons/Bluecurve/48x48/apps/gnome-home.png Width: 48 Height: 48 X: 61 Y: 113 Command[0]: nautilus --no-desktop ~ Command[1]: nautilus --browser --no-desktop ~ end
~/.idesktop/trash.lnk
table Icon Caption: Müll Icon: /usr/share/icons/Bluecurve/48x48/mimetypes/trash-empty.png Width: 48 Height: 48 X: 61 Y: 203 Command[0]: nautilus --no-desktop trash:/// Command[1]: nautilus --browser --no-desktop trash:/// end
Das Icon für den Mülleimer verändert sich dabei nicht, wenn dieser gefüllt wird!
Hilfsskripte
Zudem müssen noch ein paar Skripte angelegt werden, die die Bedienung ein wenig vereinfachen. Diese sollten als root unter /usr/local/bin/ angelegt werden. Vergesst nicht, sie auch ausführbar zu machen (chmod +x).
grun.sh
Ein kleiner Workaround, um auf die Schnelle einen Befehl über die Tastenkombination ALT+F2 auszuführen:
#! /bin/bash COMMAND=`zenity --entry --text "Bitte Befehl eingeben"` exec $COMMAND
fbpanel-restart.sh
Damit das fbpanel sich selbst neu starten kann:
#! /bin/bash killall fbpanel fbpanel &
load_gnome.sh
Falls aus dem laufenden Betrieb von Openbox ein fast vollständiges Gnome (bis auf Metacity) geladen werden soll, hilft dieses Skript weiter:
#! /bin/bash # Reste entfernen killall idesk killall fbpanel killall kicker killall kdesktop killall artsd # Gnome nachladen gnome-panel & gnome-volume-manager & /usr/libexec/gnome-settings-daemon & /usr/libexec/evolution-data-server-1.2 & /usr/libexec/evolution/2.2/evolution-alarm-notify & esd --nobeeps & nautilus &
openbox-quit.sh
Eine kleine Hilfe, damit vor dem Abmelden, Rebooten und Herunterfragen sicherheitshalber noch eine Abfrage kommt:
#! /bin/bash
if [ -z $1 ];then
echo "Usage: $0 [logout|reboot|halt]"
exit
fi
if [ $1 = logout ];then
zenity --question --text "Benutzer wirklich abmelden?" && killall openbox
elif [ $1 = reboot ];then
zenity --question --text "PC wirklich neustarten?" && sudo /sbin/reboot
elif [ $1 = halt ];then
zenity --question --text "PC wirklich ausschalten?" && sudo /sbin/halt -p
fi
openbox-desktop.sh
Zuletzt wird noch ein Startskript für Openbox angelegt, dass die benötigten Programme auch startet. Zusätzlich zu den mindestens benötigten Befehlen sind noch ein paar weitere aufgenommen, die auskommentiert werden können, um sie ebenfalls beim Start zu laden:
#! /bin/bash # Falls idesk nicht verwendet werden soll, kann "display" aus dem Paket # "ImageMagick" benutzt werden, um das Hintergrundbild zu setzen #display -window root /usr/share/backgrounds/images/default.png # devilspie kann benutzt werden, um die Fenster von Programmen auf einen # bestimmten Desktop zu legen #devilspie & # Manche Gnome-Programme brauchen den gnome-settings-daemon, # um ihre Einstellungen zu laden #/usr/libexec/gnome-settings-daemon & # numlockx aus dem Paket "numlockx" aktiviert den Zahlenblock # beim Start. #numlockx & # idesk setzt das Hintergrundbild und ist für die Icons auf # dem Desktop verantwortlich idesk & # Der Ersatz für das gnome-panel fbpanel & # Damit ein Bildschirmschoner und die Funktion "Bildschirm sperren" # im fbpanel benutzt werden kann, muss gnome-screensaver geladen werden gnome-screensaver & # Der gnome-volume-manager muss gestartet werden, um Wechseldatenträger # (Usbsticks, CD-ROMs, usw) automatisch zu mounten #gnome-volume-manager & # Der Windowmanager wird erst am Schluss gestartet exec openbox
Rechte zum neustarten/herunterfahren
Damit die einzelnen Benutzer, das Recht haben, über das Menü von openbox oder fbpanel den Rechner neuzustarten oder auszuschalten, müssen die ensprechenden Rechte für sudo als root gesetzt werden:
su - visudo
Tragt dann ans Ende folgende Zeile ein. USERNAME muss dabei durch den Namen des eigenen Benutzers ersetzt werden:
# shutdown and reboot for defined users USERNAME ALL=NOPASSWD:/sbin/halt, /sbin/reboot
Tastenkombinationen
In der Konfigurationsdatei von Openbox wurde einige Tastenkombinationen geändert und andere hinzugefügt. Es folgt eine kurze Liste der wichtigsten Tastenkombinationen:
Allgemeine Kombinationen:
- STRG+F1 - Aufruf des Menüs von Openbox
- ALT+F2 - Aufruf des Ausführen-Dialogs
- STRG+ALT+Pos1 - Home-Verzeichnis öffnen
- STRG+ALT+t - Das Gnome-Terminal öffnen
- Druck/Print - Einen Screenshot machen
Kombinationen für Fenster:
- ALT+F4 - Aktives Fenster schliessen
- STRG+q - Aktives Fenster schliessen
- STRG+ATL+s - Aktives Fenster maximieren (Toggle)
- STRG+ALT+d - Aktives Fenster minimieren
- STRG+ALT+a - Aktives Fenster auf-/abrollen (Toggle)
- STRG+ALT+r - Größe des aktiven Fensters ändern
- WIN+d - Alle Fenster minimieren (Toggle)
- STRG+ALT+KP_1 - Aktives Fenster aus Arbeitsfläche 1 schieben
- STRG+ALT+KP_2 - Aktives Fenster aus Arbeitsfläche 2 schieben
- STRG+ALT+KP_3 - Aktives Fenster aus Arbeitsfläche 3 schieben
- STRG+ALT+KP_4 - Aktives Fenster aus Arbeitsfläche 4 schieben
- Shift+ALT+links - Aktives Fenster eine Arbeitsfläche nach links verschieben
- Shift+ALT+rechts - Aktives Fenster eine Arbeitsfläche nach rechts verschieben
Kombinationen für Arbeitsflächen:
- STRG+ALT+1 - Wechsel zur Arbeitsfläche 1
- STRG+ALT+2 - Wechsel zur Arbeitsfläche 2
- STRG+ALT+3 - Wechsel zur Arbeitsfläche 3
- STRG+ALT+4 - Wechsel zur Arbeitsfläche 4
- STRG+ALT+links - Eine Arbeitsfläche nach links wechseln
- STRG+ALT+rechts - Eine Arbeitsfläche nach rechts wechseln
Diese Tastenkombinationen können natürlich durch editieren von ~/.config/openbox/rc.xml geändert werden.
Screenshot-Galerie
Auf den Bildern können noch einmal genauer die einzelnen Menüs betrachtet werden: