Ubuntu update policy change is probably a good thing

Despite some premature reports on the net, Canonical isn’t moving to a rolling release schedule for Ubuntu. However, the organisation is open to making some changes to the way that some software packages are updated. It’s seems likely that a mechanism that supports the adding of up to date application packages outside of the normal software repository updates is probably on the cards, and I’d say that it’s about time.

The problem

Ubuntu's six month release schedule allows Canonical to ensure stability and means that organisations know that they are getting a reliable and predictable system. The snag is that updates to software applications tend to be mere bug fixes and security updates. This means that users who only use the official method to update their system have been left stuck with outdated software. Sometimes this is a big deal, as having to make do with a six month old version of Firefox, for example, makes the Linux desktop seem unwieldy compared to Windows.

It’s not just Ubuntu that suffers from this problem either. The current Debian stable release, Lenny, only offers KDE 4.1 in its repository. As KDE SC 4 users will recall, 4.1 was almost unusable. The solution, in this case, is to switch from Debian stable to unstable, but obviously, not everyone is comfortable making such a fundamental move, but you don’t have much choice if you want to use KDE 4 on Debian.

People with a bit more expertise can add the software that they need by compiling from source, installing a binary or by adding a PPA. However, the point is that Ubuntu is supposed to offer a good Linux experience for non experts, and these other methods (and backing out of them) are fiddly.

Visiting the Firefox website illustrates the problem. The front page correctly identifies the system that the user is running and offers a “Download Firefox!” icon. However, this icon links to a .tar.bz containing the binary files, with no explanation of how to install it, or for that matter, how to keep the new version constantly updated. Things get even worse when the hypothetical “average computer user” wants to try out Firefox 4 beta for a quick look.

In contrast, a competent Windows user could probably handle the upgrade. To that user, Windows will seem like the better system, and in all fairness, and from their perspective, they may have a point. Windows does allow you to easily add anything you want to your system, and it's hardly unreasonable to want to try out the latest version of Firefox, Chrome or Open Office, for example.

So what is the solution? Could Linux switch to the Windows application installation method, in which every application installed from a downloaded file and has its own unique method of monitoring updates? I certainly hope not. Package managers on major distributions are now so dependable that they have become a genuine selling point in favour of Linux.

The solution

The ideal solution probably lies with an automated, user friendly system that interfaces with the PPA system or a GUI package manager that can handle downloaded .deb or .rpm packages. The ability to back out of something that isn’t working and revert to an earlier version is also important.

I suspect that what Canonical will eventually offer in this area will be based around its Software Centre application. Hopefully it will add a feature to select the version of a software package and mark one version as the standard, stable release and another as the latest release.

The question is, how far will they take it? Will they have a definite split between base packages and software ports like the FreeBSD system, or will they highlight the 40 or so most important packages and add a system for adding bleeding edge versions for people who want them?

Comment viewing options

There is a solution for the Debian issue called Apt-Pinning (http://jaqque.sbih.org/kplug/apt-pinning.html). Basically you pick and choose which packages you want from unstable, while keeping everything else (that the new package doesn't need) from stable.

I'm sure there are some issues with dependancies, but I've used this method in both ubuntu and debian with pretty good results for firefox and other apps. Of course, some pretty GUIs would be needed to streamline the process for "non-experts".

As far as the firefox download link problem goes, why can't the work out a .deb installer like Google did with chrome which adds the Google repo to apt and auto updates through apt?

WOW, that's definitely a Windows way to look at Linux.
The 6+ month release cycle on Slackware doesn't bother me. And for the most part, all programs you need require a separate compile anyway.

No, both the Ubuntu, Slackware, and Rolling Distro are really bad solutions for mainstream Linux adoption.

What then is needed?

Well if you really must have constant updates for user applications then you have to freeze major updates for major system components for at least a 6 month period and have a repository of rolling updates for user tools like gimp/firefox/thunderbird etc.

This ensures the best stability possible for the system toolchain and major packages like GTK+/Python. THEN once a significant number of programs can no longer compile their latest version of the system, THEN you update to newer major versions of system components.

Until a distro actually executes this properly, I'll stick to Slackware.

It's already available in Debian using the backports-repository (http://backports.debian.org/). You can use a stable release and yet have the latetst openoffice.org or Iceweasel (aka firefox), etc. .
Ubuntu is again inspired by their benovelent deb-donators.

One-click install: use gdebi on debian or apt-url in Ubuntu. Windows is just a platform to run commercial software and games. Linuxdistributions are about integration of various kind of free software at one point in time.

I have used linux for 10 years and settled on ubuntu 5 years ago. Have never been bothered with updating to the latest software just because it has a bigger number. Usually wait a year and then update the whole lot. I get security updates and most program updates, so don't feel I am being left behind.
If I really need a new program, just go to website and grab it.
In reply to Paraplegic Racehorse , if businesses get security updates, what more do they need; bleeding edge package updates are not required.
cheers
Fredd

Sometimes an older version of a package will not work with the hardware or software a company (or individual) wants to use. I had to compile a newer version of the JACK Audio Connection Kit in order to use the programs I wanted. It's not a big deal for me, but a friend of mine who just started using Linux was really turned off by the idea of having to do this and still uses Windows for audio stuff.

Newer versions aren't the end of the world but they can make the difference between being able to use Linux or not.

I like the way this problem is solved in opensuse. There are numerous additional repositories (Build Service) in addition to the main repositories. Each of those hold the newest (or newer) version of a particular program or set of programs.
Lets say you run Opensuse 11.2 and want to have an up-to-date version of Firefox instead of the Firefox version in your main repository. To achieve this, you just add the Mozilla repository and switch your firefox to the new repository. Voila!
There is nothing Linux can learn from Windows relating to software management which is a terrible mess in Windows (no automatic updates for most programs; what little information there is about your software is scattered all over the place; no central control ...).

This is a big detriment to the adoption of linux, as a whole (and lack of big-name game titles). For any real penetration of the desktop, linux distros and application programmers need a method of userspace application management that is not necessarily the same as the system package management system. Klik, autopackage, zero-install and others have attempted to make this happen. Unfortunately, they were not adopted by either a major distro or application programmers.

Trending Topics

Upcoming Webinar

Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report

August 27, 2015
12:00 PM CDT

DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.