Linked by Amjith Ramanujam on Tue 23rd Dec 2008 00:30 UTC
Linux A next-generation package manager called Nix provides a simple distribution-independent method for deploying a binary or source package on different flavours of Linux, including Ubuntu, Debian, SUSE, Fedora, and Red Hat. Even better, Nix does not interfere with existing package managers. Unlike existing package managers, Nix allows different versions of software to live side by side, and permits sane rollbacks of software upgrades.
Permalink for comment 341242
To read all comments associated with this story, please click here.
Problem of Linux
by muda on Tue 23rd Dec 2008 15:42 UTC
Member since:

IMHO Problem of Linux is not limited to certain package managers, file formats or the dependency hell. It's deeper. It's not technical. It's the philosophy.

Vast majority of people see Linux as an "operating system" while it is not. Distribution is an operating system. Linux in these terms is the underlying ecosystem in general, Linux is the kernel, GNU/Linux is tehcnical ecosystem.

Distribution is what 2000 or XP Vista is in Windows world. The comparison is not very good but is as close as it gets. Taking Darwin kernel and throwing Gnustep on top of it does not make OSX, Linux or anything else but a new operating system, Datoile, if you please. If there are several different implementations based on these sources there are as many different operating systems.

As long as people can't see the difference between ecosystem and operating system there will be no "year of Linux desktop" with or without package manager. And most people can't see the difference. Different implementations based on the same codebase make no different versions of the same operating system but different operating systems which may follow the same standards and be compatible with each other.

This leads to another issue. In the Linux world the distro maintainer (effectively as OS vendor) must support and in most cases to maintain the entire application base since the app developer may not support any specific distribution or the particular distribution.

If the application is open source, this is good and allows to have applications on your system without the support from the developer. However, this requires resources that could be used to provide better core environment.

From the developers perspective, however, number of incompatible distributions will lead to supporting only small number of different ones if any. In most cases it is appropriate to say one is developing apps for RHEL or Ubuntu, not Linux. The latter just happents to be the case since majority of such apps is open source and can be picked up and supported by distro maintainer.

This is a chicken and egg problem which may seem easy to tackle with universal package manager. But no sane person would come up with an idea of package format which is good for both Windows and OSX. Why then think that this will solve the problem in case different operating systems are based on the same kernel and some other major components (not necessarily the same version across distros)?

Reply Score: 2