Linux Looks to Apple Model
Surely there must be a way of making the process of installing and removing software in Linux suck less?Want to deploy Linux on your servers without pulling your hair out? There may soon be an app for that. A consortium of Linux developers representing the major distros is developing an app installer system that will allow users from any distro to browse an application store, read ratings, and click on a button to download and install an application -- much like Apple's model.
The fact that it is so painful is one of the major barriers to the open source operating system's more widespread adoption: Messing about with repos, or -- heaven forbid -- compiling source code, is not exactly what most normal people choose to do with their spare time. Compared to the fairly straightforward process of double-clicking a Windows installer file, or the seamless experience of choosing an app from Apple's App Store, installing an application in Linux can be quite an ordeal.
The good news is that the end may be in sight for end users subjected to the tyranny of config files and the whole make install malarkey. That's because work is well under way toward a Linux equivalent of Apple's App Store that will work with pretty much every major distro. Earlier this month, a whole bunch of smart black T-shirt guys (and the odd gal or two) representing Linux distros including OpenSUSE, Ubuntu, Fedora, Debian and Mageia got together to consume cafffeinated beverages and thrash out details for an app installer system that will allow anyone, using any of these distros, to browse an application store, read or contribute ratings and comments, and ultimately click on a button to download and install an application. Life may imitate art, but Linux, it seems, imitates Apple.
Ultimately, the aim is to hide all that ugly Linuxy complexity from people who just want to download and run software on whatever distribution they may find themselves using, said Richard Hughes, a developer at the meeting who works for Red Hat. Talking to ServerWatch, he said "I think we need to hide the concept of repos completely, and just show users a lot of applications. I don't think these kind of people care about packages, and they certainly don't care about repos. If we want to push Linux as an alternative to Mac OS X or Windows 7, we have to provide this type of functionality."
A detailed illustration of the architecture of the app installer system being designed is available, but essentially it will work by getting each distro to map files to packages. That means when a user requests a particular application, the system will work out which packages for that distro contain the necessary files needed to run the application, and then download and install them. Each distro will probably also maintain its own server with reviews, comments and screenshots, but these may be federated so where a screenshot on a particular distro is not available, a screenshot from another distro can be retrieved instead.
The plan is to have this app installer system ready by the end of 2011, with users accessing the system using something modeled on Ubuntu's Software Center front end. "Hopefully, if Canonical agrees to drop the CLA [contributor license agreement] from the Ubuntu Software Center, then we can just make a few changes and all use that," says Hughes. "If they refuse to drop the CLA, then it's impossible to ship in GNOME, and we'll have to write our own front end client. That would put the project back 18 months or so, I would estimate, and be a real waste of everyone's time," he says.
For the moment, at least, the initiative is firmly aimed at Linux desktop and laptop users rather than server admins running high-end Linux installations who are better served by remote admin frameworks like RHN and yast. But it's hard not to imagine a Software Center type of approach to installation would have some impact on server admins -- even if it is just a matter of enabling them to find and download a utility or two more quickly and conveniently.
There was some debate about what to call the initiative, but after considering names like project CrApp, AppRoach and Appollo 13, the group has decided to give it the moniker AppStream. The fact that this is also the name of Symantec's application streaming technology doesn't seem to have fazed the team -- hell, these are Linux guys writing rebel code, after all -- and in any case, the name is just an internal one. If and when the system is complete each distro will be free to give its front-end software any name it likes.
Something like App Store, perhaps? It certainly has a ring of success about it.
Paul Rubens is a journalist based in Marlow on Thames, England. He has been programming, tinkering and generally sitting in front of computer screens since his first encounter with a DEC PDP-11 in 1979.