An alternate approach to develop a Debian Openbox desktop is to start with an lxde desktop. The lxde desktop is basically openbox with a sessions manager (lxsession) and a panel (lxpanel). There are no real advantages to start with a Debian LXDE distribution in my eyes, except if you already have an LXDE operating system installed, then you can easily just modify it to be the openbox system. In Debian Linux Openbox Guide, we showed how to develop a sophisticated Openbox desktop starting from the Sparky Linux Openbox (no codecs) base distro, which is based upon Debian Testing. As far as I know, this is the only Debian Testing pure openbox distro, and there are only 3 or 4 other reasonable ones based upon Debian Stable. So the choice starting with just Openbox is quite limited, and so starting from an LXDE distribution might be helpful to some.
Here, we will show how to develop a sophisticated Openbox desktop starting with Sparky Linux LXDE, specifically, Sparky Lxde 4.5.2x86_64. The following tables shows the differences in the starting points between the Sparky base Openbox and the Sparky Lxde.
LXDE Packages in Sparky LXDE not Completely in Sparky Openbox-Base | |
lxde-core | pcmanfm, lxpanel, openbox, lxde-common, desktop-file-utils, xscreensaver |
lxde-common | configuration data, libunique-1.0-0, lxsession |
lxsession | lxsession-data, lxsession-logout |
lxpanel | lxpanel-data, lxkeybinder0 |
openbox-lxde-session | lxsession, openbox, lxde-screenlock.desktop file, configuration files |
To get rid of the unnecessary LXDE desktop components, boot into the openbox-session. The display manager, lightdm, offers you a choice when the password window is open. Click the appropriate icon in the upper panel to get a drop-down box and put a tick in the openbox box. That will boot you into an openbox-session.
While booted into an Openbox session, uninstall lxde-core and lxde-common, which are just meta-packages, whose removal will not affect anything else:
sudo apt-get remove lxde-core lxde-common .
Then:
sudo apt-get remove openbox-lxde-session
sudo apt-get remove lxsession lxsession-default-apps lxsession-edit .
If you are not going to keep lxpanel, then remove it as well:
sudo apt-get remove lxpanel lxpanel-data .
In order to guarantee a menu in the next boot, you should immediately (before rebooting) install and configure a replacement panel (see, for example, fbpanel), and put a tick in the first box ("Show menus") in the "Advanced Section" of "Desktop Preferences":
pcmanfm --desktop-pref .
Desirable Packages in Sparky LXDE not in Sparky Openbox-Base | |
Bit-torrent package | transmission; transmission-common; transmission-gtk |
media package | ffmpeg; x264; x265 |
Java package | icedtea-8-plugin:amd64; icedtea-netx:amd64; icedtea-netx-common; icedtea-plugin 1.6.2-3; java-common; javascript-common; openjdk-8-jre:amd64; openjdk-8-jre-headless:amd64 |
rpm package | debugedit; rpm; rpm-common; rpm2cpio |
vlc package | vlc; vlc-bin; vlc-data; vlc-l10n; vlc-plugin-base:amd64; vlc-plugin-notify:amd64; vlc-plugin-qt:amd64; vlc-plugin-video-output:amd64; browser-plugin-vlc |
wine64 package | wine64; winetricks |
apt-xapian-index | maintenance and search tools for a Xapian index of Debian packages |
ca-certificates-java | common CA certificates (JKS keystore) |
camorama | gnome utility to view and save images from a webcam |
firefox-esr | Mozilla Firefox web browser - Extended Support Release (ESR) |
florence | extensible and scalable virtual keyboard for X |
gpointing-device-settings | mouse configuration tool |
locate | maintain and query an index of a directory tree |
lxappearance | LXDE GTK+ theme switcher |
lxappearance-obconf | LXDE GTK+ theme switcher (plugin) |
parcellite | lightweight GTK+ clipboard manager |
lxappearance | LXDE GTK+ theme switcher |
lxappearance-obconf | LXDE GTK+ theme switcher (plugin) |
parcellite | lightweight GTK+ clipboard manager |
xfburn | cd-dvd burner |
Probably Keepers in Sparky LXDE not in Sparky Openbox-Base | |
apt-show-versions | lists available package versions with distribution |
blueman | graphical bluetooth manager |
bluez-obexd | bluez obex daemon |
broadcom-sta-common, broadcom-sta-source | Broadcom STA Wireless driver files |
cabextract | opens microsoft .cab files |
compton, sparky-compton | compositor for X11 |
disk-manager | graphical filesystem configurator |
ddm | gui to install proprietory drivers |
extlinux | collection of bootloaders |
fonts-crosextra-caladea, fonts-crosextra-carlito | Sans-serif font metric-compatible with Cambria font |
galculator | simple calculator (hard to remove without installing big crap) |
gnuplot, gnuplot-data, gnuplot-qt, aglfn | command-line driven interactive plotting program |
gpointing-device-settings | configuration tool for pointing devices |
gucharmap, libgucharmap | unicode character picker and font browser |
hardinfo | displays system information |
libreoffice, coinor-*, lp-solve, unolibs3, ure | complete office suite (large - 482MB) |
lxde-icon-theme | LXDE standard icon theme |
lxhotkey-core, lxhotkey-gtk | lightweight global keyboard shortcuts configurator |
lxmed | LXDE menu editor |
minissdpd | keep memory of all UPnP devices |
nvidia-detect | NVIDIA GPU detection utility |
NVIDIA GPU detection utility | NVIDIA GPU detection utility |
ocl-icd-libopencl1:amd64 | Generic OpenCL ICD Loader |
pkg-config, gstreamer1.0-tools | manage compile and link flags for libraries |
pmount | mount removable devices as normal user |
psutils | PostScript document handling utilities |
recordmydesktop, gtk-recordmydesktop | captures audio-video data of a Linux desktop session |
sparky-fontset | tool to configure fonts |
sparky-usb-formatter | tool to format a usb drive |
sparky-xdf | tool to show didk usage via df-command |
traceroute | traces the route taken by packets over an IPv4/IPv6 network |
usermode | graphical tools for certain user account management tasks |
xinit | X server initialisation tool |
yelp, yelp-xsl, libyelp0 | help browser for gnome |
Removable Packages in Sparky LXDE not in Sparky Openbox-Base | |
audacious, audacious-plugins:amd64, audacious-plugins:data, libaudcore4, libaudtag3, libaudgui4 | audio player (8189kb) |
bison | YACC-compatible parser generator (2110kb) |
cryptsetup-bin | disk encryption support (1060kb) |
dkms | dynamic kernel module support framework (289kb) |
evince, evince-common | pdf viewer (13.6mb) |
flex, libfl-dev | lexical analyzer generator (1334kb) |
gnome-desktop3-data, libgnome-desktop-3-12 | common files for gnome desktop apps (3251kb) |
gscreenshot | simple screenshooter (116kb) |
hexchat, hexchat-common, hexchat-perl, hexchat-plugins, hexchat-python3 | IRC client (5529kb) |
module-assistant | module package creation tool (399kb) |
pidgin, pidgin-data, pidgin-lastfm, pidgin-microblog, pidgin-musictracker, pidgin-twitter, libpurple-bin, libpurple0 | messaging client (34.1mb) |
thunderbird, calendar-google-provider, lightning, iceowl-extension, icedove | mail/news client (91.6MB) |
radiotray | online radio streaming player (589) |
tcl, tcl8.6, tk, tk8.6, blt, python-tk, tk8.6-blt2.5 | tool command language (2447kb) |
ttf-liberation | dummy package (38.9kb) |
usermode | graphical tools: userinfo, usermount, userpasswd (1183kb) |
x11-session-utils, xorg, x11-xfs-utils, xorg-docs-core, task-desktop | X session utilities (2652kb) |
xserver-xephyr | nested X server (4603kb) |
sparky-center-lxde, sparky-autostart, "-conkeyset, "-keyboard, "-locales, "-timedateset, "-users, libfm-tools, console-setup (1600kb) |
To achieve the desktop described in Debian Linux Openbox Guide, a user will need to install (as desired) the applications in the following table.
Packages to Add to Upgrade the System | |
arandr | visual front end for XRandR (328kb) |
catfish | file searching tool (427kb) |
filezilla | full-featured FTP client with an easy-to-use GUI (17.3mb) |
gaiksaurus | graphical interface to the Aiksaurus English language thesaurus (708kb) |
geany | best text editor with syntax highlighting, html viewing and many plugins (10.7mb) |
grabc | program to determine the color by clicking on a pixel on the screen (28kb) |
jq | changes the data format that you have into the one that you want (1157kb) |
lame | mp3 encoder (597kb) |
libdvd-pkg | provides libraries that are needed for playing video DVDs (79kb) |
mirage | lean, clean image viewer with some editing powers (2022kb) |
mpv | movie player based on MPlayer (26mb) |
obmenu-generator | dynamical openbox menu generator (6469kb) |
ogmrip | rips and encodes video dvd's (104mb) |
openbox-menu | provides a dynamic menu listing of installed applications (41kb) |
speedcrunch | high precision and high speed calculator (5514kb) |
streamripper | records online radio-streams (187kb) |
skype | online video and audio messager |
transcode | encodes video/audio streams extracted from dvd's (9692kb) |
wavemon | wireless device monitor (126kb) |
xdotool | program to simulate mouse and keyboard activity (204kb) |
xournal | pdf reader and editor (1625kb) |
vobcopy | Copies dvd .vob files to harddisk and merges them into file(s) (99.2kb) |
youtube-dl | downloads videos from YouTube.com and other sites (5072kb) |
9menu | program that allows creation of a menu, where each menu item will run a command (43kb) |
aisleriot | if you have a slow internet (24.4mb) |
All that remains is to configure as described in Debian Linux Openbox Guide; given that most of the applications mentioned there are already installed, provided you followed the above remove-keep guideline..