The quest for a dock

featured

I’ll confess something: I like docks. Am I weird? I don’t know, although if the three most popular operating systems in the world are any indicative the answer is no. In the last two years Canonical created Unity, which includes a dock-taskbar hybrid, and Microsoft followed suite, and then Gnome 3, and almost all other Desktop Environments have some sort of dock. Needless to say, Apple uses a dock in Mac OS X.

But not KDE. While reproducing Microsoft’s hybrid taskbar is as easy as pie finding a dock is rather hard. Not to sound negative, what they’ve done is amazing, but Plasma’s developers kinda missed the mark in that front. Supposedly Plasma would’ve brought a flexible desktop in which widgets could seamlessly go from the desktop to the panel or to a dock or to any “container”, they kinda, kinda achieved it.

But I digress. As the tittle suggests we want to be find the right dock to use with KDE. So let’s start by the only native dock.

Fancy Tasks

Daisy dock was another native option however it has been abandoned, I should also point out that I’m not entirely sure if Fancy Tasks suffered the same fate. Unlike all other options to follow Fancy Tasks is not available in the repositories instead you need to manually download the deb from kde-look.

Since Fancy Tasks is a plasma container you need to add it as such, just like you would with a panel, by right clicking in the desktop and selecting Add Panel > Fancy Panel:

It tries to look similar to Mac OS X’s dock, reflections and spacers included. It more or less achieves its goal, you can be the judge:

By default it doesn’t look quite like this. Not unlike the panel, Fancy has a cashew by clicking it you get same options as in the regular panel safe for Add Widgets:

By right clicking the cashew, spacer, or any empty zone, and selecting Configure you can access all the other settings:

Under general we find the same options as we would in the Task Manager. In the second tab we can change the appearance of the dock by setting a custom background, showing/hiding labels (by default labels are shown but in my opinion it clutters the dock way too much) and changing the animations.

In the third tab we can change the order of applications in the dock as well as adding and removing apps. Also, it’s possible to add menus straight into the dock.

Sadly, I don’t think Fancy Tasks is good enough to recommend it yet

Pros

+ Is a native to KDE, so it integrates well with KWin.

Cons

- Very buggy.
- The animations aren’t particularly fluid or well done.
- It doesn’t support widgets at all.
- It can’t even display a clock, let alone the system tray.

Avant Window Navigator 

Despite being designed for GNOME AWN works decently on KDE, and it has plenty of options to customize it, although many won’t work with KDE applications. Let’s take a look at it:

The first thing you probably noticed is the sharpness of the icons, this is not because I picked them manually, Avant does this by default. By clicking the Avant Icon in the far left of the dock we open its settings.

AWN has a ton of setting, and you can open multiple docks if you want to. There’s many different styles for the dock (3d is what I’m using in the screenshot), and a ton of animations, quite ironically though, it doesn’t offer any form of parabolic zoom. Animations are not perfect but are definitively much better than what Fancy offers. It also supports themes, and there’s quite a few in the web. But more importantly it offers all kind of applets:

Despite being clearly designed around GNOME, the vast majority of applets work just fine on KDE. There are applets for showing all type of glanceable information, as well as folders, terminals, menus, the system tray, file browsers, web browsers, desktop switchers, etc. Some don’t quite integrate with KDE, for example, it uses GNOME’s menus instead of KDE’s. But overall is a decent experience.

Pros

+ Many applets to chose from.
+ System Tray.
+ Automatically uses the best looking icon available.
+ Support themes.
+ It works well with KWin.
+ Plenty of animations.

Cons

- Animations are just decent.
- It doesn’t offer parabolic zoom.
- Feels out of place in KDE (no matter how much you tweak it).

Cairo Dock

Another dock clearly designed for GNOME, but most things work as expected in KDE. Just like AWN it supports many applets. For the most part Cairo’s applets are more flashy and feel better designed.

One cute detail is that if you have two instances of the same application if you click the corresponding icon in the dock it can trigger KDE’s exposé for that pair of windows, although a less intrusive regular pop-up is also available. To configure Cairo just right click on any icon and select Cairo-Dock > Configure. 

There’s four tabs. In the first one you can configure every launcher and add-on individually. In the second one you can enable and disable any plugin. In the third one you can decide how it behaves, which consists mostly of animations and window management, how it looks and shortcuts. All these options mixed with multiple docks can result in some very weird and personal setups.

The last tab is perhaps the most interesting of all for end users:

You can change export and import your own themes, but more importantly there’s a repository to download new themes.

