Having one of the best package-management systems (apt-get, synaptic and aptitude) in Ubuntu is the distributions crowning achievement. It is also an Achilles heel. Since the packages supplied via repository often result in unwanted changes. An individual user may require a particular interface for instance, but since the package is upgraded automatically for all users on the system, there is no way of keeping the interface on the system without locking the version in Synaptic, which then prejudices those users who may want to progress to the next version.
There are solutions available. The debian community has long known about update-alternatives which allows one to run multiple versions of the same programme. Here is how to run multiple versions of ruby for instance. Since so much about Ubuntu seems to happen inside the terminal, is it any wonder opportunistic development hasn’t provide us yet with a GUI interface for what is really an extremely useful command-line application? I am also surprised update-alternatives hasn’t found itself woven in to the Synaptic fabric as part of the very rich ecosystem that is constantly evolving and which must surely provide alternatives to common software installed via the official repos?
Another solution is to take the kind of approach which has already created independent Adobe Air applications and an environment surrounding AIR on my system. (As we speak I am wondering why there isn’t a quick and easy method of injecting an early version of VLC in order to power a piece of software developed upon a poor Asian man’s framework.!!!)
Oinstall for instance, is an application installer which practically injects software.
A rather frigtening thought at first, but it has an extremely well-developed interface even though it is bound to offend those who believe one Database of applications via aptitude should rule over them all.
It really is worth taking zeroinstall out for a spin, but be warned, you will probably be written off as a “bitjunkie” while risking the purity of your Ubuntu system in the same way running any Adobe AIR application, or heaven forbid, playing with Mono, puts ones at the feet of a marketplace over which one may not have as much control as one would wish. Here is a tutorial
sudo apt-get install zeroinstall-injector
So keep in mind, not all development is vertical, some happens horizontally between applications. The ecosystem cannot afford to simply reboot itself every time a new version of Ubuntu pops out of the Tux factory. Parallel paths are therefore needed so that we may evolve with freedom.