Industry


Ads by TechWords

See your link here


Subscribe to our e-mail newsletters
For more info on a specific newsletter, click the title. Details will be displayed in a new window.
Computerworld Daily News (First Look and Wrap-Up)
Computerworld Blogs Newsletter
The Weekly Top 10
More E-Mail Newsletters 

Linux software installation myths

In a recent story about Microsoft running scared of Linux, I got a lot of mail saying things like, "when installing programs becomes as easy as Windows then Microsoft will be in trouble....most people couldn't be bothered stuffing around trying to find programs that will work and then figuring out how to install [them]." Ah, hello, it's actually easier to install software in Linux than it is in Windows.

There is, however, a key difference that it appears many Windows users don't get. In Windows, every program has its own installation routine. Usually, but not always, it requires you to click on some variety or the other of individualized setup program. In mainstream Linux distributions you use one program, often called a package manager, to install all your programs.

Personally, I find the Linux method easier because not only do package managers install the programs, they also enable you to search for a program. Say you want a program to display Adobe PDF (Portable Document Format) files. In Windows, you need to find out what program you'll need-Adobe Acrobat Reader, then download it, and then install it. Easy enough, but it could be easier.

With openSUSE, for example, I select Install Software from my main KDE menu. Install Software is part of openSUSE's YaST administration program. I'm then presented with a menu where one of my options is to search for software. I put in 'PDF,' you see I don't even need to know the name of the program that can handle PDF, and it shows me a listing of programs and their descriptions. At the top of the list is AcroRead from Adobe. I click on it and YaST takes care of downloading and installing it.

So, in short, with Linux I don't need to even know the name of a program, I just search for what I need with the package manager and once I find something I like I just give it one click and that's it. With Windows, searching, downloading and installing software is three separate operations. Advantage: Linux.

To quote Ian Murdock, co-founder of the Debian Linux distribution and now Sun's vice-president for Developer and Community Marketing, "What's the single biggest advancement Linux has brought to the industry? It's an interesting question, and one that in my opinion has a very simple answer: Package management-or, more specifically, the ability to install and upgrade software over the network in a seamlessly integrated fashion-along with the distributed development model package management enabled." I completely agree.

All Linux distributions include package managers. These include command-line based tools like Debian's apt-get and GUI-tools such as Synaptic, commonly used by Debian and Ubuntu; PackageKit, which is used by Fedora; Conray, which goes with Foresight Linux and Smart Package Manager, which attempts to work with a wide variety of Linux distributions.

There are also projects like Xandros', formerly Linspire's, CNR (Click-N-Run) software installation system. In CNR, Ubuntu, Linspire, Freespire and Linux Mint users have an online catalog of free and commercial software programs. You explore the Web pages, find a program that strikes your fancy, and with one click, once more you download and install it.

Underneath these package managers, things do become more complicated with RPM (Red Hat Package Manager) and Deb package file formats. Debates on how to handle the package manager engines can get quite heated and technical, but users don't need to worry with any of this. You just use your distribution's package manager and wonder why in the world anyone would think installing software on a modern Linux is complicated.

What People Are Saying

you forgot on additional advantage of the packagemanager

It increases the security of the system, as all packages are delivered from known secure repositories.

On Windows you can download and install any arbitrary software from any arbitrary location, and you have absolutely no idea if it's safe to install or not, you might believe it is, you certainly hope it is, but you never really know. The Add on security system might warn you, then again, it might not. You just take your chances.

Package Repositories = Achillies Heel

Distro package repositories are an/the achillies heel of Linux distributions, not the end-all-beat-all, you, Ian, or anyone else fawn over. Every new/extra package/program that a Linux distribution offers becomes an additional drag on the distro's resources. As more and more Linux software becomes available, they'll (repositories) eventually become untenable, or vast application pre-selection will need to be done. So much for the almighty Linux choice then, in practical, end user terms. If a distro's benevolent dictators in charge don't offer an application that an end user wants in their repositories, or it can't be found for that distro in some other walled-garden Click-n-Run establishment, then your installation simplicity claim takes a drastic turn for the worse. Then, foolishly arcane editing of apt configuration files and such, or worse yet, cryptic drudgery at the command line, or the always festive make and compile round out the menu. That's just a bit of what they mean when they complain about software installation in Linux.

Microsoft's standardized installer based software system enables other, third-parties, to share the packaging and distribution burden for Windows compatible software. Regardless of how many new programs and application are made available for Windows, none of them cost Microsoft one-red-cent, no limiting factors. For all the intrusive, dictatorial, low-lifed scum-of-the-earth that Gates and Balmer have become over the years, the Microsoft way of software distribution is more empowering to the non technical end users. End users are only locked into the Microsoft desktop core. They can get all of their other software needs through third parties with a simple click-through installation. With Linux's distro-specific software distribution model, the non technical end user is utterly locked into depending on the one distribution for everything. Effective vendor lock-in, just swapping dictators. The Linux distribution specific software repository model simply doesn't scale well.

If you hadn't of late, lost all of your journalistic objectivity and become the consummate Linux fan-boy/apologist, Steven, you'd be able to see this too.

A Linux-wide community consumer desktop core distribution with a general purpose installer is the only viable overall solution. Even now, as Ubuntu and its derivatives gain in prominence, the other distros are feeling a little left out. That Mandriva article a week or so back is but one example. Just a matter of time before the outcast band together to somehow yank the Linux monopoly capitalist wanna-be M$-Ubuntu off his thrown. To date, we've had nothing but endless wrist-wrestling in the locker-room where desktop Linux is concerned. Isn't it about time we get together, get out on the field and start playing the desktop game as a team? Maybe Ubuntu's success is just the catalyst we all need to get the outcast's to opt for a free enterprise GNU/Linux solution, band together and create this community core distro. It'll surely be utterly incompatible with the Ubuntu core, by design, of course.

Just download the RPM/DEB/etc

You forget that you can simply download any RPM, DEB, or what ever package your distro supports and install it with a simple double click, just as you would with a windows installer.

And there's nothing stopping you from using windows style installers, among others VMWARE does that with their software.

I know we're talking about

I know we're talking about installation here but...

Windows has a proximity of a standard for installations but does it have any sort of standard for updating a system?

One of my biggest gripes with Windows is the lack of anything resembling an easy way to update. Either I have to load the program and it tells me there's an update avaliable and it'll download it for me and if it's really friendly, it'll even attempt to do the update for me.

Otherwise it's up to me to go onto the net every month or so and check each and every individual non-MS application and install the updates myself.

Not only that but all of my hardware? Yep. Drivers need to be updated too from time to time.

Compare that to my Ubuntu system where on a commandline I can type in:
sudo apt-get update & sudo apt-get upgrade

Soon after, depending on the speed of your internet connection (or link to the repository), you have a fully updated system.

Compare that to, go to website, find updates, download updates, install updates, move on to next application - throw in a couple of reboots and you've lost near on a day.

You can keep your "standardized installer" and your day every couple of months of finding updates. For my money, I'm sticking to the convinience of Linux.

Achillies Heel Cont....

www.autopatcher.com is an extremely comprehensive and competent updater for Windows.

Yes, your other point of updating non-native windows apps and drivers is a valid criticism which really hasn't been entirely adequately addressed by the Microsoft software infrastructure. Currently, each third party, independent software vendor(ISV)takes care of updates by calling home (including firefox) to check for updates.
We can all agree to question the security and privacy wisdom of allowing a plethora of installed, binary-only executables to have regular online access without knowing exactly what is being communicated. Not to mention the needless resources expended having all these apps running their routines in the background. A Linux version for the implementation of this functionality within the ISV/hardware vendor, direct to end-user Windows style installer/updater could/would ideally be a single proxy desktop interface (QT/GTK) that would make all these version checks and downloads itself while uploading usage and bug reports that the user would opt-in to pre-authorize. The defaults being that of extreme stealth. This would effectively sandbox all application executables that don't absolutely require online access to serve their intended function. Initial installation would, of course, remain a familiar, simple, click-through general purpose installer.

Drivers, with the exception of some really comprehensive and conscientious, independent white-box builders dealing directly with their customers, there is no driver updates beyond manual checks and Microsoft's (fairly lame) driver update, To my knowledge anyway.
However, this functionality could easily be incorporated into the proxy interface mentioned above.

The general purpose Linux installers that could be found just below the radar for all of five plus years now, all suffer from having to be heroic tools that try to work around the massive eccentricities and needless dissimilarities of the various core distros, essentially making them so complex and unwieldy that they can't help but be error prone.

A community owned and controlled core GNU/Linux consumer desktop distro who's package repositories and updating apparatus were limited to the just the core desktop apps and libraries, that would be invoked by the GP installer when checks find the need of some missing core dependencies would go far in providing end-users with what they desire in software installation.

Whether as part of a community core distro, or as a standardized installer mechanism agreed upon by all of the major core distro's, current Windows users will continue to expect the simple, direct ISV/HV to end-user click-through software and driver installer, and they'll surely be be loathe to give it up.

Windows installer

As someone who has packaged, and repackaged thousands of Windows applications, the vaunted "standardization" anonymous refers to in "Achilles Heel.." is overstated. Even MS msi packages don't always follow their own standard. MS Office 2007 is a prime example of bastardizing the system by using MSP files instead of MST files to customize the systems.

There are a plethora of vendors utilitizing older exe based installations vs MSI, and even those using MSI fail to do a good job with them. Adobe and Sun are two such screwballs in addition to just about everything Symantec packages.

On top of it all, the argument is comparing apples to oranges. MS does not offer a single one stop shop for anything but MS, while the Linux distributors offer updates for everything they include within their distribution plus extras. That is what the article was about, not the preponderance of software availability or even technologies underlying the system. No user is required to go in and edit the repository information unless they want to, it isn't required at all unless they want to go beyond being a user and become a 'power user' and begin adding items that may, or may not make their system instable.

On the other hand, very few windows installations from any vendor can assure the end user it will not screw their system up.

Yeah, the repository situation can be a little skewed from time to time, but the concept and implementation are way ahead of the Windows ecosystem at this point in time.

Achilles -- Heel cont....2

Doug, you are making your arguments based upon some, admittedly--as your examples rightly point out--poor implementations of the core concept of the Windows--direct from ISV/HV to end-user--software distribution model. Poor implementations will always be present regardless of the core, conceptual model. You then fault Microsoft for not having a one-stop-shop for anything but MS's software. What?!, are you serious? People aren't vendor-locked deeply enough into Microsoft for you? Do you seriously believe that all the ISV's/HV's need to have to depend on them for packaging and distributing all their wares in some one-stop-shop, and them be totally locked into Microsoft too? Even if your answers to these questions are affirmative, the logical result of your Linux distro one-stop, super-center style of software distribution being applied to Microsoft, would be staggeringly huge.

The next Debian distro release will necessarily occupy four DVD's, with every subsequent release, the Debian team (God love em) find it more and more difficult to keep within any kind of release projection schedule, due in part, to the sheer volume of packages. How many thousands or hundreds of thousands of DVD's do you supose it would take to hold all of the Windows compatible software available? Even now, all of the current distro's who draw on the Debian core for their repositories use but a tiny subset of the available software. This, again, is a perfect example of the fact that in order to maintain some sanity, a pre-selection process of available software must be undertaken, thereby effectively reducing "choice". As was rightly offered in Achilles heel earlier, the Linux distro-specific-repository (one-stop-shop) model promotes effective vendor lock-in for non-technical end-users, and is simply doesn't scale well.

Linux package management needs to continue doing what it admittedly does well now, but it also needs to figure out how to externalize this process in such a way that it will scale well, and also, at the same time, attempt to make whatever solution arrived at, a universal one, that all the various disto's can share in-common.

There currently exists an universal software installer that works equally well on any and all GNU/ distro's. Ironically it is the Microsoft installer that is used within, and a part of Wine. Maybe another way that we could use package repositories only for the core of a distro and standardize third party software installation in GNU/ would be to create a Wine-type "Oasis" within each of the various distro's . It's kind of shameful, when you consider that the only universal installer that GNU/Linux has, is Microsoft's....

That Linux's current distro-specific repository/packaging model works well is not in question. That it is self limiting, a potentially point of effective vendor lock-in for non technical end-users, and also a factor in assisting a dominant market-share distro in achieving an effective desktop monopoly (third parties ISV's packaging for Ubuntu-only for example), is cause for concern obviating the need for serious review of the direction of Linux compatible software packaging and distribution, isn't in question (IMHO) either.

Repositories

I can't speak for all of the distributions, but Ubuntu provides for the use of non Ubuntu repositories. You simply add them to the search repository list.

My hardest installation was CNR. Tht was comparable to what I remember from Windows.

Repositories

ChuckL says, "I can't speak for all of the distributions, but Ubuntu provides for the use of non Ubuntu repositories. You simply add them to the search repository list."

Adding repositories willnilly sounds a bit dangerous to me. How can you be sure they'll all be compatible with Ubuntu and not damage your system?

What?!

Let's see microsoft having a standardized installer base... LOL, that's a good one.

Have you every tried to use your old software from the windows 9x days... yah... have fun trying to get this stuff to work on Vista... I can just see the blue screens of death popping up already.

I have been using Red Hat based distros since Red Hat 5, back in the dark days when program dependencies where something to be feared, especially off of a dial up connection. Know with yum or the GUI of yum, I can search through the standard repositories, find software that I didn't even know existed that I wished would, install it, have my package manager check for any missing dependencies, download them for me 9 times out of 10, and install everything that I wanted.

Let's not forget updating the system... what does MS actually show you that it's updating; it does not tell you which components it's updating very well; only a brief description at best. With yum on a redhat system it will tell me every program that is being updated; some of them new versions; some of them security patches; an these come out much faster than MS does.

Let's see here Linux that has made leaps and bounds in installation & updating ( and continues to do so ); or windows that closes everything up, doesn't really tell us what it is doing (even during some install programs; welcome to the wonderful world of viruses, even if you have antivirus), oh and let's not forget those cryptic windows updates ( everyone forgets that these are installed programs too, that really don't tell us very much without having to do alot of research ).

I think I will keep my linux.