Difference between revisions of "Openbox Themes and Apps"

From ArchWiki
Jump to: navigation, search
m (Recommended programs: link to the proper page)
(no need to delete, redirect)
(33 intermediate revisions by 15 users not shown)
Line 1: Line 1:
[[Category:Stacking WMs]]
#REDIRECT [[Openbox]]
[[it:Openbox Themes and Apps]]
[[ru:Openbox Themes and Apps]]
[[zh-CN:Openbox Themes and Apps]]
{{Note|This article is a supplement to the main [[Openbox]] article.
This wiki article deals with customizing the appearance of Openbox in Arch Linux. Helper programs such as panels and trays are also explained.
== Themes and appearance ==
With the exception of the Openbox Themes topic, the following section is intended for users who have configured Openbox to run as a standalone desktop, without the assistance of [[GNOME]], [[KDE]] or [[Xfce]].
=== Openbox themes ===
Openbox themes control the appearance of window borders, including the titlebar and titlebar buttons. They also determine the appearance of the application menu and on-screen display (OSD). 
Some themes are available for [[Pacman|installation]] with the {{Pkg|openbox-themes}} package in the [[official repositories]].
This package is by no means definitive. You can download more themes at websites such as:
* [http://www.box-look.org/index.php?xcontentmode=7402 www.box-look.org]
* [http://customize.org/browse/tags/openbox www.customize.org]
* [http://www.minuslab.net/themes/ www.minuslab.net]
* [http://celo.wordpress.com/themes/ celo.wordpress.com]
* [http://vault.openmonkey.com/pages/openbox vault.openmonkey.com]
Downloaded themes should be extracted to {{ic|~/.themes}} or {{ic|~/.local/share/themes}} and selected from {{Pkg|obconf}} or {{Pkg|lxappearance-obconf}}. Theme selection can also be done manually by opening {{ic|rc.xml}} and changing the ''<name>'' key in the ''<theme>'' section.
Creating new themes is fairly easy and [http://openbox.org/wiki/Help:Themes well-documented]. For those who prefer a GUI, {{AUR|obtheme}} is a very capable editor.
=== X11 mouse cursors ===
See [[Cursor Themes]].
=== GTK themes ===
See [[GTK+#Themes]].
=== Desktop icons ===
Openbox does not provide a means to display icons on the desktop. To provide this function, one can use:
* {{App|[[Xfce|Xfdesktop]]|The desktop manager for Xfce.|http://docs.xfce.org/xfce/xfdesktop/start|{{Pkg|xfdesktop}}}}
* {{App|[[PCManFM]]|An extremely fast and lightweight file manager used by the LXDE desktop.|http://pcmanfm.sourceforge.net/|{{Pkg|pcmanfm}}}}
* {{App|[[ROX#Usage|ROX]]|A small and fast file manager which can optionally manage the desktop background and panels, part of the ROX Desktop.|http://roscidus.com/desktop/|{{Pkg|rox}}}}
* {{App|[[Idesk|IDesk]]|A simple tool that gives users of minimal wm's (Fluxbox, pekwm, Window Maker, Obenbox, etc) icons on their desktop.|http://idesk.sourceforge.net/html/index.html|{{Pkg|idesk}}}}
* {{App|[[Nautilus]]|The file manager of the GNOME desktop.|https://live.gnome.org/Nautilus|{{Pkg|nautilus}}}}
* {{App|[[Spacefm]]|A GTK multi-panel tabbed file manager.|http://ignorantguru.github.com/spacefm/|{{Pkg|spacefm}}}}
=== Desktop wallpaper ===
Openbox itself does not include a way to change the wallpaper. This can be done easily with programs like [[Feh]] or [[Nitrogen]].  Other options include {{Pkg|imagemagick}}, {{Pkg|hsetroot}}, '''xsetbg''' and more advanced choices such as PCmanFM or Xfdesktop.
You can disable the wallpaper loading in ''gnome-settings-daemon'' like this:
$ gconftool-2 --set /apps/gnome_settings_daemon/plugins/background/active --type bool False
In Gnome 3 use:
$ gsettings set org.gnome.desktop.background draw-background false
One approach, using {{ic|hsetroot}} is possible by placing the following command in {{ic|autostart}}:
hsetroot -fill /path/to/image.file
A similar command for {{ic|feh}} is:
feh --bg-scale /path/to/image.file
== Recommended programs ==
{{accuracy|reason=This is completely subjective, so it likely belongs in a user namespace instead.}}
{{Note|The main [[Openbox]] article has information on installing Openbox, but this additional section details specific lightweight applications you may want to deploy after installing Openbox.}}
For a more complete choice of applications available on Arch, look at the [[List of Applications]]. You can also look at the [http://openbox.org/wiki/Help:Contents#Cool_programs_to_run_with_Openbox list] recommended on the Openbox wiki, although most overlap with the following suggestions.
=== Display managers ===
{{Box||See the main article: [[Display Manager]].|#E5E5FF|#FCFCFC}}
* {{App|[[SLiM]] (Simple Login Manager)|A lightweight and elegant graphical login solution.|http://slim.berlios.de/|{{Pkg|slim}}}}
* {{App|[[Qingy]]|An ultralight and very configurable graphical login independent on X Windows (uses DirectFB). It supports login to either a text console or an X session.|http://qingy.sourceforge.net/|{{Pkg|qingy}}}}
=== Desktop compositing ===
* {{App|[[Xcompmgr]]| A lightweight composite manager capable of rendering drop shadows, fading and simple window transparency within Openbox and other window managers.|http://cgit.freedesktop.org/xorg/app/xcompmgr/|{{Pkg|xcompmgr}}}}
{{Note|Xcompmgr is no longer developed, so any issues are unlikely to be fixed. Various forks are available in the [[AUR]] that fix some of the more pressing problems: {{AUR|xcompmgr-dana}}, {{AUR|xcompmgr_tint2-git}} (provides real transparency for [[Tint2]]) and {{AUR|compton-git}} (some shadows and transparency fixes).}}
* {{App|[[Cairo Compmgr|Cairo Composite Manager]]|A versatile and extensible composite manager which uses cairo for rendering.|http://cairo-compmgr.tuxfamily.org/|{{AUR|cairo-compmgr-git}}}}
=== Desktop utilities ===
A number of utilities provide panels / taskbars, system trays, or pagers to Openbox:
==== Panels ====
{{Box||For more examples see: [[Common Applications#Taskbars]].|#E5E5FF|#FCFCFC}}
* {{App|[[Avant Window Navigator]]|A lightweight dock which sits at the bottom of the screen.|http://wiki.awn-project.org/|{{AUR|avant-window-navigator-bzr}}}}
* {{App|[[Bmpanel]]|A lightweight, NETWM compliant panel for the X11 system.|http://nsf.110mb.com/bmpanel/|{{AUR|bmpanel}}}}
* {{App|[[Cairo-Dock]]|A highly customizable dock/laucher.|http://www.glx-dock.org/|{{AUR|cairo-dock}}}}
* {{App|Docker|A docking application which acts as a system tray.|http://icculus.org/openbox/2/docker/|{{Pkg|docker}}}}
* {{App|[[fbpanel]]|A lightweight, NETWM compliant desktop panel.|http://fbpanel.sourceforge.net/|{{Pkg|fbpanel}}}}
* {{App|LXPanel|A lightweight X11 desktop panel and part of the LXDE DE.|http://lxde.org/|{{Pkg|lxpanel}}}}
* {{App|Pancake|A highly configurable, modular panel for X.|http://www.failedprojects.de/pancake/|{{AUR|pancake}}}}
* {{App|[[Tint2]]|Simple panel/taskbar developed specifically for Openbox.|http://code.google.com/p/tint2/|{{Pkg|tint2}}}}
* {{App|[[wbar]]|A quick launch bar developed with speed in mind.|http://freecode.com/projects/wbar/|{{Pkg|wbar}}}}
* {{App|[[GNOME#GNOME panel|GNOME Panel]]|The default [[Gnome]] panel.|https://live.gnome.org/GnomePanel|{{Pkg|gnome-panel}}}}
* {{App|PerlPanel|A lightweight panel that supports applets.|http://savannah.nongnu.org/projects/perlpanel|{{Pkg|perlpanel}}}}
* {{App|[[PyPanel]]|A lightweight panel/taskbar for X11 window managers written in Python.|http://pypanel.sourceforge.net/|{{Pkg|pypanel}}}}
* {{App|[[Wikipedia:Screenlets|Screenlets]]|A widget framework that consists of small owner-drawn applications (weather widget, clocks, system monitors, mail checkers, etc.).|http://screenlets.org/index.php/Home|{{Pkg|screenlets}}}}
* {{App|[[Xfce#Panel|Xfce Panel]]|The default [[Xfce]] panel.|http://docs.xfce.org/xfce/xfce4-panel/start|{{Pkg|xfce4-panel}}}}
==== Trays ====
* {{App|[[Stalonetray]]|A stand-alone system tray with minimal dependecies.|http://stalonetray.sourceforge.net/|{{Pkg|stalonetray}}}}
* {{App|Trayer|A lightweight GTK2-based systray.|https://gna.org/projects/fvwm-crystal/|{{Pkg|trayer}}}}
==== Pagers ====
* {{App|IPager|A configurable pager with transparency, originally developed for Fluxbox.|http://useperl.ru/ipager/index.en.html|{{AUR|ipager}}}}
* {{App|Neap|An non-intrusive and light pager that runs in the notification area of your panel.|http://code.google.com/p/neap/|{{Pkg|neap}}}}
* {{App|Netwmpager|A NetWM/EWMH compatible pager.|http://sourceforge.net/projects/sf-xpaint/files/netwmpager/|{{Pkg|netwmpager}}}}
* {{App|Pager|A highly configurable pager compatible with Openbox Multihead.|https://github.com/BurntSushi/pager-multihead|{{Pkg|pager-multihead-git}}}}
If you wish to set desktop layout without using a pager, try the {{AUR|obsetlayout}} package from [[AUR]].
=== File managers ===
{{Box||For more examples see: [[Common Applications#File managers]].|#E5E5FF|#FCFCFC}}
Three popular lightweight file managers are:
* {{App|[[PCManFM]]|An extremely fast and lightweight file manager used by the LXDE desktop.|http://pcmanfm.sourceforge.net/|{{Pkg|pcmanfm}}}}
* {{App|[[ROX#Usage|ROX]]|A small and fast file manager which can optionally manage the desktop background and panels, part of the ROX Desktop.|http://roscidus.com/desktop/|{{Pkg|rox}}}}
* {{App|[[Thunar]]|The file manager of the Xfce Desktop with many plugins and features.|http://thunar.xfce.org/|{{Pkg|thunar}}}}
For even lighter options, consider:
* {{App|Gentoo|A lightweight file manager for GTK.|http://www.obsession.se/gentoo/|{{AUR|gentoo}}}}
* {{App|emelFM2|A file manager that implements the popular two-pane design.|http://emelfm2.net/|{{Pkg|emelfm2}}}}
* {{App|Xfe|A Microsoft Explorer-like file manager for X (X File Explorer).|http://sourceforge.net/projects/xfe/|{{Pkg|xfe}}}}
* {{App|muCommander|A lightweight, cross-platform file manager with a dual-pane interface written in Java.|http://www.mucommander.com/|{{AUR|mucommander}}}}
Alternatively, you may use GNOME's Nautilus as your file manager. It is heavier and slower than the previous solutions, but Nautilus has many helpful features such as [http://en.wikipedia.org/wiki/Virtual_file_system virtual file systems], allowing folder access via SSH, FTP, or Samba.
=== Application launchers ===
{{Box||For more examples see: [[Common Applications#Application Launchers]].|#E5E5FF|#FCFCFC}}
* {{App|[[gmrun]]|A lightweight GTK based application launcher, with ability to run programs inside a terminal and other handy features. To enable {{Keypress|Alt+F2}} functionality add the following to the ''<keyboard>'' section:
<keybind key="A-F2">
    <action name="execute"><execute>gmrun</execute></action>
* {{App|[[dmenu]]|A fast and lightweight dynamic menu for X, which is also useful as an application launcher. To enable {{Keypress|Alt+F2}} functionality add the following to the ''<keyboard>'' section:
<keybind key="A-F2">
    <action name="execute"><execute>dmenu_run</execute></action>
* {{App|Bashrun2|Provides a different, barebones approach to a run dialog, using a specialized Bash session within a small xterm window. To enable {{Keypress|Alt+F2}} functionality add the following to the ''<keyboard>'' section:
<keybind key="A-F2">
    <action name="execute"><execute>bashrun2</execute></action>
To make Bashrun2 act more like a traditional run dialog add the following to the ''<applications>'' section:
<application name="bashrun2-run-dialog">
    <decor>no</decor>  # switch to yes if you prefer a bordered window
* {{App|Kupfer|A launcher inspired by [[Wikipedia:Quicksilver (software)|Quicksilver]], written in Python. To enable {{Keypress|Alt+F2}} functionality add the following to the ''<keyboard>'' section:
<keybind key="A-F2">
    <action name="execute"><execute>kupfer</execute></action>
* {{App|[[Wikipedia:launchy|Launchy]]|A less minimalistic approach; it is skinnable and offers more functionality such as a calculator, checking the weather, etc. It is launched with the {{Keypress|Ctrl+Space}} key combination.|http://www.launchy.net/|{{Pkg|launchy}}}}
* {{App|LXPanel|A lightweight X11 desktop panel and part of the LXDE DE. The run dialog can be executed with:
$ lxpanelctl run
* {{App|[[GNOME#GNOME panel|GNOME Panel]]|The default [[Gnome]] panel. The run dialog of the GNOME Panel can be executed with:
$ gnome-panel-control --run-dialog
=== Clipboard managers ===
{{Box||For more examples see: [[Common Applications#Clipboard managers]].|#E5E5FF|#FCFCFC}}
You may wish to install a [[Clipboard|clipboard manager]] for a richer copy/paste experience. The following are the more lightweight options:
* {{App|Clipman|A clipboard manager for Xfce. It keeps the clipboard contents around while it is usually lost when you close an application. It is able to handle text and images, and has a feature to execute actions on specific text selections by matching them against regular expressions.|http://goodies.xfce.org/projects/panel-plugins/xfce4-clipman-plugin|{{Pkg|xfce4-clipman-plugin}}}}
* {{App|[[Wikipedia:Glipper|Glipper]]|A clipboard manager for GNOME with more features and plugin support.|https://launchpad.net/glipper|{{AUR|glipper}}}}
* {{App|Parcellite|A lightweight yet feature-rich clipboard manager.|http://parcellite.sourceforge.net/|{{Pkg|parcellite}}}}
* {{App|ClipIt|A fork of Parcellite with additional features and bugfixes.|http://sourceforge.net/projects/gtkclipit/|{{Pkg|clipit}}}}
Make sure you add your chosen clipboard manager to {{ic|~/.config/openbox/autostart}}.
=== Volume managers ===
* {{App|GVolWheel|An audio mixer which lets you control the volume through a tray icon.|http://sourceforge.net/projects/gvolwheel/|{{AUR|gvolwheel}}}}
* {{App|GVTray|A master volume mixer for the system tray.|http://code.google.com/p/gtk-tray-utils/|{{AUR|gvtray}}}}
* {{App|Obmixer|A GTK mixer applet for Openbox that runs in the system tray. It is lightweight and works with both pulseaudio and alsa, has mute/umute feature which remembers your previous volume.|http://jpegserv.com/obmixer/|{{AUR|obmixer}}}}
* {{App|PNMixer|A fork of Obmixer. It has many new features such as ALSA channel selection, connect/disconnect detection, shortcuts, etc.|https://github.com/nicklan/pnmixer/wiki|{{AUR|pnmixer}}}}
* {{App|Volti|A GTK application for controlling audio volume from system tray with an internal mixer and support for multimedia keys that uses only ALSA.|http://code.google.com/p/volti/|{{AUR|volti}}}}
* {{App|VolumeIcon|Another volume control for your system tray with channel selection, themes and an external mixer.|http://softwarebakery.com/maato/volumeicon.html|{{Pkg|volumeicon}}}}
* {{App|VolWheel|A little application which lets you control the sound volume easily through a tray icon you can scroll on.|http://oliwer.net/b/volwheel.html|{{Pkg|volwheel}}}}
=== Battery & CPU ===
{{Box||For more examples see: [[Common Applications#System Monitoring]].|#E5E5FF|#FCFCFC}}
* {{App|[[Trayfreq]]|A light battery monitor and a CPU frequency scaler.|http://trayfreq.sourceforge.net|{{AUR|trayfreq}}}}
=== Keyboard layout switchers ===
* {{App|fbxkb|A NETWM compliant keyboard indicator and switcher. It shows a flag of current keyboard in a systray area and allows you to switch to another one.|http://fbxkb.sourceforge.net/|{{AUR|fbxkb}}}}
* {{App|xxkb|A lightweight keyboard layout indicator and switcher.|http://sourceforge.net/projects/xxkb/|{{Pkg|xxkb}}}}
* {{App|qxkb|A keyboard switcher written in Qt.|http://code.google.com/p/qxkb/|{{AUR|qxkb}}}}
* {{App|[[Wikipedia:X Neural Switcher|X Neural Switcher]]|A text analyser, it detects the language of the input and corrects the keyboard layout if needed.|http://www.xneur.ru/|{{AUR|xneur}}, {{AUR|gxneur}} (GUI)}}
=== Logout dialog ===
A few simple shutdown managers are available:
* {{App|exitx|A logout dialog for Openbox that uses [[Sudo]].|http://www.linuxsir.com/bbs/lastpostinthread350740.html|{{AUR|exitx}}}}
* {{App|exitx-polkit|A GTK logout dialog for Openbox with PolicyKit support.|https://github.com/z0id/exitx-polkit|{{AUR|exitx-polkit}}}}
* {{App|obshutdown|A great GTK/Cairo based shutdown manager for Openbox and other window managers.|https://github.com/panjandrum/obshutdown|{{AUR|obshutdown}}}}
Alternatively, you can also use Openbox's menus to create a simple dialog. Which can also be binded to a key for easy access.
An example with {{ic|exit-menu}} as the ''id'' and {{ic|Exit}} as the ''label'' in a local {{ic|systemd-logind}} user session:
<menu id="exit-menu" label="Exit">
<item label="Log Out">
<action name="Execute">
<command>openbox --exit</command>
<item label="Shutdown">
<action name="Execute">
<command>systemctl poweroff</command>
<item label="Restart">
<action name="Execute">
        <command>systemctl reboot</command>
<item label="Suspend">
<action name="Execute">
        <command>systemctl suspend</command>
<item label="Hibernate">
<action name="Execute">
        <command>systemctl hibernate</command>
Add this to your {{ic|~/.config/openbox/menu.xml}}, then later in your menu or pipemenu of choice add:
<menu id="exit-menu"/>
If you would like to bind this to a key, simply add this example keybind to the ''<keyboard>'' section:
<keybind key="XF86PowerOff">
  <action name="ShowMenu">
This will bind it to your power button, if you prefer otherwise change ''XF86PowerOff'' to your preferred key.

Latest revision as of 10:05, 2 December 2013

Redirect to: