Saturday, August 11, 2007

Road of Open Source success - I

One of the main ingredients for open source success is OEM (Original Equipment Manufacturer) support. A lot of companies are doing really well in this regard. Ubuntu has partnered with Dell to offer preinstalled desktops. SuSE & Redhat offerings are already available with HP and Dell, though its only for the enterprize server segment.

Apart from the OEM support, there are three more ingredients which attribute to the open source success, namely package manager, control center and out of the box experience.

Package Manager
Package management is not so easy in linux. The original packages or applications were distributed in the form of source code. There was a lot of chaos in the way packages were built and then everything converged to three command step; 1. configure 2. make 3. make install. But even this was not enough. People wanted prebuilt packages, thats when three big giants of linux distribution started, Slackware, Debian and Redhat.

Everyone was having its own type of package management; slackware had tgz, debian had dpkg and redhat had rpm. All three were incompatible. All stood the test of time, but in my opinion only dpkg succeded. Apt is another way to install and configure applications and also contributed the success of ubuntu.

RPM was good initially and also became the industry standard for linux packages; all the enterpize applications started distributing their application in RPM format. But updates are really hard in RPM and we have to deal with package dependency like hell. People are recently moving away from fedora and towards Ubuntu. One of the reasons I see is package management.

Gentoo introduced protage, and it seems to be panacia; it offered great promises. The user has the ability to compile the package with the optimization s/he chooses. Its really great to run dedicated servers or personal workstation on old machines. But it did not find any place in enterprize application. Recently there has been good efforts in form of pacman. Pacman seems promising.

When can the open source agree for a single package manager, or even provide interoperability between packages?

Consider a single scenario, I am using applicaiton X on Centos and feel it is really great. My wife comes over and wants the same application on her ubuntu machine. So what do I do, the best shot that I have got is to download it from one of the ubuntu repositories. If I find it there, its good, but if I don't, I have a bit of trouble. Considering Debian as Ubuntu's godfather and knowing the fact that Debian has the biggest repository of applications, I search it there and find one. But now I am unable the install the same application as that it seems to be incompatible with ubuntu.

So, considering my geek status, I would download the source package and try to install it. This option might not be available for average joe. Now Ubuntu does not provide build tools and kernel headers by default, so I have to install these in order to install the application X. I will feel a little bit frustrated but consider that a linux newbie comes to me and I explain all this to him, he will be petrified by the complexity.



AddThis Social Bookmark Button

0 comments: