Linked by Thomas Leonard on Tue 16th Jan 2007 00:32 UTC
General Development In the Free and Open Source communities we are proud of our 'bazaar' model, where anyone can join in by setting up a project and publishing their programs. Users are free to pick and choose whatever software they want... provided they're happy to compile from source, resolve dependencies manually and give up automatic security and feature updates. In this essay, I introduce 'decentralised' installation systems, such as Autopackage and Zero Install, which aim to provide these missing features.
Permalink for comment 202488
To read all comments associated with this story, please click here.
RE: the problem is...
by twenex on Wed 17th Jan 2007 01:12 UTC
twenex
Member since:
2006-04-21

Oh boy. Where to start?

"[The problem is]... that every single distribution of Linux is effectively a unique Operating System - it would be like having several hundred versions of Windows or OSX, each with varying levels of binary compatibility.

Er, except not. The differences between distros of Lovely Linux that use the same package managers (and most use only one of three or four package managers) are an order of magnitude smaller than the differences between Wonderful Windows versions or Mac OS <9 and Mac OS X (Can't speak for versions of OS X as I've not used many).

This makes it very difficult for developers, especially those who have valid reasons for keeping their source code closed, to write software for Linux.

I've not seen a valid reason for keeping source closed yet, unless maybe it's national-security-related. (And even then, as in the recent spats between the US and UK over their fighter-jet software, some degree of openness may be required). If you can introduce me to one, however...

This is why most commercial software written for Linux is written for Red Hat, Suse or occasionally Debian - as far as commercial software houses are concerned, there are no other distros, and for most, Red Hat is the only distro (Red Hat=Linux, all other distros != Linux in their view).

Maybe so; however, I've seen commercial software run on Gentoo. I suspect you could get it working on Slackware with no more effort than a "Slackwearer" [sic] would be able to handle. I suspect you will find that the reason so many software houses act as if Red Hat = Linux are:

1. That for many moons (due to restrictions on trademark use) it was indeed packaged by third-parties as simply "Linux";

2. That in the business sector it outweighs use of SuSE, its nearest competitor, by a factor of 8 to 2.

Package management tools like APT are a good idea for managing core OS updates, but a really bad idea for the installation of apps.

Why?

This is one area where Windows gets it pretty right - the OS comes bundled with very few applications, and the apps it does come with are all written and maintained by the vendor.

On the contrary, it's all wrong; Magical Microsoft OSes are barely usable on a clean install (ok, technically the OS's are barely usable with the computer fully loaded, but you know what I mean).

MS manages the core OS and these packages with its own package manager (Windows Update). Many apps you install on windows have their own automatic update features etc..

Which means you have a million and one different programs to search for when you (re-install) the OS, and yet another update program screaming at you when each of the apps wants to be upgraded; if Lovely Linux systems did it this way they would be criticised for "a million and one different upgrade systems". (But unlike the there's-a-million-and-one-apps-to-do-the-same-thing, argument, it would be valid.)

Where Linux distros get it wrong is by bundling sometimes thousands of apps with the OS, and then trying to manage them, which is simply impossible to do properly in a centralised way.

Well, Gentoo and Debian seem to manage this Herculean and impossible task. I'm not saying they're aren't mistakes and problems; I'm saying that Windows is not the Wonderful Be-All-and-End-All the Worshippers at the Altar of Good Gates say it is.

It also has the potential to backfire on developers and users alike - say you install Gimp for the first time on one distro and it is horribly buggy, due to poor packaging. Your first impression of the program is not very good, and most people don't give things another chance, so that user is going to move on to something else, even though the original developer had nothing to do with the bugs that were created by a poorly packaged distro. Thereby one program gets a bad rap because of one distro. The ISV should shoulder the responsibility for the app, and get the kudos as well, not the distributor/packager).

Remember DLL hell? As for "one distro's package manager buggering up and casting doubt on the quality of all the available versions of software X," I take it for granted:

1. That people intelligent and inquisitive enough to be investigating Linux learn very early on that these problems can be (a) temporary and/or (b) limited to one distro;

2. That these problems are by no means Limited to Linux and even Worry users of Wonderful Windows.

3. That for reasons 1 and 2 your Windows-worshipping FUD is invalid.

4. That a person sufficiently (and justifiably) outraged by the (lack of) quality in a Windows OS will also be responsible for the non-purchase or use of Windows-only apps. The user informed by a company that wants said user to use said apps can easily retort that he wants said company to port said app.

Linux distros need to stop trying to bundle 374 types of kitchen sink in the distro, and instead focus on shipping a small, stable, compact Operating System with a limited set of basic software (browser, media player, text editor, file manager, image viewer and perhaps an email client),

Newsflash - there are distros that do this. Even fully loaded, however, few Linux distros I've seen contemporaneous with any version of Wonderful Windows take up as much space as vanilla installations of same.

For me, the ideal Linux distro is one that comes with a limited set of core functionality, an uncluttered, simple but powerful and tightly integrated GUI (eg XFCE, which I am very fond of), and the ability to install signed drivers and software from the Vendor's official website. It should not take up more than a couple of hundred megabytes.

You really think that by advocating Slackware/DSL/Puppy Linux, you are speaking up for the "Common Man"?

I like to have a single program that has a comprehensive feature set that does one thing well, rather than using 15 different programs to perfrom only part of a task at a time.

Not the Linux way. Though of course you can use OO.org if you so choose - and many of us do. Nevertheless, I'm not going to sit here and let you (or anyone else) dictate my choice of app, thankyou.

[/i] Since I rarely have more than a dozen or so apps installed over my base OS (at this point on WinXP as my main OS), I don't need any tools to manage my installed software, and since I use tools with comprehensive functionality, I don't forsee any need to change this by installing hundreds of little bits and pieces. [/i]

I wasn't aware you were Everyone. I also wasn't aware Wonderful Windows programs didn't spread cute little bits of themselves all over the filesystem (particularly if you attempt to install them on any drive other than C:) and the registry.

Linux as a whole needs to simplify, rationalise and become more organised and integrated to really take off in the way many of us would like it to.

Translation: Linux needs to become Windows. Except that Windows is not exactly simple (let alone rational), and it's "package management" is even LESS "organised and integrated".

Seriously, if you want to use Windows, kindly do so - and stop trying to turn Linux into it.

Reply Score: 3