Why Ubuntu never works (and how an ideal Linux distribution should look like)

I like the work Ubuntu is doing for Linux and they initiated some interesting advancements for desktop Linux. The problem is that I never recommend Ubuntu to anyone. The reason is that although their product is easy to use there is also always something wrong with any Ubuntu release. Because they move so fast they do not have enough time to properly test and validate the releases they make. For this reason they invented Ubuntu LTS but this version is outdated after 6 months due to lack of hardware support. It only receives security fixes. Both version are not ideal. And for this reason I could not recommend them to anyone.

The question is what are the requirements for a great desktop Linux distribution. From the point of view of the user the ideal Linux distribution should:

  • be easy to use
  • works on every computer reliably
  • looks great
  • have the latest stable versions of all user applications (OpenOffice, Firefox)
  • includes all available hardware drivers
There is also another important group which have specific requirements for desktop Linux distributions. These are the ISVs. Their requirements are:
  • stable software support environment (APIs, libraries, filesystem layout)
  • bug free software environment (to avoid support issues related to the Linux distribution)

When you combine the requirements of these two groups I can only conclude that Ubuntu is just not there yet and never will be with their current product scheme; regular Ubuntu and Ubuntu LTS.

Other Linux distributions have similar schemes as Ubuntu like for instance Fedora Core. And Fedora Core suffers from the same flaws as Ubuntu does.

One exception from my point of view is Red Hat Enterprise Linux Desktop (or derivates like CentOS). Their approach although not perfect is better. In short their approach is to:
  • provide stable software environment (same kernel, support libraries, APIs and filesystem layout)
  • backport of new hardware drivers to support new hardware
  • regular rebase of user applications to latest stable version (OpenOffice, Firefox)

Their approach is not perfect because they only backport a subset of all new hardware drivers. This is probably due to effort involved and incompatibilities in the kernel ABI between kernel versions. Moreover their rebasing does not happen enough to which extend their Linux distribution is always at least 1 version behind the latest stable version.

The ideal Linux distribution should fullfill all requirements of both users as ISVs. No Linux distribution does this. One of the major challenges is the backporting of hardware drivers. The reason that backporting is necessary is due to the fact that Linux has a monolithic kernel design. It should be better when hardware vendors could just make one or two versions of their drivers and with that support all Linux distributions.

This would elimnate the need to backport hardware drivers to support new hardware on a stable platform and at the same time makes it possible for bleeding edge Linux distributions to move to a stable platform.

But this would require a complete different mindset of the Linux kernel developers. Based on the discussions regarding this topic I would not hold my breath for the near future that this is possible.

For anyone doubting the necessity of separated hardware drivers I can only point to the efforts of AMD/ATI and NVidia to support binary drivers on a wide range of Linux versions. Their drivers are always behind the capabilities of Windows and notoriously unstable. Their open source counterparts are not much better and are still in their infancy after years of development.

Without solving the issues with the current Linux distributions desktop Linux will never gain traction and reach its full potential. Desktop Linux will only succeed when it can meet the requirements from both users as ISVs. Users want a reliable and stable OS combined with great hardware support and the latest stable versions of their favourite software. ISVs need to be able to target and support a stable platform. Current Linux distributions are moving targets or do not support the latest hardware or applications. This needs to be resolved. One major improvement would be the separation of hardware drivers from the kernel. I can only hope this will happen and at that moment desktop Linux has a bright future.

Picture by trekkyandy (Creative Commons Attribution-Share Alike 2.0 Generic)

  • Pingback: News - Free Software, Shareware Downloads and More()

  • Pingback: Why Ubuntu never works (and how an ideal Linux distribution should … | Linux Affinity()

  • Sandeep

    True!

    Its mostly the ISV who make the Desktop successful. I can bet if we get Yahoo Messenger, Google, skype & all the voip apps working like they work on Windows, Linux users will double instantly… Its the same logic applies to the big picture.

  • http://linuxease.com Clint Brothers

    I think the better answer would be to have all oem’s open hardware specs before the hardware is on sale. Proprietary code is what causes instability in the first place! I’ve never had problems with a 100% open source system. It’s always when I put in non-free or binary blobs that things seem to malfunction. Also software like Adobe FLASH needs to be Open and cleaned up so that crapware called silverlight doesn’t start taking control over the web.