Darwin's Theories Blog

New Theories for a New Time

KDE4 - First Impressions

2008-02-02
Visually impressive, and almost ready for prime time.
As most readers know, I use the UNIX operating system, particularly OpenBSD, on all my computers. On desktops I flit about between several "desktop environments" or user interface systems. OpenBSD's default is a simple window manager called fvwm, but it also provides an extreme minimalist window manager called cwm. When I want a full-function GUI, I use KDE, one of the two mainstream UNIX desktops (the other is GNOME). I find KDE more intuitive than GNOME, and I also like the fact that its default configuration only has one icon/menu panel (GNOME has two, which is a nightmare on the 1280x800 laptop that is my main desktop), and it's at the bottom, with a start menu at the left (like that other OS from Redmond, which I have to use at some client sites). Linux founder Linus Torvalds agrees with my sentiment; his "Just Use KDE" comment a while back attracted a lot of attention.

Update: Nowadays I mostly use xfce.
I've used KDE 3 for several years on OpenBSD, so it's natural to expect a new major release. And indeed, KDE 4.0 was released in January 2008. And (thanks to work by Marc Espie) KDE 4 is now working on OpenBSD (although, because it's so new and because it can't easily co-exist with KDE 3, KDE 4 will probably not be included in the upcoming OpenBSD 4.3 release).

KDE4 is nothing if not innovative. The new desktop shell, Plasma, tries to move away from the old desktop-as-directory paradigm using more dynamic features, which you can read about here. It supports widgets, similar to those on Mac OS X but which can be written in any of half a dozen modern languages, not just JavaScript. The graphical effects are also quite impressive. Plus, it's faster at some operations; opening a file chooser on a large directory used to be painful, but is now quite fast.

1280x800 screenshot

So why do I say "almost ready for prime time"? First, I'm seeing some instability - Plasma disappears every so often and has to be restarted, for example, or kwin crashes and gets restarted - but these might be because the KDE developers are only coding for Linux, not for portability (though parts of KDE4 - not including Plasma - can also run on MS-Windows and Mac OS). However, more significant is that the system just doesn't feel "finished". Many of the optimizations and features (especially configuration) that we took for granted in 3.5 are not in 4.0 yet. For example:
  • The "pager" feature that lets you have multiple virtual desktops. It seems to work almost exactly as in 3.5, with the annoying exception that you cannot get the page miniatures to display their names, only their numbers. The UI for "Configure Desktops" lets you assign names, but the UI for "Pager Settings" has only a checkbox for "Display the Desktop Number", nothing for "Display Desktop Name".
  • Start Buttons. I like single buttons to start common applications. KDE3 had a very nice Konsole (terminal program) control applet for the task bar, for example. The "widgets" that have taken the place of Panel Applets currently consist of a much smaller set (8 or 10 instead of 30 or so), and don't appear to be installable on the panel. As it turns out, for programs, you can find the program in the menu, then right-click, and select Add to Panel. And for Widgets the same as I found out by searching forum sites: you can drag Widgets directly from the Add Widgets dialog to the Panel (but not from the Desktop to the Panel), and not all Widgets yet work correctly in the Panel. For programs, you can also select Add To Favorites, which puts it in the first section of the K Menu.
  • For Programs or Widgets installed in the Panel, you have far less control over how the panel is laid out. This may be a conscious choice (see Decisions); if so it flies in the face of the desire for ultimate configurability.
  • Gratuitous changes to Konsole (the terminal program; I must admit that at heart I'm sometimes a command-line guy) mean that my "terminal striping" - commands that put the system I'm logged into, and the current directory - don't work. I presume it's just a different set of escape sequences, but why change it?
  • Clock - can't have a sub-list of selected timezones, have to pick from the entire list every time you move (painful for road warriors).
  • Kopete, the Instant Messaging client, doesn't have IRC support (even though it did in 3.5.8, and even though the Kopete developers hang around on an IRC channel named #kopete :-);  the code has only had one commit in the last month.
  • Migration Wizard - there isn't one, though one has been discussed at the Ubuntu Forum.
The first release of anything as big as KDE is bound to have some issues, and it does. Others agree with me; see KDE developer Aaron Siego's blog, and also this poll (when I viewed it on 2008-02-03, results were 12% "Works Great", 48% "Works but buggy", and 40% "still too buggy"). I'm hoping that 4.0.1 will correct some of these, and that the rest will come without too much delay (4.1). I quite like KDE 4, have been using it for a few days, and look forward to being able to deploy it as my standard desktop when it's fully ready.
Reply from Anonymous at 2008-02-06 13:58:15.841

Sure enough, on 2008-02-05, the KDE team announced 4.0.1, which fixes a few of the issues mentioned.

Reply from Ian Darwin at 2008-02-06 18:39:24.869

Yes, 4.0.1 is indeed out, and fixes a raft of small problems. I'm trying to get some of it working on OpenBSD now. The Kopete plugin for irc is still commented out(!). I guess 4.1.0 will be the release that's really working. -- Ian

Reply from Anonymous at 2009-06-26 20:58:22.053

Has KDE4 improved on OpenBSD since you blogged here?

Reply from Ian Darwin at 2009-07-14 19:43:16.547

Not yet -- "someday".

Reply from Mahesh at 2010-06-16 04:43:38.014

Has KDE4 improved on OpenBSD since your last comment? i.e. 2009 July 14

Reply from Ian Darwin at 2010-06-19 13:24:14.3

As a matter of fact it's being worked on this week, now that the compiler has moved to gcc4.