Openbox: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Keine Bearbeitungszusammenfassung
Komplette optische und teilweise inhaltliche Überarbeitung des gesamten Artikels
Zeile 1: Zeile 1:
<div style="margin:1em; padding:1em; background-color: #a40000; border:0.5em solid #cc0000; color:#eeeeec;"><strong>Achtung!</strong> Die Seite ist zwar aktuell, und die angaben richtig! Ich, Dirk Sohler, überarbeite diese Seite allerdings gerade stilistisch und teilweise auch inhaltlich. Um bearbeitungskonflikte zu vermeiden, bitte vorerst nichts an dieser Seite ändern. Danke!</div>
Diese Seite beschreibt die Installation und Konfiguration des Window-Managers „Openbox“. Openbox ist ein Fenstermanager für X basierend auf dem Quellcode von Blackbox 0.65.0. Ab Version 3 wurde Openbox komplett in C neu geschrieben, lehnt sich jedoch immer noch an das Aussehen von Blackbox an (Wikipedia).


==Info==
== Installation ==
Diese Seite beschreibt die Installation und Konfiguration des Window-Managers "OpenBox".
Es wird davon ausgegangen, dass der [[X|X-Server]] bereits installiert ist, und funktioniert. Für die Verwendung von Openbox muss das gleichnamige Paket aus „[[Pacman#Repositorien_und_Spiegel-Server|extra]]“ installiert werden.


pacman -Sy openbox


==Installation==
Nach der Installation wird folgende Meldung auf der Standardausgabe (stdout) ausgegeben:
Zunächst muss das Package installiert werden:
  pacman -Sy openbox


Zum Abschluss der Installation wird auf der StdOut die nachstehende Meldung ausgegeben:
Place menu.xml and rc.xml in ~/.config/openbox
  Place menu.xml and rc.xml in ~/.config/openbox
They can both be found in /etc/xdg/openbox
  They can both be found in /etc/xdg/openbox


Darauf reagieren wir, mit den folgenden Befehlen:
Das kopieren der Dateien ist nötig, um die Einstellungen je Benutzer verwalten zu können. Wenn OpenBox diese Dateien nicht vorfindet, werden die Dateien in /etc/xdg/openbox verwendet. Es ist sinnvoll, die Dateien in das eigene home-Verzeichnis zu kopieren, da ansonsten einige Tools (s.u.) nicht richtig arbeiten, und man zum Bearbeiten der Konfiguration ansonsten root-Rechte braucht.
  mkdir -p ~/.config/openbox
  cp /etc/xdg/openbox/rc.xml ~/.config/openbox/
  cp /etc/xdg/openbox/menu.xml ~/.config/openbox/


Um OpenBox als Window-Manager zu nutzen, wird abschließend die Datei ~/.xinitrc mit dem folgenden Eintrag angepasst:
Zuerst wird also das Verzeichnis angelegt, und dann die angegebenen Dateien in dieses Verzeichnis kopiert.
  exec openbox-session


==Konfiguration==
mkdir -p ~/.config/openbox
Konfigurieren kann man OpenBox über die Datei ~/.config/openbox/rc.xml, jedoch gibt es für diese Aufgabe auch das grafische Interface "OBconf", welches zunächst installiert werden muss:
cp /etc/xdg/openbox/rc.xml ~/.config/openbox/
  pacman -Sy obconf
cp /etc/xdg/openbox/menu.xml ~/.config/openbox/


Das Kontextmenü, welches man by default über einen rechten Mausklick auf den Desktop erreicht, kann über die Datei ~/.config/openbox/menu.xml angepasst werden. Doch auch hier gibt ein Tool namens "OBmenu", welches eine GUI zur Verfügung stellt:
Damit Openbox beim Start von X gleich mitgestartet wird, und man es sofort verwenden kann, bedarf es eines Eintrages in der Datei ~/.xinitrc“. Es ist diese Datei also in einem Texteditor zu öffnen, und dort folgendes am Ende hinzuzufügen.
  pacman -Sy obmenu


Um mehrere virtuelle Desktops verwalten zu können, greifen wir auf "OBpager" zurück. Dieses Tool ermöglicht, die virtuellen Desktops anzuzeigen auf selbige, mittels Klick auf das Thumbnail, zu wechseln. Dessen Installation ist jedoch etwas umfangreicher. Wir bedienen uns dazu dem Package-Builder:
exec openbox-session
  wget <nowiki>http://aur.archlinux.org/packages/obpager/obpager/PKGBUILD</nowiki>
zunächst müssen die Download-Links ab Zeile 15 im PKGBUILD-File angepasst werden.


alt:
Sollte die Datei nicht existieren, so ist sie anzulegen.
  source=("<nowiki>http://dl.sourceforge.net/sourceforge/obpager/$pkgname-$pkgver.tar.gz</nowiki>"
          "main.cc.patch" "OBPager.h.patch" "XHelperClasses.h.patch" "Makefile.patch")
neu:
  source=("<nowiki>http://downloads.sourceforge.net/obpager/$pkgname-$pkgver.tar.gz</nowiki>"
          "<nowiki>http://aur.archlinux.org/packages/obpager/obpager/main.cc.patch</nowiki>"
          "<nowiki>http://aur.archlinux.org/packages/obpager/obpager/OBPager.h.patch</nowiki>"
          "<nowiki>http://aur.archlinux.org/packages/obpager/obpager/XHelperClasses.h.patch</nowiki>"
          "<nowiki>http://aur.archlinux.org/packages/obpager/obpager/Makefile.patch</nowiki>")


(not needed right now - I have changed my PKGBUILD & sorry, I can't speak germen :) -- Mainiak)
== Konfiguration ==
[[Bild:Obconf.png‎|thumb|Anzeige der Fensterkonfiguration in Obconf]]


nun kann die Package-Erstellung und danach die Installation erfolgen:
Konfigurieren kann man OpenBox über die Datei „~/.config/openbox/rc.xml“, jedoch gibt es für diese Aufgabe auch das grafische Interface "OBconf", welches zunächst installiert werden muss
  makepkg
  pacman -U <package>.pkg.tar.gz


und abschließend wird, für den automatischen Start, die ~/.xinitrc ergänzt:
pacman -Sy obconf
  obpager &


Um Programme wie Pypanel automatisch starten zu lassen nutzt man die
Gestartet wird das Programm mittels des Aufrufes „obconf“. Hier können nun diverse Anpassungen vorgenommen werden, so können zum Beispiel das Theme oder das Fensterverhalten angepasst werden, sowie die Fenstericons konfiguriert werden.. Das Menü, das man sich über einen Rechtasklick auf dem Desktop anzeigen lassen kann, wird hier allerdings nicht konfiguriert, dies geschieht in der Datei „~/.config/openbox/menu.xml“. Natürlich gibt es auch für diese Datei ein grafisches Konfigurationstool. Dieses muss jedoch auch erst installiert werden.
autostart.sh
in ~/.config/openbox/ . Wenn die Datei noch nicht vorhanden ist, kann man sie einfach erstellen. Praktisch wenn man Openbox zum Beispiel über GDM startet.  


Ein Beispiel:
pacman -Sy obmenu


#!/bin/bash
[[Bild:Obmenu.png‎|thumb|Konfiguration des Openbox-Menüs über Obmenu]]
# This shell script is run before Openbox launches.
# Environment variables set here are passed to the Openbox session.
pypanel &
conky_start


Danach ist das Tool über den Aufruf von „obmenu“ zu starten. Dieses Tool bietet für die Konfiguration ausreichende Funktionen, unterstützt aber nicht alle Funktionen der menu.xml, so sind derzeit (2008-12-05, Version 1.0-5) Labels für Seperatoren – die diese dann zu überschriften machen – derzeit nicht unterstützt. Ein weiteres PRpoblem ergibt sich, wenn man alle Menüs entfernt: Es kann kein neues Menü angelegt werden. Das „root-menu“ sollte darüber hinaus nicht entfernt werden. Innerhalb dieses Menüs wird alles angezeigt, was über Rechtsklick verfügbar ist.


===Hintergrundbild anpassen===
[[Bild:openbox-desktopwechsel.png‎|thumb|Die Desktopwechsel-Anzeige beim Wechseln auf einen mit „Temporär“ benannten Desktop]]
 
Openbox unterstützt selbstverständlich mehrere virtuelle Desktops. Diese können mit den Tastenkombinationen „Windowstaste+F*“, wobei „F*“ deine Der F-Tasten (F1 bis F12) ist, die Zahl der Taste entspricht dabei der Nummer des virtuellen Desktops. Zudem besteht die möglichkeit, mittels Strg+Alt+CursorLinks/CursorRechts zum jeweils nächsten bzw. vorherigen Desktop zu wechseln. Auch das Drehen des Mausrades auf dem Desktop, bzw. bei gedrücktem Str+Alt auch „in“ Anwendungsfenstern. Wenn man allerdings lieber ein Grafisches Verwaltungstool für die Desktops haben möchte, bedarf es eines Zusatztools. Allerdings befindet sich das originäre Openbox-Desktopverwaltungstool „obpager“ nicht in den Repositories, sondern derzeit nur im [[ArchLinux_User-Community_Repository|AUR]].
 
Wem es nur darauf ankommt, die Desktops grafisch verwalten zu können, der kann auch auf z.B. „bbpager“ zurpckgreifen, das sich im „extra“-Repository von ARch befindet, und ganz normal über Packman installiert werden kann. Wer lieber den Openbox-Pager verwenden möchte, muss diesen aus dem AUR installieren (ausführliche Informationen dazu siehe [[ArchLinux_User-Community_Repository|AUR-Wikiseite]]). Nachfolgend eine Kurzanleitung zum Bauen des obpager-Paketes.
 
wget <nowiki>http://aur.archlinux.org/packages/obpager/obpager/PKGBUILD</nowiki>
makepkg
pacman -U obpager.pkg.tar.gz
 
Wobei „obpager“ durch den tatsächlichen Namen zu ersetzen ist. Damit der Pager beim Start von Openbox auch mitgestartet wird, ist es sinnvoll, den Aufruf in die autostart-Datei von Openbox zu legen. Diese befindet sich unter „~/.config/openbox/autostart.sh“, oder muss dort erst angelegt werden. In diese Datei wird nun …
 
obpager &
 
… geschrieben. Das Kaufmanns-Und am Ende ist wichtig, damit nachfolgende Befehle ebenfalls ausgeführt werden.
 
== Hintergrundbild anpassen ==
OpenBox ist nicht darauf ausgerichtet, Hintergrundbilder zu verwalten. Man kann hier zum Beispiel auf den Bildbetrachter „feh“ zurückgreifen. Jedoch könnten dafür auch „display“ aus dem ImageMagick-Paket, „xsetbg“ oder „Nitrogen“ verwendet werden.
OpenBox ist nicht darauf ausgerichtet, Hintergrundbilder zu verwalten. Man kann hier zum Beispiel auf den Bildbetrachter „feh“ zurückgreifen. Jedoch könnten dafür auch „display“ aus dem ImageMagick-Paket, „xsetbg“ oder „Nitrogen“ verwendet werden.


==== Feh ====
=== Feh ===
Feh ist ein kleiner, schneller befehlszeilenbasierter Bildbetrachter, mittels dem es unter andere auch möglich ist, das Hintergrundbild des X-Servers anzupassen. Zuerst muss Feh natürlich installiert werden.
Feh ist ein kleiner, schneller befehlszeilenbasierter Bildbetrachter, mittels dem es unter anderem auch möglich ist, das Hintergrundbild des X-Servers anzupassen. Zuerst muss Feh natürlich installiert werden.


  pacman -Sy feh
  pacman -Sy feh
Zeile 78: Zeile 68:
  feh --bg-center <path>/<image>.png
  feh --bg-center <path>/<image>.png


Der Hintergrund geht jedoch mit Beenden der Session verloren. Um ihn dauerhaft einzurichten wird die Datei ~/.xinitrc um den folgenden Eintrag ergänzt:
Der Hintergrund geht jedoch mit Beenden der Session verloren. Um ihn dauerhaft einzurichten wird die Datei ~/.xinitrc um den folgenden Eintrag ergänzt. Der eintrag sollte vor dem Openbox-Aufruf (s.o.) stehen:
 
eval `cat ~/.fehbg` &


Wobei in der Datei „.fehbg“ dann der oben genannte Befehl steht.
feh --bg-center <path>/<image>.png &


====Nitrogen====
=== Nitrogen ===
Wenn an es etwas Komfortabler – aber dennoch schlank – haben will kann auch [http://projects.l3ib.org/nitrogen/ Nitrogen] verwenden um ein Hintergrundbild zu setzen. Nitrogen zeigt alle Bilder in einem festgelegten Verzeichnis als Vorschau an und man kann eines auswählen.
Wenn an es etwas Komfortabler – aber dennoch schlank – haben will kann auch [http://projects.l3ib.org/nitrogen/ Nitrogen] verwenden um ein Hintergrundbild zu setzen. Nitrogen zeigt alle Bilder in einem festgelegten Verzeichnis als Vorschau an und man kann eines auswählen.


Zuerst muss Nitrogen installiert werden
Zuerst muss Nitrogen installiert werden.


  pacman -Sy nitrogen
  pacman -Sy nitrogen
Zeile 98: Zeile 86:


  <item label="Nitrogen">
  <item label="Nitrogen">
  <action name="Execute"><command>nitrogen ~/.wallpapers</command></action>
  <action name="Execute"><command>nitrogen ~/.wallpapers</command></action>
  </item>
  </item>


Beim Neustart geht der Hintergrund allerdings wieder verloren. Damit der zuletzt aktive Hintergrund beim nächsten Start von Openbox wieder geladen wird, muss man in der Nitrogen-Oberfläche ein Häkchen bei „Save“ machen und folgendes in die ~/.xinitrc eintragen:
Beim Neustart geht der Hintergrund allerdings wieder verloren. Damit der zuletzt aktive Hintergrund beim nächsten Start von Openbox wieder geladen wird, muss man in der Nitrogen-Oberfläche ein Häkchen bei „Save“ machen und folgendes in die ~/.xinitrc eintragen, auch hier sollte man darauf achten, dass der Aufruf vor dem Openbox-Start stehet. Ansonsten muss man den Openbox-Start ebenfalls mit einem Abschließenden Kaufmanns-Und versehen:


  nitrogen --restore &
nitrogen --restore &


====display (Imagemagick)====
=== display (Imagemagick) ===
„display“ ist teil des [http://www.imagemagick.org/script/index.php ImageMagick]-Paketes, dieses Paket bietet neben diesem Programm noch eine Reihe weiterer sinnvoller Tools.
„display“ ist teil des [http://www.imagemagick.org/script/index.php ImageMagick]-Paketes, dieses Paket bietet neben diesem Programm noch eine Reihe weiterer sinnvoller Tools.


Zeile 114: Zeile 102:
  display -window root wallpaper.png
  display -window root wallpaper.png


… das Hintergrundbild gesetzt werden. Damit das Hintergrundbild nach dem neustart auch weiterhin vorhanden ist, muss man den Aufruf zum Beispiel in die „autostart.sh“ von Openbox setzen:
… das Hintergrundbild gesetzt werden. Damit das Hintergrundbild nach dem neustart auch weiterhin vorhanden ist, muss man den Aufruf zum Beispiel in die „autostart.sh“ von Openbox setzen. Selbstverständlich kann man den Eintrag aber auch in die .xinitrc schreiben:


  display -window root .wallpaper.png &
  display -window root .wallpaper.png &


===Themes verwenden===
=== Themes verwenden ===
====Openbox Themes====
==== Openbox Themes ====
Die Openbox Themes legen das Aussehen der Fenster und des Openbox Menüs fest. Das Openbox Paket enthält einige Standard-Themes. Das Paket ''openbox-themes'' stellt ein paar weitere zur Verfügung. Installation mit:
Die Openbox Themes legen das Aussehen der Fenster und des Openbox Menüs fest. Das Openbox Paket enthält einige Standard-Themes. Das Paket „openbox-themes“ stellt ein paar weitere Themes zur Verfügung.
 
  pacman -S openbox-themes
  pacman -S openbox-themes
Es gibt aber noch weitaus mehr Themes. Eine gute Quelle ist z.B. [http://www.box-look.org/index.php?xcontentmode=7402 box-look.org].
Es gibt aber noch weitaus mehr Themes. Eine gute Quelle ist z.B. [http://www.box-look.org/index.php?xcontentmode=7402 box-look.org].


Runtergeladene Themes sollten nach ''~/.themes'' entpackt werden.  
Runtergeladene Themes sollten nach ~/.themes“ entpackt werden.
 
Die Themes können dann mittels „Obconf“ ausgewählt werden.


Die Themes können mit ''Obconf'' installiert bzw. ausgewählt werde.
==== Gtk-Themes ====
[[Bild:Gtk-chtheme.png|thumb|Anzeigen eines Gtk-Themes über Gtk-chtheme]]


====Gtk Themes====
Gtk-2 Themes können mit dem Programm ''gtk-chtheme'' oder ''switch2'' verwaltet werden.
Gtk-2 Themes können mit dem Programm ''gtk-chtheme'' oder ''switch2'' verwaltet werden.
  pacman -S gtk-chtheme
  pacman -S gtk-chtheme
bzw.
bzw.
  pacman -S gtk-theme-switch2
  pacman -S gtk-theme-switch2
Einfach ''gtk-chtheme'' oder ''switch2'' ausführen und das gewünschte Theme auswählen.
Einfach ''gtk-chtheme'' oder ''switch2'' ausführen und das gewünschte Theme auswählen.


Gtk-1 Themes können mit dem Programm ''switch'' eingestellt werden.  
Gtk-1 Themes können mit dem Programm ''switch'' eingestellt werden.  
  pacman -S gtk-theme-switch
  pacman -S gtk-theme-switch


====Gtk Schriftart====
==== Gtk-Schriftart ====
Die Gtk Schriftart kann man mit den bereits genannten Programmen ''gtk-chtheme'' und ''switch2'' bzw. ''switch'' einstellen. Oder man fügt folgendes in die ''~/gtkrc.mine'' ein:
Die Gtk Schriftart kann man mit den bereits genannten Programmen ''gtk-chtheme'' und ''switch2'' bzw. ''switch'' einstellen. Oder man fügt folgendes in die ~/gtkrc.mine“ ein
  style "user-font"
 
style "user-font"
  {
  {
  font_name = "[font-name] [size]"
  font_name = "[font-name] [size]"
Zeile 146: Zeile 144:
  widget_class "*" style "user-font"
  widget_class "*" style "user-font"
  gtk-font-name = "[font-name] [size]"
  gtk-font-name = "[font-name] [size]"
Wobei [font-name] und [size] für die gewünschte Schriftart und deren Größe stehen. Zum Bispiel:
Wobei [font-name] und [size] für die gewünschte Schriftart und deren Größe stehen. Zum Bispiel:
  style "user-font"
  style "user-font"
  {
  {
Zeile 153: Zeile 153:
  widget_class "*" style "user-font"
  widget_class "*" style "user-font"
  gtk-font-name = "DejaVu Sans 8"
  gtk-font-name = "DejaVu Sans 8"
Es werden beide Felder ''font_name'' und ''gtk-font-name'' benötigt, um Abwärtskompatibilität sicherzustellen.


====Gtk Icons====
Es werden beide Felder „font_name“ und „gtk-font-name“ benötigt, um Abwärtskompatibilität sicherzustellen.
Das gewünschte Icon Theme entweder nach ''/usr/share/icons'' (Systemweit) oder ''~/.icons'' (User) entpacken.
 
==== Gtk-Icons ====
Das gewünschte Icon Theme entweder nach /usr/share/icons“ (Systemweit) oder ~/.icons“ (User) entpacken.


Folgendes in der Datei ''~/.gtkrc.mine'' hinzufügen:
Folgendes in der Datei ~/.gtkrc.mine“ hinzufügen:


  gtk-icon-theme-name = "[name-of-icon-theme]"
  gtk-icon-theme-name = "[name-of-icon-theme]"
Zeile 166: Zeile 167:
  gtk-icon-theme-name = "Tango"
  gtk-icon-theme-name = "Tango"


====Mauszeiger Themes====
==== Mauszeiger-Themes ====
Das gewünschte Xcursor Theme entweder nach ''/usr/share/icons'' (Systemweit) oder ''~/.icons'' (User) entpacken.
Das gewünschte Xcursor Theme entweder nach /usr/share/icons“ (Systemweit) oder ~/.icons“ (User) entpacken.


Folgendes in der Datei ''~/.Xdefaults'' hinzufügen:
Folgendes in der Datei ~/.Xdefaults“ hinzufügen:


  Xcursor.theme:   [name-of-cursor-theme]
  Xcursor.theme: [name-of-cursor-theme]


Wobei [name-of-cursor-theme] der Name des Theme Verzeichnisses ist. Zum Beispiel:
Wobei [name-of-cursor-theme] der Name des Theme Verzeichnisses ist. Zum Beispiel:
Zeile 177: Zeile 178:
  Xcursor.theme: Vanilla-DMZ-AA
  Xcursor.theme: Vanilla-DMZ-AA


Das Paket ''xcursor-themes'' enthält die drei default Themes redglass, whiteglass und handhelds. Es wird automatisch beim installieren des XServers als Abhängigkeit mit installiert.
Das Paket „xcursor-themes“ enthält die drei default Themes redglass, whiteglass und handhelds. Es wird automatisch beim installieren des XServers als Abhängigkeit mit installiert.


Einige Anwendungen ignorieren diese Einstellungen unter gewissen Umständen allerdings. Daher kann man auch einen Softlink erstellen. Dieser Verweist dann als „default“ auf das verwendete Theme.
Einige Anwendungen ignorieren diese Einstellungen unter gewissen Umständen allerdings. Daher kann man auch einen Softlink erstellen. Dieser Verweist dann als „default“ auf das verwendete Theme.
Zeile 183: Zeile 184:
  ln -s /pfad/zum/cursortheme /usr/share/icons/default
  ln -s /pfad/zum/cursortheme /usr/share/icons/default


==Empfehlenswerte Programme==
== Empfehlenswerte Programme ==
Openbox hat von Haus aus keine Funktionen wie z.B. Panel, Systemtray, Dateimanager und ähnliches.  
Openbox hat von Haus aus keine Funktionen wie z.B. Panel, Systemtray, Dateimanager und ähnliches.  
Deshalb hier mal eine Auswahl von Programmen mit denen man sich seine individuelle Arbeitsumgebung schaffen kann.
Deshalb hier mal eine Auswahl von Programmen mit denen man sich seine individuelle Arbeitsumgebung schaffen kann.
===Login Manager===
Wer Openbox per Login Manager starten will, sollte sich mal [[Login-Manager#SLiM | SLiM]] ansehen.
SLiM hat keine Abhängigkeiten zu Gnome oder KDE


===Ausführen Dialog===
=== Login-Manager ===
Eigentlichist ein Login-Manager bei einer reinen Kombination aus X und Openbox nicht nötig. Es gibt einen kleinen „Trick“, wie man direkt nachdem einloggen an der Befehlszeile nach dem Booten ohne Grafischen Login-Manager X startet. Dazu erstellt man in der Datei „.bashrc“, bzw. „.bash_profile“ eine If-Abrage.
 
if [ "$(tty)" = "/dev/vc/1" ]; then
  startx
  logout
fi
 
Diese Abfrage prüft, ob das verwendete Terminal das erste ist. Dies ist nach dem booten der Fall. Wenn man sich hier nun mit seinem Benutzernamen anmeldet, und die .bashrc ausgeführt wird, wird über „startx“ umgehend X gestartet. Wenn man X wieder beendet (entweder durch Ausloggen aus Openbox, oder z.B. das Drücken von Strg+Alt+Backspace), wird man automatisch wieder ausgeloggt.
 
Wer Openbox dennoch per Login Manager starten will, sollte sich mal [[Login-Manager#SLiM|SLiM]] ansehen. SLiM hat keine Abhängigkeiten zu Gnome oder KDE. Einen überblick über verschiedene Login-Manager bietet der Wiki-Artikel [[Login-Manager]].


=== Ausführen-Dialog ===
==== Gmrun ====
==== Gmrun ====
 
Wer eine Dialogbox zum Starten von Programmen, ähnlich der Alt-F2 Funktion in Gnome und KDE, haben möchte, kann sich [http://sourceforge.net/projects/gmrun gmrun] installieren.
Wer eine Dialogbox zum starten von Programmen, ähnlich der Alt-F2 Funktion in Gnome und KDE, haben möchte, kann sich [http://sourceforge.net/projects/gmrun gmrun] installieren.


  pacman -Sy gmrun
  pacman -Sy gmrun


Um ''gmrun'' mit Alt-F2 zu starten, folgendes in den <keyboard> Abschnitt in der ''~/.config/openbox/rc.xml'' einfügen.
Um „gmrun“ mit Alt-F2 zu starten, folgendes in den <keyboard> Abschnitt in der ~/.config/openbox/rc.xml“ einfügen.


  <keybind key="A-F2">
  <keybind key="A-F2">
  <action name="execute"><execute>gmrun</execute></action>
  <action name="execute"><execute>gmrun</execute></action>
  </keybind>
  </keybind>
Damit diese Einstellung übernommen wird, muss die Konfiguration neu eingelesen werden, dies geschieht mittels …
openbox --reconfigure
… oder indem man sich ausloggt, und widder einloggt.


==== Launchy ====
==== Launchy ====
[http://www.launchy.net/ Launchy] verfolgt einen weniger minimalistischen Ansatz; das Aussehen kann mit Hilfe von Skins angepasst werden, es stellt Funktionen wie Rechner oder das Abrufen von Wetterberichten bereit. Ürsprünglich für Windows, ähnelt Gnome Do.
[http://www.launchy.net/ Launchy] verfolgt einen weniger minimalistischen Ansatz; das Aussehen kann mit Hilfe von Skins angepasst werden, es stellt Funktionen wie Rechner oder das Abrufen von Wetterberichten bereit. Ürsprünglich für Windows, ähnelt Gnome Do.
  pacman -S launchy
  pacman -S launchy
Aufruf über Ctrl + Leertaste.
Aufruf über Ctrl + Leertaste.


Zeile 217: Zeile 233:


==== Bashrun ====
==== Bashrun ====
[http://bashrun.sourceforge.net bashrun] bashrun stellt eine bash session im Stil eines Ausführen Dialogs zur Verfügung. Programme können so mit Hilfe der von der Shell gewohnten Funktionen wie Tab-Completion und History ausgeführt werden.
[http://bashrun.sourceforge.net bashrun] bashrun stellt eine bash-Session im Stil eines Ausführen-Dialogs zur Verfügung. Programme können so mit Hilfe der von der Shell gewohnten Funktionen wie Tab-Completion und History ausgeführt werden.


  pacman -S bashrun
  pacman -S bashrun
Zeile 223: Zeile 239:
Die folgenden Einstellungen werden für openbox empfohlen:  
Die folgenden Einstellungen werden für openbox empfohlen:  


    <application name="bashrun">
<application name="bashrun">
      <desktop>all</desktop>
  <desktop>all</desktop>
      <decor>no</decor>
  <decor>no</decor>
      <focus>yes</focus>
  <focus>yes</focus>
      <skip_pager>yes</skip_pager>
  <skip_pager>yes</skip_pager>
      <skip_taskbar>yes</skip_taskbar>
  <skip_taskbar>yes</skip_taskbar>
      <layer>above</layer>
  <layer>above</layer>
    </application>
</application>
 
===Desktop Icons===
Openbox hat keine eigene Funktion um Icons auf dem Desktop darzustellen.
 
Wer darauf nicht verzichten möchte, kann z.B. [http://idesk.sourceforge.net/wiki/index.php/Main_Page iDesk], [http://roscidus.com/desktop/ ROX] oder auch Nautilus (plus 'gnome-settings-daemon') verwenden. 


ROX ist gleichzeitig auch noch ein schlanker Dateimanager.
=== Desktop-Icons ===
Openbox hat keine eigene Funktion um Icons auf dem Desktop darzustellen. Wer darauf dennoch nicht verzichten möchte, kann z.B. [http://idesk.sourceforge.net/wiki/index.php/Main_Page iDesk], [http://roscidus.com/desktop/ ROX], [http://pcmanfm.sourceforge.net/ PCManFM] oder auch Nautilus (plus 'gnome-settings-daemon') verwenden. ROX und PCManFM sind gleichzeitig auch noch schlanke Dateimanager.


===Panels===
=== Panels ===
Es gibt zahlreiche Panels (Pager ect.) die man mit Openbox verwenden kann. Zum Beispiel diese hier:
Es gibt zahlreiche Panels, Pager, etc. die man mit Openbox verwenden kann. Zum Beispiel diese hier:


*[http://wiki.archlinux.de/?title=Pypanel PyPanel]
* [[Pypanel]]
*[http://fbpanel.sourceforge.net/ fbpanel]
* [http://fbpanel.sourceforge.net/ fbpanel]
*[http://www.chatjunkies.org/fspanel/ fspanel]
* [http://www.chatjunkies.org/fspanel/ fspanel]
*[http://nsf.110mb.com/bmpanel/ BMPanel]
* [http://nsf.110mb.com/bmpanel/ BMPanel]
*[http://aur.archlinux.org/packages.php?ID=8336 PerlPanel]
* [http://aur.archlinux.org/packages.php?ID=8336 PerlPanel]
*[http://code.google.com/p/ttm/ Tint]
* [http://code.google.com/p/ttm/ Tint]
*[http://sourceforge.net/projects/lxpanel LXPanel]
* [http://sourceforge.net/projects/lxpanel LXPanel]
*[http://projects.l3ib.org/trac/visibility Visibility]
* [http://projects.l3ib.org/trac/visibility Visibility]
*[http://wbar.warlockshome.com.ar/ Wbar]
* [http://wbar.warlockshome.com.ar/ Wbar]
*[http://stalonetray.sourceforge.net/ Stalonetray]
* [http://stalonetray.sourceforge.net/ Stalonetray]
*[http://bbtools.sourceforge.net/ bbpager]
* [http://bbtools.sourceforge.net/ bbpager]
*[http://www.xfce.org/projects/xfce4-panel/ xfce4-panel]
* [http://www.xfce.org/projects/xfce4-panel/ xfce4-panel]
*ObPager (siehe oben)
* ObPager (siehe oben)


Um die gewünschten Programme beim Start von Openbox zu starten, sollte ein entsprechender Eintrag in der ~/.xinitrc reichen.
Um die gewünschten Programme beim Start von Openbox zu starten, sollte ein entsprechender Eintrag in der Openbox-Autostartdatei (s.o.) reichen.


===Dateimanager===
=== Dateimanager ===
Es gibt zahlreiche Dateimanager. Deshalb hier nur eine kleine Auswahl.
Es gibt zahlreiche Dateimanager. Deshalb hier nur eine kleine Auswahl.
*[http://thunar.xfce.org/index.html Thunar]  standard Dateimanager der Xfce-Desktop-Umgebung, bietet u.a. auto-mount Funktionen
*[http://www.fly-bird.org/news.php FlyBird]
*[http://pcmanfm.sourceforge.net/ PCman]  pcmanfm
*[http://roscidus.com/desktop/ ROX]  kann auch Desktop Icons darstellen
*[http://roland65.free.fr/xfe/ xfe]  X File Explorer, erinnert an den MS-Explorer
*[http://emelfm.sourceforge.net/ emelFM]  sehr schlank, gtk-1
*[http://www.obsession.se/gentoo/ gentoo]  sehr schlank, gtk-1
Natürlich kann auch der [[Gnome | GNOME]] Dateimanager Nautilus verwendet werden. Er ist zwar nicht so schlank wie die oben genannten, hat aber den Vorteil, dass z.B. remote SSH, FTP, Samba und Desktop Icons unterstüzt werden.
==Links==
http://www.icculus.org/openbox


http://de.wikipedia.org/wiki/Openbox
* [http://thunar.xfce.org/index.html Thunar] ist der Standard-Dateimanager der Xfce-Desktop-Umgebung
* [http://www.fly-bird.org/news.php FlyBird]
* [http://pcmanfm.sourceforge.net/ PCManFM]
* [http://roscidus.com/desktop/ ROX] kann auch Desktop Icons darstellen
* [http://roland65.free.fr/xfe/ X File Explorer] – erinnert an den „Explorer“ von Windows
* [http://emelfm.sourceforge.net/ emelFM] sehr schlank, Gtk-1
* [http://www.obsession.se/gentoo/ gentoo] sehr schlank, Gtk-1


http://www.box-look.org
Natürlich kann auch der [[Gnome|GNOME]]-Dateimanager Nautilus verwendet werden. Er ist zwar nicht so schlank wie die oben genannten, hat aber den Vorteil, dass z.B. remote SSH, FTP und Samba direkt unterstüzt werden. Zudem kann Nautilus, ebenso wie einige der oben genannten Dateimanager die Desktop-Icons anzeigen.


http://themes.freshmeat.net/browse/1086/
== Links ==
* http://www.icculus.org/openbox
* http://de.wikipedia.org/wiki/Openbox
* http://www.box-look.org
* http://themes.freshmeat.net/browse/1086/
* http://urukrama.wordpress.com/openbox-guide/


http://urukrama.wordpress.com/openbox-guide/
[[Kategorie:Window / Desktop -Manager]]
[[Kategorie:Window / Desktop -Manager]]
[[Kategorie:Installation]]

Version vom 5. Dezember 2008, 21:38 Uhr

Diese Seite beschreibt die Installation und Konfiguration des Window-Managers „Openbox“. Openbox ist ein Fenstermanager für X basierend auf dem Quellcode von Blackbox 0.65.0. Ab Version 3 wurde Openbox komplett in C neu geschrieben, lehnt sich jedoch immer noch an das Aussehen von Blackbox an (Wikipedia).

Installation

Es wird davon ausgegangen, dass der X-Server bereits installiert ist, und funktioniert. Für die Verwendung von Openbox muss das gleichnamige Paket aus „extra“ installiert werden.

pacman -Sy openbox

Nach der Installation wird folgende Meldung auf der Standardausgabe (stdout) ausgegeben:

Place menu.xml and rc.xml in ~/.config/openbox
They can both be found in /etc/xdg/openbox

Das kopieren der Dateien ist nötig, um die Einstellungen je Benutzer verwalten zu können. Wenn OpenBox diese Dateien nicht vorfindet, werden die Dateien in /etc/xdg/openbox verwendet. Es ist sinnvoll, die Dateien in das eigene home-Verzeichnis zu kopieren, da ansonsten einige Tools (s.u.) nicht richtig arbeiten, und man zum Bearbeiten der Konfiguration ansonsten root-Rechte braucht.

Zuerst wird also das Verzeichnis angelegt, und dann die angegebenen Dateien in dieses Verzeichnis kopiert.

mkdir -p ~/.config/openbox
cp /etc/xdg/openbox/rc.xml ~/.config/openbox/
cp /etc/xdg/openbox/menu.xml ~/.config/openbox/

Damit Openbox beim Start von X gleich mitgestartet wird, und man es sofort verwenden kann, bedarf es eines Eintrages in der Datei „~/.xinitrc“. Es ist diese Datei also in einem Texteditor zu öffnen, und dort folgendes am Ende hinzuzufügen.

exec openbox-session

Sollte die Datei nicht existieren, so ist sie anzulegen.

Konfiguration

Anzeige der Fensterkonfiguration in Obconf

Konfigurieren kann man OpenBox über die Datei „~/.config/openbox/rc.xml“, jedoch gibt es für diese Aufgabe auch das grafische Interface "OBconf", welches zunächst installiert werden muss

pacman -Sy obconf

Gestartet wird das Programm mittels des Aufrufes „obconf“. Hier können nun diverse Anpassungen vorgenommen werden, so können zum Beispiel das Theme oder das Fensterverhalten angepasst werden, sowie die Fenstericons konfiguriert werden.. Das Menü, das man sich über einen Rechtasklick auf dem Desktop anzeigen lassen kann, wird hier allerdings nicht konfiguriert, dies geschieht in der Datei „~/.config/openbox/menu.xml“. Natürlich gibt es auch für diese Datei ein grafisches Konfigurationstool. Dieses muss jedoch auch erst installiert werden.

pacman -Sy obmenu
Konfiguration des Openbox-Menüs über Obmenu

Danach ist das Tool über den Aufruf von „obmenu“ zu starten. Dieses Tool bietet für die Konfiguration ausreichende Funktionen, unterstützt aber nicht alle Funktionen der menu.xml, so sind derzeit (2008-12-05, Version 1.0-5) Labels für Seperatoren – die diese dann zu überschriften machen – derzeit nicht unterstützt. Ein weiteres PRpoblem ergibt sich, wenn man alle Menüs entfernt: Es kann kein neues Menü angelegt werden. Das „root-menu“ sollte darüber hinaus nicht entfernt werden. Innerhalb dieses Menüs wird alles angezeigt, was über Rechtsklick verfügbar ist.

Die Desktopwechsel-Anzeige beim Wechseln auf einen mit „Temporär“ benannten Desktop

Openbox unterstützt selbstverständlich mehrere virtuelle Desktops. Diese können mit den Tastenkombinationen „Windowstaste+F*“, wobei „F*“ deine Der F-Tasten (F1 bis F12) ist, die Zahl der Taste entspricht dabei der Nummer des virtuellen Desktops. Zudem besteht die möglichkeit, mittels Strg+Alt+CursorLinks/CursorRechts zum jeweils nächsten bzw. vorherigen Desktop zu wechseln. Auch das Drehen des Mausrades auf dem Desktop, bzw. bei gedrücktem Str+Alt auch „in“ Anwendungsfenstern. Wenn man allerdings lieber ein Grafisches Verwaltungstool für die Desktops haben möchte, bedarf es eines Zusatztools. Allerdings befindet sich das originäre Openbox-Desktopverwaltungstool „obpager“ nicht in den Repositories, sondern derzeit nur im AUR.

Wem es nur darauf ankommt, die Desktops grafisch verwalten zu können, der kann auch auf z.B. „bbpager“ zurpckgreifen, das sich im „extra“-Repository von ARch befindet, und ganz normal über Packman installiert werden kann. Wer lieber den Openbox-Pager verwenden möchte, muss diesen aus dem AUR installieren (ausführliche Informationen dazu siehe AUR-Wikiseite). Nachfolgend eine Kurzanleitung zum Bauen des obpager-Paketes.

wget http://aur.archlinux.org/packages/obpager/obpager/PKGBUILD
makepkg
pacman -U obpager.pkg.tar.gz

Wobei „obpager“ durch den tatsächlichen Namen zu ersetzen ist. Damit der Pager beim Start von Openbox auch mitgestartet wird, ist es sinnvoll, den Aufruf in die autostart-Datei von Openbox zu legen. Diese befindet sich unter „~/.config/openbox/autostart.sh“, oder muss dort erst angelegt werden. In diese Datei wird nun …

obpager &

… geschrieben. Das Kaufmanns-Und am Ende ist wichtig, damit nachfolgende Befehle ebenfalls ausgeführt werden.

Hintergrundbild anpassen

OpenBox ist nicht darauf ausgerichtet, Hintergrundbilder zu verwalten. Man kann hier zum Beispiel auf den Bildbetrachter „feh“ zurückgreifen. Jedoch könnten dafür auch „display“ aus dem ImageMagick-Paket, „xsetbg“ oder „Nitrogen“ verwendet werden.

Feh

Feh ist ein kleiner, schneller befehlszeilenbasierter Bildbetrachter, mittels dem es unter anderem auch möglich ist, das Hintergrundbild des X-Servers anzupassen. Zuerst muss Feh natürlich installiert werden.

pacman -Sy feh

Feh bietet viele Optionen, die in der Manpage beschrieben werden. Im Einfachsten Fall setzt man ein Hintergrundbild mit dem folgenden Befehl:

feh --bg-center <path>/<image>.png

Der Hintergrund geht jedoch mit Beenden der Session verloren. Um ihn dauerhaft einzurichten wird die Datei ~/.xinitrc um den folgenden Eintrag ergänzt. Der eintrag sollte vor dem Openbox-Aufruf (s.o.) stehen:

feh --bg-center <path>/<image>.png &

Nitrogen

Wenn an es etwas Komfortabler – aber dennoch schlank – haben will kann auch Nitrogen verwenden um ein Hintergrundbild zu setzen. Nitrogen zeigt alle Bilder in einem festgelegten Verzeichnis als Vorschau an und man kann eines auswählen.

Zuerst muss Nitrogen installiert werden.

pacman -Sy nitrogen

Gestartet wird es mittels „nitrogen“ und der Angabe des Verzeichnisses, aus de die Bilder geladen werden sollen.

nitrogen /Pfad/zum/Bilderverzeichnis

Ein entsprechender Eintrag in der Openbox-Menüdatei könnte zum Beispiel so aussehen:

<item label="Nitrogen">
 <action name="Execute"><command>nitrogen ~/.wallpapers</command></action>
</item>

Beim Neustart geht der Hintergrund allerdings wieder verloren. Damit der zuletzt aktive Hintergrund beim nächsten Start von Openbox wieder geladen wird, muss man in der Nitrogen-Oberfläche ein Häkchen bei „Save“ machen und folgendes in die ~/.xinitrc eintragen, auch hier sollte man darauf achten, dass der Aufruf vor dem Openbox-Start stehet. Ansonsten muss man den Openbox-Start ebenfalls mit einem Abschließenden Kaufmanns-Und versehen:

nitrogen --restore &

display (Imagemagick)

„display“ ist teil des ImageMagick-Paketes, dieses Paket bietet neben diesem Programm noch eine Reihe weiterer sinnvoller Tools.

pacman -Sy imagemagick

Nach der Installation kann mittels …

display -window root wallpaper.png

… das Hintergrundbild gesetzt werden. Damit das Hintergrundbild nach dem neustart auch weiterhin vorhanden ist, muss man den Aufruf zum Beispiel in die „autostart.sh“ von Openbox setzen. Selbstverständlich kann man den Eintrag aber auch in die .xinitrc schreiben:

display -window root .wallpaper.png &

Themes verwenden

Openbox Themes

Die Openbox Themes legen das Aussehen der Fenster und des Openbox Menüs fest. Das Openbox Paket enthält einige Standard-Themes. Das Paket „openbox-themes“ stellt ein paar weitere Themes zur Verfügung.

pacman -S openbox-themes

Es gibt aber noch weitaus mehr Themes. Eine gute Quelle ist z.B. box-look.org.

Runtergeladene Themes sollten nach „~/.themes“ entpackt werden.

Die Themes können dann mittels „Obconf“ ausgewählt werden.

Gtk-Themes

Datei:Gtk-chtheme.png
Anzeigen eines Gtk-Themes über Gtk-chtheme

Gtk-2 Themes können mit dem Programm gtk-chtheme oder switch2 verwaltet werden.

pacman -S gtk-chtheme

bzw.

pacman -S gtk-theme-switch2

Einfach gtk-chtheme oder switch2 ausführen und das gewünschte Theme auswählen.

Gtk-1 Themes können mit dem Programm switch eingestellt werden.

pacman -S gtk-theme-switch

Gtk-Schriftart

Die Gtk Schriftart kann man mit den bereits genannten Programmen gtk-chtheme und switch2 bzw. switch einstellen. Oder man fügt folgendes in die „~/gtkrc.mine“ ein

style "user-font"
{
font_name = "[font-name] [size]"
} 
widget_class "*" style "user-font"
gtk-font-name = "[font-name] [size]"

Wobei [font-name] und [size] für die gewünschte Schriftart und deren Größe stehen. Zum Bispiel:

style "user-font"
{
font_name = "DejaVu Sans 8"
} 
widget_class "*" style "user-font"
gtk-font-name = "DejaVu Sans 8"

Es werden beide Felder „font_name“ und „gtk-font-name“ benötigt, um Abwärtskompatibilität sicherzustellen.

Gtk-Icons

Das gewünschte Icon Theme entweder nach „/usr/share/icons“ (Systemweit) oder „~/.icons“ (User) entpacken.

Folgendes in der Datei „~/.gtkrc.mine“ hinzufügen:

gtk-icon-theme-name = "[name-of-icon-theme]"

Wobei [name-of-icon-theme] der Name des Theme Verzeichnisses ist. Zum Beispiel:

gtk-icon-theme-name = "Tango"

Mauszeiger-Themes

Das gewünschte Xcursor Theme entweder nach „/usr/share/icons“ (Systemweit) oder „~/.icons“ (User) entpacken.

Folgendes in der Datei „~/.Xdefaults“ hinzufügen:

Xcursor.theme:  [name-of-cursor-theme]

Wobei [name-of-cursor-theme] der Name des Theme Verzeichnisses ist. Zum Beispiel:

Xcursor.theme:	Vanilla-DMZ-AA

Das Paket „xcursor-themes“ enthält die drei default Themes redglass, whiteglass und handhelds. Es wird automatisch beim installieren des XServers als Abhängigkeit mit installiert.

Einige Anwendungen ignorieren diese Einstellungen unter gewissen Umständen allerdings. Daher kann man auch einen Softlink erstellen. Dieser Verweist dann als „default“ auf das verwendete Theme.

ln -s /pfad/zum/cursortheme /usr/share/icons/default

Empfehlenswerte Programme

Openbox hat von Haus aus keine Funktionen wie z.B. Panel, Systemtray, Dateimanager und ähnliches. Deshalb hier mal eine Auswahl von Programmen mit denen man sich seine individuelle Arbeitsumgebung schaffen kann.

Login-Manager

Eigentlichist ein Login-Manager bei einer reinen Kombination aus X und Openbox nicht nötig. Es gibt einen kleinen „Trick“, wie man direkt nachdem einloggen an der Befehlszeile nach dem Booten ohne Grafischen Login-Manager X startet. Dazu erstellt man in der Datei „.bashrc“, bzw. „.bash_profile“ eine If-Abrage.

if [ "$(tty)" = "/dev/vc/1" ]; then
 startx
 logout
fi

Diese Abfrage prüft, ob das verwendete Terminal das erste ist. Dies ist nach dem booten der Fall. Wenn man sich hier nun mit seinem Benutzernamen anmeldet, und die .bashrc ausgeführt wird, wird über „startx“ umgehend X gestartet. Wenn man X wieder beendet (entweder durch Ausloggen aus Openbox, oder z.B. das Drücken von Strg+Alt+Backspace), wird man automatisch wieder ausgeloggt.

Wer Openbox dennoch per Login Manager starten will, sollte sich mal SLiM ansehen. SLiM hat keine Abhängigkeiten zu Gnome oder KDE. Einen überblick über verschiedene Login-Manager bietet der Wiki-Artikel Login-Manager.

Ausführen-Dialog

Gmrun

Wer eine Dialogbox zum Starten von Programmen, ähnlich der Alt-F2 Funktion in Gnome und KDE, haben möchte, kann sich gmrun installieren.

pacman -Sy gmrun

Um „gmrun“ mit Alt-F2 zu starten, folgendes in den <keyboard> Abschnitt in der „~/.config/openbox/rc.xml“ einfügen.

<keybind key="A-F2">
 <action name="execute"><execute>gmrun</execute></action>
</keybind>

Damit diese Einstellung übernommen wird, muss die Konfiguration neu eingelesen werden, dies geschieht mittels …

openbox --reconfigure

… oder indem man sich ausloggt, und widder einloggt.

Launchy

Launchy verfolgt einen weniger minimalistischen Ansatz; das Aussehen kann mit Hilfe von Skins angepasst werden, es stellt Funktionen wie Rechner oder das Abrufen von Wetterberichten bereit. Ürsprünglich für Windows, ähnelt Gnome Do.

pacman -S launchy

Aufruf über Ctrl + Leertaste.

LXPanel

Wird LXPanel als Taskmanager benutzt kann, so kann der Ausführen-Dialog mittels

lxpanelctl run

aufgerufen werden.

Bashrun

bashrun bashrun stellt eine bash-Session im Stil eines Ausführen-Dialogs zur Verfügung. Programme können so mit Hilfe der von der Shell gewohnten Funktionen wie Tab-Completion und History ausgeführt werden.

pacman -S bashrun

Die folgenden Einstellungen werden für openbox empfohlen:

<application name="bashrun">
 <desktop>all</desktop>
 <decor>no</decor>
 <focus>yes</focus>
 <skip_pager>yes</skip_pager>
 <skip_taskbar>yes</skip_taskbar>
 <layer>above</layer>
</application>

Desktop-Icons

Openbox hat keine eigene Funktion um Icons auf dem Desktop darzustellen. Wer darauf dennoch nicht verzichten möchte, kann z.B. iDesk, ROX, PCManFM oder auch Nautilus (plus 'gnome-settings-daemon') verwenden. ROX und PCManFM sind gleichzeitig auch noch schlanke Dateimanager.

Panels

Es gibt zahlreiche Panels, Pager, etc. die man mit Openbox verwenden kann. Zum Beispiel diese hier:

Um die gewünschten Programme beim Start von Openbox zu starten, sollte ein entsprechender Eintrag in der Openbox-Autostartdatei (s.o.) reichen.

Dateimanager

Es gibt zahlreiche Dateimanager. Deshalb hier nur eine kleine Auswahl.

Natürlich kann auch der GNOME-Dateimanager Nautilus verwendet werden. Er ist zwar nicht so schlank wie die oben genannten, hat aber den Vorteil, dass z.B. remote SSH, FTP und Samba direkt unterstüzt werden. Zudem kann Nautilus, ebenso wie einige der oben genannten Dateimanager die Desktop-Icons anzeigen.

Links