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 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.
  • requires the hsqldb RPM package. This package installs a service hsqldb, which does not even start without Java JVM. As far as I know, 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 package was not installed while was, 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?

Mandriva 2008.1 Spring ideas

Now is the time to publish all your feature requests for the next version of Mandriva on the wiki. Some of my personal requests: integrated LTSP support, KDEPim 3.5 Enterprise, IcedTea Java installed by default in Mandriva Free, LUKS support in Diskdrake, some more work for reducing power consumption, etc… Make your requests known now before it is too late!

PS: Please don’t post suggestions or bug reports here: they will only be ignored. The only right place for bug reports is Mandriva’s bugzilla, and for feature requests is the wiki.

Distribution review progress

Currently I am trying out Mandriva 2008.0, OpenSUSE 103 and Ubuntu Gutsy in the hope of writing a detailed comparative review soon. Don’t expect it soon, as I’m currently still collecting basic information, and I have not started writing yet. And from my experience I gathered with the “What’s new in Mandriva 2008.0” article, I know that the writing alone will take a long time…

Anyway, here already some early observations:

  • The Mandriva installer is by far the best. OpenSUSE’s installer crashes in Virtualbox, and Ubuntu’s live installer requires a system with 320 MB of RAM and the alternative installer is text only.
  • Mandriva has the best support for running as a Virtualbox guest: it will configure the Virtualbox X drivers by default. OpenSUSE is worst here, because it refuses to run at a 1024×768 resolution inside Virtualbox: it just says the VESA driver does not support this resolution…
  • Performance wise Mandriva feels the fastsest, OpenSUSE the slowest. This is very preliminary though as I have not yet tested OpenSUSE and Ubuntu on real hardware yet, but only in Virtualbox.
  • I had hoped Mandriva 2008.0 to be a nearly perfect release and that it would be very difficult to find any real bugs during normal use. Unfortunately, some rather visibile bugs are still present, while several of them were reported before final release.
  • OpenSUSE’s GNOME application menu (originally called Slab) is terrible. Most applications are hidden in a seperate browser window, which actually contains a huge list of applications in a few main categories shown in the left. You can add a normal application menu, but its structure is very bad.
  • At first sight, the graphical presentation in OpenSUSE is the most impressive, with Mandriva being a close second. Personally I don’t like at all Ubuntu’s brown look.
  • Ubuntu seems to have a very limited GNOME installation, with a much more limited amount of applications installed by default, compared to Mandriva and OpenSUSE. All in all, probably a bit too limited.

As there are very early observations, some of them are maybe totally wrong, so take this all with a grain of salt for now.

First looks at OpenSUSE 10.3

I downloaded the OpenSUSE 10.3 DVD to test it out and compare it with Mandriva 2008.0. I was interested in reviewing the current state of this distribution and maybe also get some inspiration for improvements I can propose for Mandriva 2008.1.

The artwork in OpenSUSE is very nice. There are some interesting ideas we should really consider in Mandriva: possibility to read the release notes during the installation of packages, some interesting yast modules (the firwall module is way better than Mandriva’s),… But I discovered already a lot of problems by just quickly testing it out in Virtualbox: the installer (actually yast) just crashes completely when detecting the network configuration, there was no possibility to use a 1024×768 resolution in Virtualbox, some strange choices of default applications (especially in GNOME: Brasero is currently still a bit too buggy, and Skencil is extremely ugly),…

So currently I have a strong feeling that Mandriva 2008.0 will be a better and especially more stable distribution than OpenSUSE 10.3. I’ll continue testing out OpenSUSE a bit and noting my remarks, and I’ll probably install it on an old laptop I have here, to see how it works on real hardware. I’ll do the same with Mandriva 2008.0 and I’ll maybe post a review comparing Mandriva 2008.0 and OpenSUSE 10.3 (and maybe Ubuntu Gutsy too?). Well, time will tell.

By the time you read this, there is much chance that Mandriva 2008.0 final is out and downloadable. Go check the Mandriva download page now to check it out!