Once upon a time, Linux enthusiasts were forced to compile the software they needed. It was the only option available. While the act of compiling software was itself not so bad, the need to chase down dependencies was a deal breaker for many Linux newcomers.
These days however, package management for most Linux distributions has made any sort of software compiling something most people can safely avoid.
As I was pondering these changes to the Linux world, this got me wondering: do most Linux users really prefer one kind of package management over the other? In this article, I hope to shed some light on this once and for all.
I'll also consider the overall availability of software titles for various Linux distributions and how this affects adoption by anyone looking to try out a given distribution.
RPMs and Debian packages
While there are other software package types out there, the two most commonly used are the RPM and Deb (Debian package). Each option offers various Linux distributions a variety of great FoSS applications from both repositories and direct download links. Each option has its own merits, but the biggest difference I've found to the end user is with software availability.
On the one hand, I've found a lot of enterprise software favoring RPM availability over that of the Debian package. At the same time, I've found that the majority of new software being introduced to the masses, is far more likely to see the Debian packaging than RPM. Mind you that this gap is closing, however it's still very much an issue that affects end-users based on my own experiences.
Where things get interesting is when you start to look at distributions such as PCLinuxOS (based on RPM using Mandriva) that rely on RPM packages, yet use Synaptic for the installation of any desired software. This is fascinating since Synaptic was designed for apt-get and Debian based distributions. One might even think of this as a blurring of how we install software on the Linux desktop.
Alternative software installation methods
Despite that most distributions come with their own methods for installing software, there have been attempts in the past to get you to use alternative methods. The most famous among them would have to be Linspire's famed Click-n-Run (CNR) software installer. As the company began to drown, they tried some crazy things to stay afloat. Among them was the idea of allowing non-Linspire-based Linux distributions to install software using their CNR installer.
At its core, the idea might have been more successful had there been less duplication with the existing software repositories already provided by most Linux distributions. Even worse was the issue of software being outdated in CNR. While the installer was worthwhile to those using early Linspire releases, in its later days it was pretty sad to watch.
The next alternative method for installing software was known simply as klik. Unlike CNR, klik handled software installation in a completely different way.
In the interest of accuracy, klik didn't actually install software in the traditional sense. Instead, your desired software installation was readily available after completing an application selection. In the end, you would end up with "application images" (much like disk images) made up of software "recipes" based on your application selections.
The obvious advantages to using these klik packages is that when it was time to drop an application, all one had to do was drag it to the trash. Much like one would see on OS X. The downside to this type of software management is that you could only run around 7 to 8 klik applications at once. Considering how unlikely it is most people would be running more than 8 applications at once, klik could have been a smashing success.
After a bit of a transition period, the klik project died a peaceful death and other like-minded projects were left to take its place. One of the most commonly known is called Zero Install, followed up by the klik-based Portable Linux Apps project. Both of these projects still work, each offers the same benefits as you would have found with klik. The only difference is that Zero Install is completely cross-platform while Portable Linux Apps is for Linux only systems.
Self-contained apps come with a price
Since the beginning one of the biggest issues I found with klik and similar software solutions was their lack of reliable updates. It's understandable, since you would need something in place to ensure that all of the software is being checked on a regular basis.