Pros

+ Parabolic zoom.
+  A repository for themes.
+ Very customizable.
+  Many applets/addons.
+ More dock styles.
+ System Tray
+ Plenty of animations.

Cons

- Not as easy to configure (mostly because the interface is too cluttered).
- Most animations are way too flashy and distracting, even by default.
- Animation don’t feel fluid either.
- Still feels alien.
- Most themes are ugly.

Docky

Docky is by far the smoothest and most responsive of all docks. It’s also the prettiest thanks to well executed minimalism.

Click on Docky’s icon to open settings. Unlike AWN’s and Cairo’s, Docky’s settings are very well organized, easy to follow, and presented in a very clean way. Moreover, the rest of the your desktop fades out while the instance of docky you’re dealing with gets highlighted:

In the first tab we can select the theme, how it interacts with windows (auto-hide, intelligent dodging, etc), its size, how pronounced is the zoom, if you want a 3d background or if you want it to extend from edge to edge.

In the second tab are all docklets which are essentially widgets or applets for Docky. In the third tab we find the helpers. Helpers serve to extend the options offered when you right click the icon of certain apps. Every docklet and helper can be configured individually. Some docklets transform in a very cool way when you click them:

That settles it, right? Nope. Sadly, while Docky has its strengths, it also has it weaknesses. You can’t add the System Tray to it, you can’t add launchers by dragging and dropping them from any of KDE’s menus (the workaround is to open apps by using the regular menu, right clicking the corresponding icon in Docky and pinning them). Helpers and Docklets often only work with GNOME applications.

Pros

+ Smooth, smooth, smooth.
+ Very responsive.
+ Easy to configure thanks to a well organized interface.
+ Docklets transform Docky to display information when you click them.
+ Themes.
+ Gorgeous minimalism.
+ Seems like part of KDE.

Cons

- Can’t drag apps to the dock in KDE.
- Docklets and helpers more often than not only really work if you’re using GNOME.
- Lacks a System Tray.
- Has less options than AWN and Cairo.

Conclusions

After reviewing all relevant dock offerings it’s clear as water that there’s no perfect dock for KDE, that is something that needs to be fixed. Anyhow, from what’s available my personal choice is Docky despite all of its issues with KDE. the reason is that I just want a simple good looking dock, but if you want more from your dock, like a terminal, a system tray, and a galore of options, AWN and Cairo certainly are strong offerings. At the end of the day, I prefer a simpler but better executed dock, while some value the raw amount of features. But regardless of which side you take in this kind of disjunction one thing is undeniable: You don’t want to use Fancy Tasks.

Mathematics and Philosophy student at the National Autonomous University of Mexico. Website

  • Mel

    Docks look nice, but they aren’t very practical for the way I work so wouldn’t use one even if a great one was available. I seldom see my desktop. Something is always open. Plus, the Docky one just looks like a wide floating panel, which can easily be done in KDE and I could make the panel appear over the top of whatever is open when I need it by bumping the window edge. I do have a panel like that, in fact. Much more useful, IMHO.

  • Lawrence Granroth

    nice article … I think you asking for too much in a dock … but still nice

  • armakuni

    Well done, thank you. It’s a pity that there are no real docks for KDE because I think plasma could handle it easily.

  • Butch Konneker

    What are the requirements for a dock? On OSX, a dock can send commands to an app and vice versa (bounce the dock item with an alert.) On the Ubuntu Launcher (a dock), items can be defined in .desktop files, which might have a menu, but they can just start an app, not send commands to running apps.

    Don’t confuse the system tray (what you call panel) with dock. Since they are so similar, you might think frameworks for desktops would support both.

    And that is why KDE has no dock: because KDE is built with Qt and Qt has very limited support for an app interacting with a dock. At most, you can set the icon in the dock (and it can change state). But an app can’t otherwise receive events from the dock.

    Qt has full support (interacting with apps) for the system tray. But it is probably against Interface Guidelines for most apps to use the system tray. Again, it seems like an easy extension for Qt to provide full support for a dock.

  • http://www.bluemintlinux.com/ TheBlueMint

    Thanks for the article (a little late commenting, I know!) Daisy is still, by far, my favorite KDE Launcher. It appears to NOT be abandoned, as an update was issued July of 2012. Perhaps you guys could package it in your Homerun PPA? (Hint Hint).

    https://www.kubuntuforums.net/showthread.php?59851-KDE-Application-Launchers&p=347865&viewfull=1#post347865