Benjamin Smedberg has an interesting post on Ubuntu and it’s effort to be a provider of not only the OS, but the software around it. I think the ‘solution’ Ubuntu choose is really a workaround for a fundamental flaw in Linux. Getting software to run quickly and easily without intimate knowledge of the OS is tough at best.
By far the best out there, though not without it’s faults is Apple. Not only are many installs just drag/drop (though that is rather cool), but ones that do require an installer typically use Apple’s installer functionality, providing a very simple interface for the user. Most importantly when Apple switched to x86, they realized users don’t know/care what’s inside their computer, or about the differences in x86 and PPC architecture. The solution they came up with was “Universal Binaries” (similar to how FAT versions of applications were used when moving from 68k to PPC). At the end of the day, the user knows nothing. The software does the work. As good as Apple’s effort is, there is a flaw, uninstalling is not always the best. In most cases it’s just drag it to the trash, but there’s no undo for installed stuff like drivers.
Ubuntu would be best off pushing for the Linux community to follow a model similar to Apple with a few changes:
- Encourage applications to ship in the same package, and encourage distributions to use the same package installation system. Just like Apple, the user will have a familiar and obvious way of adding applications to their computer.
- This is the tough part: 1 download for most popular Linux distributions. So it doesn’t matter what version of ____ your running, you can just install and let the installer figure it out similar to Universal Binaries.
- One up Apple by providing a “roll back” or uninstaller that will remove and restore to what the system was before the installation was done.
Installing software on Linux stinks. Ubuntu is much better than the rest, but I don’t like how you have to rely on Ubuntu in order for that to be the case. There’s a market for someone who can solve the problem. It’s a barrier between Linux and the general user. Until someone solves it, Linux will likely remain a niche product in the desktop market.