Thursday, October 30, 2008

Kubuntu Intrepid and Desktop Notifications

For those that aren't aware, Intrepid Ibex is just about ready to hit the streets (sometime Thursday). There have been a lot of changes in this release, and the Kubuntu desktop has had its share, including the switch to KDE 4.1. However, this post isn't about the new release, but rather a new application within this release, called update-notifier-kde.

The app was written by our friend Jonathan Riddell, and has been steadily improved upon by members of the Kubuntu team.

What is update-notifier-kde? It's a small python app that sits in your system tray and monitors your system for updates, crash logs, reboot requests, and other notifications. It integrates tightly with adept/apt, apport, and package update hooks.

Providing the user with useful feedback is very important to the whole desktop experience, and this app delivers.

Over the last few months, I have added a few tweaks here and there, and fixed a few bugs reported during the Intrepid alpha and RC testing. Currently, I am working on replacing the old KPassivePopup with the better KNotification.

It's a work in progress, but by using KNotification, the user is able to change how notifications are sent/received for any event update-notifier-kde generates, which was not the case with the KPassivePopup.

Configuration of these notifications is done via the system-settings. This can be seen in the following screenshot:

With KNotification, the user can completely disable the Popups, or add sounds, etc. This is important, because not all users are equal, and not everyone wants to see the Reboot Required Popup. There were a few bugs surrounding this very thing, and I'm glad to say, users will have the ability to finally turn this off if they choose to (not that I recommend disabling any of the default notifications).

So, I said it's a work in progress and that's for a couple of reasons:
  1. The code changes aren't yet uploaded (expect version 0.10 to have the change included)
  2. It needs some work on localization
  3. The KNotification isn't anchored correctly  (IMO) so I need to review that

Below is a shot of the current KPassivePopup. This is the KDE 3.5 bubble, and is non-interactive.

And here, we have the newer KNotification popup.

I hope to complete these changes within the next day or two, so this should hit intrepid updates in the near future.