KDE 4.6 Beta 1 – a first look

The first beta release of KDE SC 4.6 was released yesterday. OpenSUSE had packages up almost immediately, so being curious as to what’s new, I’ve downloaded and upgraded to the new release. These are my impressions thus far.

KDE’s release notes tout the following (main) features of the 4.6 release:

  • libplasma now does does something with QML for widgets on devices – why this is the number one feature listed on a PR release about the new release I do not know. It’s hardly sexy;
  • the reintroduction of activities, which now includes starting and stopping applications as part of an activity. This sounds interesting – more below;
  • optimization of Kwin. The release notes say that this will LEAD to smoother window management and more stunning desktop effects. So I’m guessing these aren’t in this release;
  • faceted browsing in dolphin. What I think this means is that you can filter particular files by various categories in a folder view;
  • git plugin for dolphin – yawn;
  • introduction of akonadi to the PIM applications.

KWIN Optimisations

This is actually really hard to show, because any screen capture program I use to show the improvements will be jerky and completely defeat the purpose. However, I can say on my desktop running an NVIDIA card, using the 256.53 version – for some reason the 260 series has a few issues on my machine – is smoooooooth. No tearing on wobbly windows. That eternal bug bear, resizing windows is smooth, even if I have the wobble on resize thing going. Basically, on an NVIDIA card, Kwin compositing performance is awesome.

On my intel 945GM desktop things are slightly different. There is definite improvement in most areas. However, wobbly windows are now unusable and even moving windows with the wobble turned off is jerky. I’m not sure if I’m alone on this or not, but hopefully this will be fixed in subsequent beta’s.

Filters in Dolphin

This is actually quite cool. I think this is what the release notes refer to as “faceted” browsing. It allows you to filter progressively on various categories, including filetypes, time periods, size as well as text in the filename, or inside the file. This can be really useful for finding files in large directories or file systems. Particularly when you’re looking for a particular file, but don’t know exactly what it is – you just know that you’ll know it when you see it. I am going to have a further play with this to see what else it can do, but finally we are seeing how nepomuk can be incorporated into KDE apps. I just hope they add this to the file open dialog.

Migration of KDEPIM to Akonadi

This is a BIG DEAL. The KDEPIM suite of applications, including kmail, kaddressbook, korganiser and knotes has been ported to the akonadi framework. This change was originally scheduled for KDE SC 4.5, but was deemed too buggy to be included. 4.6 sees its introduction, and finally we can see how this technology works, and where the KDE developers may take this forward. This is how Wikipedia describes akonadi:

Akonadi provides unique desktop wide object identification and retrieval. It functions as an extensible data storage for all PIM applications. In KDE 3 each PIM application had different data storage and handling methods, which led to several implementations of essentially the same features. Besides data storage, Akonadi has several other components including search, and a library (cache) for easy access and notification of data changes.

Akonadi communicates with servers to fetch and send data instead of applications through a specialized API. Data can then be retrieved from Akonadi by a model designed to collect a specific data (mail, calendar, contacts, etc). The application itself is made of viewers and editors to display data to the user and let them input data. Akonadi also supports metadata created by applications.

Because Akonadi takes care of data storage and retrieval, which are traditionally the difficult parts of creating a PIM application, development of PIM applications is made much easier. In fact, the Mailody developer Tom Albers demonstrated how a mail reader could be created in only 10 minutes using Akonadi.

Quite lofty goals, but it’s finally starting to see its full realisation in KDE SC. I’ve only really tested this in kmail, as this is the only KDEPIM application that I use. When you first open kmail in KDE 4.6, it goes through a migration routine. This seemed to go just fine, and whatever it was doing, went reasonably quickly. When kmail opened, my usual imap accounts were there, and all the mail was there. Basically everything looks the same. I’m sure that’s what’s intended with this initial port. Basically to get everything into akonadi, so that it can be built on within KDEPIM and in other applications in wider KDE SC

The only blip that I have – which is a bit of a show stopper, is that I can’t send mail. When I press the send button, the email is moved to the outbox and that’s it. It’s as if kmail thinks that’s all it has to do, and someone else will take the email from there. I’ve filed a bug, and hopefully this will be fixed.

Activities

There have been some minor changes to the activities interface. However, this feature is still unintuitive and non-discoverable. As I understand it, you are supposed to be able to start and stop applications automatically based on what activity you have open, and have widgets on a per activity basis. This starts to sound interesting. However, the Activities interface looks quite unpolished:

It is obvious how to add an activity, and how to add a widget, but not obvious how to add applications, so that they start and stop when you open an activity. Hopefully this will be polished up through the beta phase.

Device notifier shows up cifs mounted volumes.

Other Stuff

I’ve noticed a couple of other minor things in my first day or so of using 4.6:

  • Mimetype icons in the oxygen theme have been updated;
  • cifs mounts appear in the device notifier plasmoid.

That’s it so far. I’ll update this when the next beta comes out, and I’ve had a chance to have a longer play.