Edit: This post has now been updated with all the reviews and a final summary!
The dock was first given to us by RISC OS as far back as 1987, but in more recent years they have evolved from a simple panel containing application launchers into all-purpose task and window controllers. This format was popularised by Apple in OSX and much copied since - by Microsoft in Windows 7, ChromeOS, Unity and Gnome 3.
The XFCE4 panel, venerable and customizable as it is, does not (yet) offer this sort of functionality. You can add launchers, you can add a window switcher/window buttons, but you can’t combine the two. So if you want a modern dock, you need to go 3rd party.
Edit: Just to be clear, this post and the following reviews are concerned with docks rather than launch bars or panels. My definition of a dock is a bar that contains an icon for every open application, usually grouping similar windows together. The dock will indicate which applications are active or minimized. Clicking on the icon allows the user show, hide or close the application or in some cases switch between windows and tabs. Icons can be pinned so they are permanently on the dock. The obvious examples are given above in the intro. The main point being that when pinned, the dock uses the same pinned icon for window/task control. You can create a very good looking launch bar using the XFCE panel (see my post on recreating the ChromeOS look) and you can add launchers or customize the window buttons to display icons only, but you cannot merge the two.
There are number of docks that can be installed independently of your desktop environment. Most of these require a compositing window manager. Luckily, XFWM is just one of these. So without further ado, here are the contenders (click on the name to read the review).:
- Ease of installation
- Stability/Resource use
The results are in, and based purely on the overall scores that I gave each dock in the individual reviews, the winner is...
DockbarX is certainly the best dock to use within XFCE as it is the only one that provides a plugin for the XFCE Panel and provides the best compromise between simplicity, functionality, good looks and customization:
However, do make sure you read all the reviews before making your mind up. Everyone has their own ideas about what looks good, what is easy to install and configure and what their working practices are. With that in mind, read the following summary including the caveats about tabbed windows and Chrome/Chromium apps.
Only 2 of the docks that I tested were available in the Debian Jessie repositories but they were all hosted on Launchpad and available via Ubuntu ppas. I felt that Ubuntu was definitely the target system for some of these docks as most supported Unity quicklists. That being said, after a bit of trial and error, I did get them all installed on Debian.
Development was at different stages with each dock and each one seemed to be based on a different toolset and libraries.
- AWN - Written in C but currently under major rewrite. Development restarted in 2013. Plenty of themes and plugins available. Score = 7/10.
- Cairo/GLX - Can make use of OpenGL hardware acceleration. Can be used as a session manager under Gnome3/Unity. Highly configurable. Under active development but buggy. Score = 6/10.
- DockbarX - Supports full screen previews using Compiz and has an XFCE panel plugin. Easy to customize with plenty of supplied themes. Score 8.5/10.
- Docky - Built on Plank using mono for docklets. Currently lags behind Plank development build. Score 7.5/10.
- Plank - Lightweight and simple dock. No plugins, themes available but has to be configured manually. Latest version uses libbamf for window identification. Score 8/10.
- Simdock - Features pseudo-transparency so no window compositor required. Onli provides builds against current Ubuntu system, but development of features is static since 2007. Awkward to configure. 5/10.
Support for tabbed windows
None of the docks that I tried could show a list of open tabs, in for example, Firefox in the way that Windows 7 does. This may be a limitation of Linux window managers but it's about time at least one these docks integrated this feature. This is the main reason that none of the docks achieved a score of 9 or 10.
Support for Chrome/Chromium Apps
If anyone uses Chrome/Chromium apps in a standalone windows (ie by creating app shortcuts) then you will find they are all grouped under Chromium on the docks. Since the docks don't support showing tab lists (see above) then all Chrome apps are hidden/shown at once by the one icon. That is all except Plank.
Plank uses Libbamf to identify window class and ID and this makes a much better job, than libwnck (which most of the other docks use). With Plank, you can pin Chrome apps like gmail and YouTube separately to Chrome itself and their windows are treated as individual apps. Docky 3.0 will most likely support this feature in future.
Remember, these applications are docks not panels, but some do come with clocks, notification areas, application menu and other panel-type plugins (AWN, Cairo, DockbarX). However, don't necessarily expect to be able to totally do away with a standard desktop panel. That is why I recommend DockbarX for any XFCE user as it is the only one to integrate within the XFCE panel.
Click here for the first review - Avant Window Navigator
Click here for the second review - Cairo-Dock
Click here for the third review - DockbarX
Click here for the fourth review - Docky
Click here for the fifth review - Plank
Click here for the sixth review - Simdock
Let me know what your favorite dock is and why in the comments below. If you are a developer of any of these docks and anything is inaccurate or you would like to explain a feature, please contact me or leave a comment.