LWN.net Logo

Just NOW fragmenting? Sure...

Just NOW fragmenting? Sure...

Posted Mar 1, 2006 19:35 UTC (Wed) by wilck (subscriber, #29844)
In reply to: Just NOW fragmenting? Sure... by bk
Parent article: Linux fragmenting at last?

As Elanthis already said, the problem not only applies to binaries, but shell scripts as well. Writing an app that correctly installs e.g. rc scripts with dependencies on Red Hat, Suse, and Debian is a nightmare.

While the priorities of proprietary vendors may not be a "free software concern", they are a distribution concern, and they should be. Unfortunately, at the current state of fragmentation, it's often impossible for authors to support more than RedHat and SUSE Enterprise distros, and the rest of the world must see for themselves.

Having everything a user might need in a distibution repository is impossible. Even with Debian's 15000 or so packages you encounter stuff they don't have. In the enterprise market where the distibutions need to _support_ all official packages, there is a strong trend towards "less is more" (compare the package lists for SLES9 and SUSE 9.1, for example).

And please, explain why downloading a binary installer that smoothly integrates a software into your system is "technically inferior" to "configure; make; make install".


(Log in to post comments)

Just NOW fragmenting? Sure...

Posted Mar 2, 2006 0:23 UTC (Thu) by bk (guest, #25617) [Link]

You are missing the point entirely. The goal of developers should not be getting their software into the hands of users but rather into the hands of the distributors. Make your application as easy to package (use autoconf and not some homebrew build system if possible) as possible and let the packagers do their job. Whether it is written in C/C++ or Perl or Ada is irrelevant.

And please, explain why downloading a binary installer that smoothly integrates a software into your system is "technically inferior" to "configure; make; make install".

If you re-read my original post you'll see that that is precisely the opposite of what I wrote.

Just NOW fragmenting? Sure...

Posted Mar 2, 2006 17:42 UTC (Thu) by wilck (subscriber, #29844) [Link]

You are right, using official packages from the distribution is always first choice. But...

Being "easy to package" in the way you describe doesn't warrant that a distribution will package an application. Distributors can't package everything, and they make their own choices about what applications and which versions thereof they include. The SELinux/Apparmor example in the original article illustrates this.

Moreover, once a distribution is released, most distributions don't update the packages. If you stick with packages, you are soon forced to either use outdated software or upgrade the entire distribution every few months - or use a 3rd party package. (Talking about "stable" distributions of course. Gentoo or Sid users aren't affected, but they have other problems).

What do you do if your favourite distribution just won't ship the app you like, or sticks with an old version that doesn't have the features you need? Change the distribution? Or build the app from source?

I, at least, prefer a clean 3rd party binary package, and I'd find it highly desirable to have standards would make it possible for skilled 3rd party developers to build clean packages that actually work on different distributions.

A few years ago, that used to be fairly simple. It's getting harder every year. That's the road to fragmentation.

Just NOW fragmenting? Sure...

Posted Mar 3, 2006 1:07 UTC (Fri) by bk (guest, #25617) [Link]

My broader point was that distributions in general are moving toward a dynamic repository approach (and this is a good thing). The packages available constantly update as software becomes available. Even static commercial distributions (with the eternal exception of Slackware) may even get 3rd party repository support, so that even if you pay for RHEL you can get bleeding edge packages (and void your expensive support contract...).

Just NOW fragmenting? Sure...

Posted Mar 3, 2006 17:21 UTC (Fri) by wilck (subscriber, #29844) [Link]

Fedora and OpenSuse may have a "dynamic" approach, but the derived enterprise products most probably won't. They are "frozen", and my guess is that a large part of their target customers appreciates that.

Just NOW fragmenting? Sure...

Posted Mar 4, 2006 17:01 UTC (Sat) by arafel (subscriber, #18557) [Link]

> What do you do if your favourite distribution just won't ship the app
> you like, or sticks with an old version that doesn't have the features
> you need? Change the distribution? Or build the app from source?

Personally, I use apps in this order:

a) from distribution servers, unless there's a compelling reason to move to a version they don't have, in which case
b) build from source

Using a pre-built binary is something which I almost never do. I think the only non-distro, free software pre-built binaries I have on here are Wine and transcode.

If there are a sufficient number of programs which either aren't available, or I'm fed up with having an old version, I'll migrate distribution. This is one reason why moving back to Debian from Kubuntu is on my list of things to do.

Just NOW fragmenting? Sure...

Posted Mar 3, 2006 17:07 UTC (Fri) by KaiRo (subscriber, #1987) [Link]

You mean, if I'm developing a new app, and no distributor does (yet) include my package, my project is completely doomed?

Thanks, that's not what I have in mind thinking of an open software community.

In this case, I rather set up some box with a really old distro to compile binaries that are still working on newer systems, and distribute them as tarball or whatever.

And yes, I know what I'm talking about, I'm running build machines for the SeaMonkey project, that has just recently released its first stable version...

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds