Openbox config that gives you traditional desktop experience

adnan360 407637ad01 Add var defined check, fix exec variable 2 months ago
assets 1014b187b0 Added Afterpiece Flat light and dark themes 11 months ago
misc 36e23d574e Renamed other directory to misc 8 months ago
src 407637ad01 Add var defined check, fix exec variable 2 months ago
.gitignore 1fefc0efb5 Updated autostart config and gitignore 7 months ago
LICENSE 764259f842 Initial commit 2 years ago b4a25ef569 Merge branch 'master' into jgmenu 6 months ago
config.yaml aa95ee2423 Added partial changes for jgmenu 6 months ago
custom.default.yaml 1fefc0efb5 Updated autostart config and gitignore 7 months ago


A config that mimics traditional desktop environment in Openbox. Available in Dark and Light variants.

Openbox config screenshot light theme

Openbox config screenshot dark theme

Install Prerequisites

Arch Linux:

sudo pacman -S openbox tint2 jgmenu perl-gtk3 obmenu-generator xdotool network-manager-applet gsimplecal rofi papirus-icon-theme volumeicon cbatticon slim xfce4-notifyd bc
sudo systemctl enable slim
pakku -S ksuperkey  # install through AUR

Void Linux:

sudo xbps-install openbox tint2 jgmenu perl-Gtk3 obmenu-generator xdotool network-manager-applet gsimplecal-gtk3 rofi papirus-icon-theme volumeicon cbatticon slim xfce4-notifyd bc ksuperkey
sudo ln -s /etc/sv/slim /var/service/

Slim login theme:

# Apply slim theme
sudo cp -r misc/greeny_dark/ /usr/share/slim/themes/
sudo sed -i "s/\(^current_theme.*\)/#\1\ncurrent_theme  greeny_dark/" /etc/slim.conf

* Some packages are optional and depends upon your preference.
* perl-gtk3 is for generating menu with icons. When gtk2-perl is only available, install it and then comment the use_gtk3 line on ~/.config/obmenu-generator/ (See Troubleshooting section below for details)

Optionally, install these packages to configure:

Arch Linux:

sudo pacman -S lxappearance obconf

Void Linux:

sudo xbps-install lxappearance obconf


Make sure Python3 and Python Pip (python-pip on Arch Linux and python3-pip on Void Linux) is installed. Then:

sudo pip install dotdrop
cd /path/to/this/repo
# For light theme
dotdrop install -p default -f
# For dark theme
dotdrop install -p dark -f
# -f overrides already existing config files on system
openbox --reconfigure


  • Launch lxappearance, go to Icon Theme tab and and change icon to Papirus to show proper icons on system tray.
  • To choose a GTK theme you can choose Adwaita, Adwaita-dark or anything else from lxappearance to match your Openbox theme.

Then reboot to an Openbox session. If you have multiple DEs installed, you can press F1 on slim login screen to choose Openbox. If Openbox session does not start even after selecting it, please refer to Troubleshooting section below.


Some customization changes require editing a yaml file for convenience. The custom.yaml file overrides the default values.

cp custom.default.yaml custom.yaml
# or...
cp custom.default.yaml ~/.local/share/openbox-config/custom.yaml
# or you can copy just the variables you want to change
# change the variables (see below) ... then:
dotdrop install -p default -f # or -p dark
1. Adding/removing apps on Tint2 panel

Edit quick_launch_items on custom.yaml.

2. Changing apps on Openbox menu

Edit custom.yaml.

3. Changing clock format

Edit clock_1_format and clock_2_format on custom.yaml.

4. Remove icon from Show Desktop button

Set show_desktop_icon_visible to false on custom.yaml. e.g.

show_desktop_icon_visible: false
5. Add items to startup

Edit autostart_items_add on custom.yaml.


obmenu-generator -i saying invalid output and there is no libgtk2-perl package available

I have faced this on Debian Testing. Here's what you can do for Debian:

  • Install from the repos here. If not possible, install manually: git clone --depth=1 cd obmenu-generator sudo cp obmenu-generator /usr/bin/obmenu-generator sudo cp /etc/xdg/obmenu-generator/ sudo apt install libgtk3-perl perl-linux-desktopfiles libdata-dump-perl
  • There is a "use_gtk3" => 1, line in ~/.config/obmenu-generator/ Make sure it is there and uncommented. Now it should work as expected.

  • Openbox session doesn't start from slim login If for some reason, Openbox session does not start even after selecting it from slim, rather some other session get started, you may need to inspect the ~/.xsession file and possibly would have to comment the line that runs ~/.xinitrc. Faced this on Void Linux.