BunsenLabs HeliumBunsenLabs Linux is a Debian-based distribution that uses the Openbox window manager. The distro was created by the CrunchBang Linux community after its developer announced in 2015 that he was calling it a day. I was a happy CrunchBang user at the time and remember the forum post well. It was one of those "where were you when..." moments.
The latest BunsenLabs release has been named Helium and is based on Debian's Stable branch (Stretch). The release announcement acknowledges that it took a while to get this release out of the door - Debian Stretch was released in June 2017 - and there don't appear to be an awful lot of new features. Still, it is interesting to have a look at the current state of CrunchBang's main successor.
Installation and first impressions
BunsenLabs is available for 32- and 64-bit processors. The standard ISO is just over 1GB in size, while a smaller CD-sized ISO is available for 32-bits architectures. Booting the ISO gives you the option to either run BunsenLabs as a live environment or to launch the installer. There is no option to launch the installer from within the live environment - you will have to reboot your computer and select "Install" from the boot menu.
The installer is a slightly modified version of Debian's installer. It features a modest amount of BunsenLabs branding and obviously there is no option to select a desktop environment, but other than that it is all Debian. The installer feels old-school compared with, say, Ubiquity or Calamares, but it does the job.
The release notes for Helium mention that the first system boot will be slow, and it certainly was - it took over two minutes to get to Openbox (although that included decrypting the hard drive). Subsequent boots were fast but the boot process itself isn't very elegant. For instance, the GRUB menu is supposed to have a wallpaper similar to the wallpaper used for the login screen and desktop but on my laptop it was rendered in black and white, with greyish blobs where the gradients are supposed to be. As the text in the GRUB menu is white much of it was unreadable.
When you first log in you are greeted by an interactive post-installation shell script. The script starts with a warning: we are not supposed to add Ubuntu PPAs or untrusted repositories, nor are we to add repos for other Debian releases. On the remaining screens we can update the system and install various extras, such as additional wallpapers, Flash, Dropbox and even a LAMP stack.
If you have ever installed vanilla Openbox on Debian you will know that by default Openbox presents you with a completely black screen. You can open a menu by right-clicking anywhere on the desktop but that is as far as the default feature-set goes. Openbox is very customisable, though, and with the help of other applications it is possible to add things like a panel and wallpaper.
BunsenLabs gives you a fully functioning system out of the box. The desktop features a single panel with a "launcher" area (for application shortcuts), a system tray and two workspace switchers / task bars. The combined workspace switchers / task bars are very smart; they not only let you switch from one workspace to the other but also show you which applications are open in which workspace. If you want to move an application to a different workspace you can simply drag its icon to the workspace.
BunsenLabs Helium -- Four applications on two workspaces (full image size: 436kB, resolution: 1366x768 pixels)
BunsenLabs' menu provides access to everything you might need and the items are organised in a logical manner. The first item in the list is "Run Program", which opens a basic application launcher (gmrun). This is followed by a list with common applications, a section with common categories of applications (Accessories, Graphics, etc.) and a section for common directories and recently opened files. Towards the bottom of the menu we get various advanced options (Preferences and System Tools) and at the very bottom we find an Exit button.
One of the things I like about Openbox is that it is very keyboard-friendly. You can open the menu with either the Super key or the Super-Spacebar shortcut and quickly navigate the menu using your arrow keys. For instance, to exit the system you can simply open the menu; hit either the End or arrow up key to take you to the last item in the menu ("Exit") and hit Enter. An even quicker way to get to the exit menu is to use the Super-X shortcut - there are key bindings for everything in Openbox.
BunsenLabs Helium -- The Openbox menu (full image size: 515kB, resolution: 1366x768 pixels)
Apart from being usable out of the box BunsenLabs also makes it relatively easy to customise the desktop. The menu includes dozens of links to documentation, configuration files and graphical utilities. For instance, under Preferences -> Openbox we get links to the main configuration files, links to basic graphical utilities that can be used to tweak the configuration instead, and a link to information about how to edit the Openbox menu. Helpfully, there is also an option to reconfigure the Openbox menu (which needs to be done before any changes you make take effect).
If you are not quite ready to dive into the configuration files you could start with BLOB, a basic configuration manager that lets you switch between various BunsenLabs themes. For each theme you can see which configuration files, icon theme and wallpapers are used and there is the option to save your own collection of configurations. It is a nice addition and it goes to show that BunsenLabs very much encourages you to tweak the system.
Personally, I found there was very little I wanted to modify. If this was my day-to-day system I would at some point remove the Conky system monitor from the desktop, although I do like how Conky is partly used to list various common keyboard shortcuts. The only other thing I would remove are the application shortcuts in the panel. They feel redundant and look out of place. The four launchers open the default web browser, file manager, text editor and terminal emulator, respectively. However, the icons are quite different from the icons for the applications they launch (Firefox, Thunar, Geary and Terminator). The icon for the default web browser, for instance, looks remarkably similar to the logo of the Safari browser.
BunsenLabs Helium -- Removing launchers via the tint2 configuration file (full image size: 558kB, resolution: 1366x768 pixels)
Repositories and software
BunsenLabs mainly relies on Debian's repositories and gives you access to non-free packages out of the box. Apart from the Debian Stable repositories there is a BunsenLabs repo containing everything from configuration files to themes and the post-installation script. The repositories and software can be managed either via the command line or by using the Synaptic package manager.
I quite like the selection of pre-installed software. You get the Firefox browser, VLC media player, Thunar file manager, Geany text editor and a few accessories, including the Catfish file finder and GNOME's Archive Manager. The only choice of software that I couldn't quite understand was the office software: you get LibreOffice Writer but instead of LibreOffice Calc you get Gnumeric. I guess the developers tried to find a balance between lightweight programs and the best tool for the job. For those who prefer the full LibreOffice suite there is an option in the menu to install just that.
As BunsenLabs is based on Debian's Stable branch most of the software is a little dated. Firefox is at version 52 (you get the extended support release, which hasn't moved to Firefox Quantum yet), LibreOffice is at version 5.2 and the distro ships with Linux kernel 4.9.
This ain't no desktop environment
So far I have skipped over the fact that Openbox is a window manager rather than a desktop environment. With the help of the tint2 panel and applications such as Nitrogen (a graphical application to manage wallpapers) and LXAppearance (a graphical utility to customise the theme applications use) it comes close to being a desktop environment. However, there are things that Openbox doesn't do.
A good example is the Openbox menu. Applications you install are not added to the menu. Similarly, if you would remove, say, Catfish, you would still have a hard-coded link to the program in the menu. To make changes to the menu you need edit the menu.xml file, either by hand or via a basic graphical utility called Obmenu.
It is possible to have a dynamic rather than a static menu. I would argue, though, that it is better to manually edit the menu. It simply offers much more flexibility and it reduces bloat. Menus in "proper" desktop environments tend to list applications which I need but which I never launch from the menu - image and document viewers spring to mind. At the same time it is not so easy to add custom menu items. I might want to add a menu item that opens an OpenSSH session. In Openbox that is easy enough once you understand the menu.xml file.
BunsenLabs makes managing the menu a little easier by launching whatever the default application is for a certain job. For instance, when you select Terminal from the menu Openbox runs the x-terminal-emulator command, which opens the default terminal emulator. By default this is Terminator but if you would install xterm and make that default terminal emulator then it would open xterm instead. The same goes for the web browser, file manager, text editor and media player. As an aside, it is for this reason that the application shortcuts in the panel have icons that look out of place. If you would make Chromium your default browser you probably wouldn't want the quick launcher to have the Firefox icon.
The point I want to make is this: the menu is simple and complicated at the same time. Early on in my trial I installed both Claws Mail and Thunderbird. I wanted to do this the proper way, so that I would have an item called "E-mail client" in my menu that would open the default e-mail program. After looking into the Debian Alternatives system I found that I instead needed to use a program called exo-preferred-applications to select the default e-mail program and that I could then launch the default e-mail client with exo-open --launch MailReader. I was able to achieve what I wanted but it did require a fair amount of research and the help of the BunsenLabs forums. In a full-fledged desktop environment setting the default e-mail client would be as easy as finding the relevant option in the settings menu. In BunsenLabs, there is no settings menu - you get lots of configuration files and tools instead.
BunsenLabs Helium -- Trying to configure the default e-mail client (full image size: 417kB, resolution: 1366x768 pixels)
There were a few other minor issues I encountered, mostly related to Conky. One thing I quickly noticed is that minimising all applications (by pressing Super-D) also minimises Conky. There is no obvious way to restore Conky again but after much digging in Conky's configuration file I found that changing the own_window_type variable from "normal" to "desktop" does the trick. I later found that running openbox --reconfigure to refresh Openbox's configuration files caused Conky to print its output on top of the existing output, which resulted in rather bold lettering. As I have never cared much for Conky I simply uninstalled it (and removed it from the autostart file). If you do like Conky, there is an active trade in Conky configuration files on the BunsenLabs forums.
Speaking of the BunsenLabs forums, I should mention that it is a fantastic community. The forums are fairly active and its users are genuinely friendly and helpful. To give an example, after my struggle with the default email client had been resolved someone chimed in to explain a little bit more about exo-preferred-applications (it is an Xfce utility and is used because BunsenLabs also uses Xfce's file manager). I have seen a lot of that on the forums and I like it. People really try to help you find your way.
I think it is almost impossible to overestimate the importance of the community. Openbox, tint2 and programs like Conky and Compton are highly configurable and it can be difficult to find the information you are after (even though the documentation isn't all that bad). Making seemingly simple changes can quickly become frustrating, and being able to get help from other users is really nice.
A BunsenLabs experiment
I installed BunsenLabs on an old Lenovo G50-30 laptop. I am hoping to give the laptop to someone who isn't particularly tech savvy and has fairly basic computing needs. With that in mind I set out to create an Openbox desktop that is easy to use and free from bloat. I wanted to get rid off some advanced features such as the second workspace, install a different theme and have a menu that contains only items the person is going to need.
By and large customising Openbox was straight forward. There are various graphical tools but they aren't really needed if you are happy to dig into the various configuration files. Tweaking the desktop took a few hours and I was able to achieve most of what I wanted.
BunsenLabs Helium -- My attempt to make BunsenLabs cleaner and leaner (full image size: 281kB, resolution: 1366x768 pixels)
The only thing I haven't quite figured out is how to make it easier to update the system. I want the laptop's new owner to never ever see a terminal window. The most obvious alternative is Synaptic but, much as I like the package manger, it isn't exactly user friendly. I might look into unattended upgrades as that would fit nicely with the aim of keeping things simple. For the moment though, I have opted to add some help files using YAD. I discovered YAD while digging into BunsenLabs' Openbox menu. The utility can be used to display the contents of custom help files. In other words, you can create a simple text file and add a YAD command to the menu to display its contents in a native window.
BunsenLabs Helium -- Displaying a text file using YAD (full image size: 461kB, resolution: 1366x768 pixels)
I have got a bit of soft spot for Openbox. I like how minimalist it is and how it hardly uses any system resources - according to my Conky panel BunsenLabs was using just over 200MB of RAM when idle. BunsenLabs provides a system that is usable out of the box but which can be tweaked any way you want. For this review I made the system cleaner and leaner but I could have gone in the opposite direction and create a desktop with conkies, panels and docks all over the place. DistroWatch's slogan, "put the fun back into computing", very much applies to BunsenLabs.
In short, this is a distro I could easily use as my daily driver. My only concern would be the project's long term future. BunsenLabs Helium was released almost a year after Debian Stretch was released and then there is the worrying fact that Openbox doesn't work under Wayland, which is getting ever closer to replacing Xorg. BunsenLabs has got a sound community though, so I very much hope this distro will be around for many years to come.
* * * * *
Hardware used for this review
My physical test equipment for this review was a Lenovo G50-30 laptop with the following specifications: