Quick look at Kubuntu 8.04 KDE 4 Remix

A few weeks ago, a researcher at work received a new HP 6910p laptop. As he’s a Kubuntu Linux user, we decided to try the new Kubuntu 8.04 KDE 4 remix to get an idea of all the new features in KDE 4.

The first impression was not very good. Already quickly after the installation, we discovered lots of bugs and missing features. It was impossible to drag and drop an application to the panel at the bottom. The battery monitor looked huge and ugly compared to kpowersave, which is what we are used too. There was no possibility to suspend to RAM and suspend to disk in the user interface. When doing it from the console, the laptop did not always come back from hibernation. Only a very few Plasma desktop applets were available, of which some seemed to be duplicates (I had the impression there were two different RSS readers), while others had funky, incomprehensible names.

We tried activating some of the window manager effects. When we chose the default OpenGL method, we were presented by a black screen. We pressed Esc, in the hope that it would return to the previous working state, but it seems that this actually accepted the setting in the (invisible) confirmation dialog: the screen remained black, and we had to remove ~/.kde4 in order to have a usable desktop again. The black screen was certainly caused by the lack of DRI for the Radeon HD mobility card in the free ATI driver. KDE should have really warned us that DRI was not working, and should immediately have disactivated the compositing effects with OpenGL When we tried the window effects with xrender, the results were less dramatic, but the effects did not display correctly.

We installed ATI’s binary fglrx driver. However, one week later, we decided to switch back to the free driver, because the kernel and/or the X server locked up very often with the binary driver.

Half of the time, when logging in into KDE 4, the window manager does not seem to be started, and panel settings are not loaded. Getting a multiple monitor setup working, was also very problematic: the KDE 4 display settings tool, did not seem to work at all (nothing happened when changing the settings, and the Apply button remained disabled). In the end, we got it to work with the xrandr command line utility, following the hints on ThinkWiki. But even then there were problems: when using a multiple monitor setup, the external monitor’s image sometimes is shifted about 5 centimeter to the right, giving a black border at the left, and a part of the desktop invisible and unreachable to the right of the external monitor. When maximizing a window on the smaller laptop screen, where the panel is active, the maximized window seemed to take the height of the higher external window, so that part of it was hidden behind the panel. Also when using the xrandr utility to switch to a different mode, the window manager often crashed.

So all in all I’m very negative about Kubuntu 8.04 KDE 4 remix. KDE 4 should never have been published as being a final release, but should have been published with a clear Technology Preview name. Even KDE 4.0.4 from the backports repository, did not help fixing the many issues we had. Distributions like Fedora 9, OpenSUSE 11 and Kubuntu are making a huge mistake by shipping this alpha quality desktop by default in a final product. Apart from that, it seems (K)ubuntu 8.04 has other problems related to the kernel and the binary ATI driver.

I’m hoping of installing a machine with KDE 4.1 beta on Mandriva Cooker this week-end, and I will try to retest some things there and report the problems to KDE’s Bugzilla. I don’t have too much hope though. Several features have again been postponed to version 4.2 (for example the multiple-line taskbar, like was the default in KDE 3), while kdepim will only gets its first release for KDE 4 now, so I expect it to still be buggy at this moment.

Reducing power consumption

Last week, I installed a new 2.6.25.4 kernel on CoMO’s HPC cluster. The cluster consists of 9 IBM System x3550 machines with each 2 quad core Xeon E5320 CPUs (1.8 Ghz) and 8 GB RAM connected by a gigabit ethernet switch. According to the PDU, under full load, the power consumption is about 12.1 A (which should equal about 2800 Watt). Now in the new kernel I enabled some power saving features, such as cpufreq (ondemand governor), tickless kernel (dynamic ticks), USB suspend, etc. When the cluster is idle, it only uses 9.4 A now.. That’s a reduction by more than 20%! I still don’t understand why not all distributions are activating the ondemand governor on all systems by default in their init scripts… The power usage under full load does not seem to have much changed at first sight, which is not very surprising.

When the master node and the gigabit switch were turned on, but the 8 compute node powered off, power usage was 2.8 A. After cutting of the power to the 8 compute nodes on the PDU, power usage was reduced to 1.4 A. So 8 servers which are switched off but still connected to the power, use almost as much as one server which is powered on!

Not much blogging anymore

I’m not blogging really much anymore lately. Now that I can directly contribute RPM packages for Mandriva, I prefer spending my time fixing and improving packages than by blogging :-) Anyway, if you’re interested in what I’m doing, you can take a look at my CIA.vc page. In the future, I’ll try to post a bit more often a message here too.

One week of KDE

Last week, I swtiched back from GNOME to KDE for one week. I used KDE 3.5.9, not 4.0.2 because I think that one will very probably not be mature enough for my needs.

What is nice in KDE, is that it is often much more advanced than GNOME functionality wise. For example, Kopete has much better MSN support than Pidgin: it supports sending and receiving of away/personal messages, there’s webcam support,… The KDE notifications framework is a great way to fine tune all kinds of different notifications to events, such as sounds, passive pop-up notifications, etc,… K3b is by far the best Free CD burner application, while Amarok is still unrivaled in its combination of power and GUI attractiveness and GNOME’s F-Spot does not even have half of Digikam’s features. KDE’s memory usage also felt better than GNOME. My 1 GB system seemed to swap less than in GNOME, running comparable programs.

The big problem with KDE however, still are the random crashes and various things which do not work as expected. In one week of time, I experienced two random Kontact/KMail crashes. GWenview/nspluginviewer is crashing when entering a directory with movies if you have mplayerplug-in installed. KMail sometimes gives new mail notifications for old, unread e-mail and changing the file associations for MIME types, does not always seem to work correctly, especially when using the right click – Open With menu, and selecting the option to always use the selected application in the future. KDE does not support mounting LUKS encrpyted file systems and the fact that you have to explicitly open a removable device first in Konqueror in order to have it mounted, can be annoying at times.

So I am back to GNOME again now. While it has generally less features than KDE, the features that are there, generally work very reliably, which is not always the case in KDE. Unfortunately, I am afraid that the Linux desktop will only really start taking of if there’s a desktop which can nicely combine stability, features and ease of use, which is not yet the case to my feeling. I am curious to see what KDE 4 will bring in the future. Based on Mutt’s motto, for now I dare to conclude: all desktops suck, GNOME just sucks slightly less.

Apple forcing its own web browser to iTunes users

It seems that recently, Apple started pushing its Safari web browser to all Windows users having iTunes installed. I’ve never been an Apple fan: I think the OS is certainly not more userfriendly in contrast to what some people say, and although it is somewhat Unix based, they removed and re-implemented half of it (I’m thinking of things like launchd, broken NIS support and others), which is terrible for people used to *nix. And I have my doubts about the hardware too: apparently the latest generation Macbook Pro still come with way too less USB ports to work comfortobly, the international keyboards are different from standard PC keyboards, and I’m still not sure it is really that cheap, or at least the “Pro” stuff).

With the decision to force the installation of Safari on all Windows systems running the Apple updater, Apple is finally showing its real face: just like Microsoft, it does not care at all about its users and will do whatever is necessary to gain widespread adoption.

Updated Serendipity

I just updated Serendipity, the software that is behind this web log, to version 1.3. The update went very smooth: I am using Subversion to manage this software, so a simple svn switch to Serendipity’s 1.3 branch and a few clicks to update the configuration file, sufficed to make everything up to date! I should play around a bit to see what improvements this brought me and whether the multi-language stuff finally works correctly (which I doubt, but one never knows…).

Bye Bye PulseAudio

Some time ago, Mandriva decided to install the PulseAudio sound server by default in its distribution. Personally I did not really like the decision to activate PulseAudio by default in all desktop environments: I have been using Alsa with great satisfaction now for years, and I did not have any problem with that, so having to depend on yet another service did seem overkill to me. Nevertheless, I let PulseAudio be activated on my system too, in order to help as much as possible with bug hunting.

I think this was very useful, as I could help debugging some problems which are now fixed already or will probably be fixed soon, like some policykit related problems, problems with libao applications and pulseaudio, an amsn crash due to a bug in pulseaudio’s oss wrapper, some PulseAudio menu entry fixes, suggestions about the the default choice of PulseAudio applications installed by default.

PulseAudio has improved a lot during the last two months, and it’s sure that Mandriva’s current implementation will be a lot better than what was shipped in Fedora 8. Still I am not conviced at all it is a good idea to activate PulseAudio by default like will be the case now, and I have decided to remove it from my system.

To explain why, let’s first take a look at the advantages which PulseAudio claims to offer:

  • Sound mixing: different applications can produce sound at the same time without any problem. I have been using Alsa for years now, either with sound cards which support hardware mixing, either with Alsa’s dmix software mixing. I’ve never had trouble playing different audio streams at the same time with this set up.
  • Moving sound streams between different audio cards. I only have one sound device, so I do not need this feature. This feature could be handy for people using headsets for VoIP application, because they can move their VoIP application to the head set, and keep their music player on the normal sound card. I am not sure a sound server is really needed for that: I would expect VoIP applications to have a configuration panel where the user can change the audio device to use.
  • PulseAudio makes it possible to set different volume levels for all applications. Most applications today already use their own internal volume mixer like for example Rhythmbox, Amarok, Totem, Kaffeine, Pidgin,… Because of that, I have never felt the need to use this PulseAduio PulseAudio feature during these months, and I doubt even lots of users will know of the existence of this possibility.
  • PulseAudio does higher quality resampling than Alsa for sound cards supporting only 48Khz output. I have such a sound card, and did some listening tests with headphones. I could clearly hear a difference between PulseAudio’s low-quality “trivial” resampler and its better “speex-float-1 resampler”, however I could not hear a difference between PulseAudio’s higher quaility “speex-float-3” resampler and Alsa’s resampler: both sounded good to my ears. I did not really find any reliable listening tests proving that Alsa’s resampler is bad, only some vague claims.
  • PulseAudio makes it possible to send sound over the network to another machine running PulseAudio. Without any doubt, this is a great feature for thin clients, but this feature is only used extremely rarely on normal desktop systems.

So I did not find any advantage in using PulseAudio. Still, the potential features could be interesting and make it worthwhile to keep PulseAudio nevertheless, one never knows these features might become useful one day? No. For me there were too important disadvantages when using PulseAudio:

  • PulseAudio’s resampler uses a lot of CPU time. (Mandriva bug #36084). On my not too slow Athlon 64 3500+ CPU, PulseAudio was using more than 7 % of CPU time when playing music with the default resampler. Choosing the lower quality resampler speex-float-3 made it use still more than 3 %, which is still a lot on such a CPU. Rhythmbox itself also seemed to use more CPU time when using PulseAudio than when using Alsa. There is clearly a lot of optimization to do here. The only reaction by PulseAudio’s developer is that MMX/SSE/SSE2 optimization patches are welcome…
  • PulseAudio forces every application to use PulseAudio. When PulseAudio is activated, other applications cannot access the sound device directly. Alsa applications are routed through PulseAudio with a libalsa plug-in, OSS applications with the padsp wrapper. As the libao bug shows, this is still not working like it should. Even KDE’s Arts sound server output is routed now through the PulseAudio server: that means KDE 3 users will enjoy running two sound servers at the same time! Not only are there still difficult to debug interaction problems (known by Fedora for months, but unresolved), but it seems clear to me that this has to introduce extra latency for audio applications. In the Windows world, there are different professional studio applications which require very specific sound hardware. How could such applications benefit from minimum latencies and other advantages of these hardware, if they cannot access it directly, but have to pass through PulseAudio?
  • PulseAudio stops all sound if you switch to another console and/or switch to a different user. If I switch from X to tty0, there is no reason why PulseAudio should mute all my audio applications. In the end it feels like PulseAudio prohibits me to use tty0 and thinks that I should use an X terminal instead. I don’t like being forced to change my behaviour. If I want to stop my music, I will really do so myself, there’s no need to decide this for me.

Looking at PulseAudio’s timeline I currently have the impression that not much development is happening anymore, but instead the developer spends his time writing a rant about Alsa.

In the end it feels like PulseAudio could be a funny toy for geeks who want to tinker with their sound system, but for someone who wants things to just work without too much hassle, Alsa still feels much better. That’s why I removed as much PulseAudio packages as possible. All my sound applications are again using Alsa now. Everything is working fine, and I feel freed from a service which was only causing me needless trouble. In the end, I think the most problems which PulseAudio tries to solve, should have been fixed in Alsa instead of developing a complete new sound server.

Update 23 January 2008: It seems some people consider this post as a “rant” or as “bashing”. Personally I have the feeling this is not a completely fair judgment: I tried to clearly give objective facts for why I do not like PulseAudio, while “ranting” or “bashing” is much more negative and is much more about feelings than about real facts. It should also be clear that I would consider PulseAudio acceptible if it its resampling did not use so much CPU time as it does now, and if it was not so invasive, but let applications still use Alsa directly, like in fact Arts and Esd always have been doing.

Testing Mandriva 2008.1 Cooker KDE

This week-end, I tested Mandriva Cooker 2008.1 KDE. The procedure was the same as last week: a default KDE network installation via my local FTP mirror (only main) in a Virtualbox virtual machine. Here are the issues I noticed. I submitted the most important ones to Bugzilla.

  • The Virtualbox time synchronization service is started much too early. The first boot, it fails to start because Virtualbox’ dkms modules have not been built yet. Reported as Mandriva bug 36728.
  • At the first boot the DrakFirstTime wizard says no working Internet connection could be found, but after I logged in, the connection was working fine. Reported as Mandriva bug 36727.
  • The KDE menu shows the “KDE 3.5” header image twice at the top, and sometimes the Most Used Application header is also duplicated or the All Applications header is missing, making everything appear under Most Used Applications. This was already reported as Mandriva bug 36700.
  • Like is the case in GNOME, the description for applications (stored in the GenericName field) should be shown next to the name in the menus. There is currently no way for new users to know that Amarok is a music player and Kaffeine a video player, except by starting them up. I reported this already a long time ago as Mandriva bug 29900.
  • The gnome-media package is installed in a default KDE installation. This causes a More submenu in Sound & Video. I reported this already a long time ago as Mandriva bug 35293.
  • Pulseaudio’s Volume Control appears in the More submenu in KDE, while there is no native KDE alternative. It should appaer directly in Sound & Video. Reported as Mandriva bug 36726.
  • Pulseaudio Volume Control and Pulseaudio Preferences are also missing an icon the KDE menu. Reported as Mandriva bug 36714.
  • Also related to Pulseaudio and arts, I once saw the error: “Sound server fatal error: cpu overload, aborting”. This problem has been noticed by other people already on the Cooker mailing list, but there is no reproducible test case.
  • The kicker panel at the bottom is terrible in its default configuration: the height is set to small and because there are a lot of applications added to the panel and lots of applications active in the system tray by default together with the 4 virtual desktops and now also the media applet, there is way too less space left for the task list. The current configuration is only acceptible for widescreen and high resolution monitors. People have been complaining about this before (actually for 2007.0 Mandriva reverted to the normal height because of the many complaints for years about it) but I have the impression Mandriva thinks the corporate logo on the program menu button is more important than usability :-(
  • Related to the above problem, the Mandriva Control Center should not be added to the kicker panel. Reported as Mandriva bug 36725.
  • The Internet and Tools menus are too long in a default KDE installation. This can be fixed by consolidating the main Kontact applications in one menu item. I reported this already a long time ago as Mandriva bug 32666.
  • The Kdenlive video editing application is missing a GenericName description in its desktop file. Reported to the Kdenlive bug tracker bug #66.
  • While Firefox is the default browser in KDE, some URLs still open in Konqueror. Reported as Mandriva bug 36724.
  • KMail should check for new e-mail immediately when it’s started, like all other mail clients do. Reported as Mandriva bug 36716.
  • Akregator should check for new feed entries immediately after it has been started. Reported as Mandriva bug 36717.
  • The KDE ia_ora style still causes wrong rendering of the buttons in Amarok. This problem has already been reported a long time ago as Mandriva bug 33502.
  • KMilo should be split out of the kdeutils-klaptop package and should be installed by default. This will help fixing the problem that special keys on multimedia and laptop keyboard do not work in KDE. Reported as Mandriva bug 36731.
  • If Gwenview is installed, personally I think it should be preferred as the default picture viewer, above showFoto, because Gwenview makes it easier to immediately browse the other images in the same directory.
  • There is currently no easy to find network browser installed by default. Something like smb4k should be installed by default again.
  • I think the gtk-qt-engine package should be installed by default, because it offers the possibility of changing the theme used by GTK+ applications in KDE. It should not be set set to the gtk-qt-engine by default, but to use the native GTK+ ia_ora theme, like is the case now.
  • knewsticker and kdeprintfax should not be installed by default. Keeping yourself up to date with news, is better done with a true RSS reader like Akregator, and not many people have the right hardware to use kdeprintfax. The same is true for kpilot and kpalmdoc.

Next on my Cooker to-do list: quickly check out the default applications included on Mandriva One KDE and GNOME alpha2, test Mandriva’s server packages,… I can really recommend other people to do similar things: pick a subject or program which interests you, test it intensively, by preference in a new and clean Mandriva installation and file all problems you encounter in the projects upstream bugzilla or Mandriva’s bugzilla!

Testing Mandriva 2008.1 Cooker GNOME

This week-end, I installed Mandriva Cooker in a Virtualbox virtual machine. I did a default GNOME installation, and noted and reported all problems I found, in the hope of improving the quality for when a new alpha or beta version comes out. I did a network installation from my local Cooker mirror (which only has the main repository, no contrib). Here’s a quick summary of the problems I found:

  • There are currently problems when installing the / partition on a logical volume using LVM. The problem is known and being worked on. As a work-around, I installed using standard partitions
  • The keyboard layout selection dialog is very ugly and confusing, especially when the “More” part is opened. Reported as Mandriva bug #36521.
  • When I set the timezone to Europe/Brussels, in the next screen, the local time and UTC time were equal, which is impossible in this timezone. Reported as Mandriva bug #36522
  • After the installation, X did not want to start. This was caused by a problem in the Virtualbox display and mouse drivers. This bug was already reported as Mandriva bug #35085.
  • When X failed to start, the dialog program was used to show a message informing me that X could not be started. While this message was visible, it seemed like dialog was using 100% of CPU time. I need to verify if I can reproduce this bug.
  • After running urpmi –auto-select, the dkms modules could not be build anymore. My kernel was updated, but because Mandriva’s installer did not select kernel-desktop-devel, the kernel-devel package was not updated too. Reported as Mandriva bug #36524
  • Mandriva’s update applet mdkonline is way too verbose: when it is checking for updates, it shows a notification bubble stating: “Warning – Please wait, checking for updates”, and if there are no updates available it way say: “Warning – Your system is up to date”. The warning word gives the (wrong) impression something is wrong. And actually these messages don’t really interest me. I just want to be notified if something if wrong or if there are any updates available. Personally, I think this applet should even be completely hidden if there’s nothing to say, so it does not clutter my notification bar. Reported as Mandriva bug #36526
  • The Firefox GNOME theme was not installed by default. The problem is that the main repository only contains an outdated version of the theme, which cannot be installed anymore with Mandriva’s Firefox 2.0.0.11 packages. Contrib contains the right version. Reported as Mandriva bug #36513
  • Personally I think subpixel font smoothing should be enabled by default because most people use TFT monitors nowadays and without this setting enabled, fonts look too blurry. Even on an old CRT monitor, I found subpixel font smoothing very acceptable and nice to use, so personally I don’t see any reason not to enable this by default.
  • The GNOME terminal was unusable: it appeared almost completely transparent and unreadable, including its menus and title bar. Disabling Metacity’s compositing fixed this problem. And it fixed also a problem where the screen would not refresh at all anymore after coming back from screen blanking. When disabling compositing via gconf-editor, the whole GNOME session hung. Reported as Mandriva bug #36527
  • In GNOME’s menu System – Preferences – Language and location the Region combobox was completely empty. It seems like this configuration tools also duplicates the functionality found in draklocale (run as user). One of the two should probably be hidden then.
  • The eog image viewer was not installed by default. Because of this, images would open in The Gimp, which is not very handy for quickly viewing an image. Reported as Mandriva bug #36520
  • When the system starts up, a message is printed: “Warning: Alsa driver is already running”. I guess the alsa or sound service tries to load the module which was already loaded by udev coldplugging before. Actually, years ago, it was said that those two sound services would be merged. This should really be done now, it is confusing because it is not clear what’s the difference between these two services.
  • OpenOffice.org requires the hsqldb RPM package. This package installs a service hsqldb, which does not even start without Java JVM. As far as I know, OpenOffice.org does not need this service at all, but just uses the hsqldb Java libraries. The hsqldb package should be splitted then, so that it’s not necessary to install and activate an extra service, which does not even start at all. Reported as Mandriva bug #36472 and Mandriva bug #36427
  • Because the openoffice.org-style-tango package was not installed while openoffice.org-style-gnome was, OpenOffice.org defaulted to the default Sun icon theme in large size, which is very ugly. Reported as Mandriva bug #36519
  • Personally I would prefer Beagle not to index aggressively when the screensaver is running. I find it very annoying that as soon as my screensaver starts, I hear my hard drive thrashing the whole time.
  • Personally I find Epiphany‘s minimum font size of 7 much too small. Setting it to 8 gave me comparable and much more easily readable fonts as in Firefox, while not causing any negative effects on web lay-outs (such as unwanted text overflow).
  • When starting Rhythmbox for the first time and opening the Edit – Preferences menu item, an error pops up that the Podcasts directory does not exist. Reported already as Mandriva bug #29908 and now also as GNOME bug #507541.
  • Mandriva includes some nice documentation, but none of it is installed by default. Reported as Mandriva bug #36518.
  • gstraemer-0.10-pulse was not installed because it is in contrib. Reported as Mandriva bug #36517.
  • I encountered a Yelp crash, but I had no backtrace, and could not reproduce it.
  • PulseAudio creates a whopping 6 menu items in the Sound & Video menu, which makes this menu look very cluttered. I think pavumeter should not be installed (removes two menu items, not a regression, because 2008.0 did not have any VU meters in the menu too), neither should paman (it only gives some technical information which does not really interest me) and padevchooser. Only the volume control should be installed by default, as that’s the only application normal user might use often. Not yet reported, as I think this should be accompanied by some other changes to the task-pulseaudio dependencies and suggestions, about which I need to think a bit more and about which I’ll start a discussion on the mailing list soon.
  • I think it could be interesting to install gstreamer0.10-ffmpeg by default because it enables playing WMA/ASX files and radio streams in Rhythmbox.
  • drakmenustyle is installed by default, while we only really support the Mandriva menu structure. The tool in itself still works, but the default GNOME menus were missing some applications present in Mandriva’s menus, as was expected. In that case, we should probably not install this application by default.
  • Still a bunch of faxing applications are installed by default (hylafax-client, efax). Personally I think the number of people having the right hardware to use their system as a fax and the number of people really using such software, is extremely low so that we don’t need to install this by default. Anyway, I have proposed this many times before, and it feels like I’m banging my head against a wall, so I won’t bring this up again.
  • Tightvnc and rfbdrake are old applications which are not really maintained anymore. They should be replaced by the much better Vinagre and grdesktop applications, which are much nicer.
  • Nautilus is somewhat broken, but this caused by the GVFS transition, and the problems are known, so no need to report this again. Let’s see how this evolves during the next few weeks.

Improving Mandriva’s menu structure

I finally started writing a new paper evaluating the new menu structure as was introduced in Mandriva 2008.0. Generally, I think the new menu structure was a huge improvement: no more having to go two or three levels deep to start a simple audio player or an compression utility, is a big advantage.

Some things can still be improved though, especially in KDE, where some menus tend to become a bit long. I’m trying to write down some proposals to fix these problems. I’m also going to write a bit about default choice of installed applications, as this also influences how menus look right after the installation. Don’t expect a complete new menu structure again, as that would be useless now, but some proposals for smaller improvements to the current structure, which should not be difficult to implement.

If anybody has any practical proposals for improvements, let them know here. Which menus are too long for you, and what are their contents? How would you propose fixing the problem? Which applications are installed by default, but do you remove immediately after installation because you never use them? Or the inverse, which extra applications do you install immediately after the installation of Mandriva?