LWN.net Logo

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 9:48 UTC (Wed) by slashdot (guest, #22014)
Parent article: Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

No, it's not normal, it's caused by the actions of several dickheads who put their own "personal glory" before the advancement of free software overall.

The ideal outcome is one fully configurable implementation, not multiple competing ones that all something well but many other things horribly.

Example success story: the Linux kernel.

Example disaster stories: desktop environments, distributions.


(Log in to post comments)

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 10:55 UTC (Wed) by nmav (subscriber, #34036) [Link]

> The ideal outcome is one fully configurable implementation, not multiple
> competing ones that all something well but many other things horribly.
> Example success story: the Linux kernel.

Actually based on your definition the Linux kernel is an example disaster story. I remember when Linus started his kernel there were several competing kernel projects (386bsd, hurd). Nevertheless, he started his own instead of thinking the advancement of free software as you pose it.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 11:12 UTC (Wed) by slashdot (guest, #22014) [Link]

The problem is not necessarily starting a new project if a full rewrite is needed, but rather the persistence of multiple redundant implementations.

In the case of Linux, it has no competition as an open source kernel.

On the other hand, there's no reason to have multiple packaging standards, yet .rpm and .deb persist with significant market share each.

The fact that the dpkg and RPM maintainers don't get together and kill at least one of them is a true disgrace, and is one of the things that holds back GNU/Linux from being more popular (note that they could always flip a coin if they can't do anything better).

That's just one of the most glaring examples, and there are many others like upstart vs systemd, gtk vs Qt, desktop environments, gecko vs webkit and so on.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 11:55 UTC (Wed) by pboddie (subscriber, #50784) [Link]

If you are convinced that RPM and dpkg could be merged into one thing and - here's the important part - support the distribution policies that rest on each of those solutions, then why not share the insights into how it could be done. Herding the maintainers in a room and shouting "Think! Think!" isn't going to do it.

I'm not saying that there couldn't be more sharing when it comes to competing solutions, but sharing is indeed the best way to bring projects together, instead of just getting people to abandon their work for something else. The latter approach is doomed to failure because the people who "jump ship" have to be really enthusiastic to work on another project, so you lose any momentum that their work had in their old project as they struggle to apply their work and knowledge to their new environment (and many of them will just give up and do something else, as seems to be the case with the KDE 3 to KDE 4 transition), and you'll always get a bunch of other people taking over that abandoned work, so you'll only end up shouting at a bunch of different people to "Stop doing that, you're killing Linux!"

What I think is missing from the Free Software desktop is the stamina to make a complete and coherent environment. Some people might call that attention to detail, but that label has been repurposed by the kind of people who regurgitate commentaries about Apple and who obsess about pixel counts, gradients, button placement, transition effects, and the like. The major environments have emulated Microsoft and Apple without questioning the quality of their inspirational material; poor design originating from Apple, particularly, is waved through because no-one dares to question the "accepted" quality of the work. People need to assess whether the interfaces really do their job, and not just in a number of narrow use-cases that potentially reflect the lifestyles and limited imaginations of the developers, before signing off on them.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 13:48 UTC (Wed) by renox (subscriber, #23785) [Link]

>In the case of Linux, it has no competition as an open source kernel.

False, the FreeBSD kernel has several interesting features that Linux doesn't have (Capsicum for example), so Linux has competition.

That said, I agree with you that I see no advantage of the .rpm and .deb divide and only disadvantages, IMHO this is the result of inertia + the "distribution war".

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 16:39 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link]

seccomp2, cgroups and LSMs provide similar functionality in Linux.

FreeBSD is not a serious competitor anymore. It's way behind in device support and general functionality.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 19:51 UTC (Wed) by mathstuf (subscriber, #69389) [Link]

> FreeBSD is not a serious competitor anymore.

Are you just referring to desktop usage or in general? I use FreeBSD on my server because jails are a breeze. Is there any work on getting LXC to have anything that makes it as easy to manage them as ezjail-admin does for jails?

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 23:37 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link]

OpenVZ/Virtuozzo.

It's just that it's not a 'hot item' anymore.

Deb -> Rpm?

Posted May 13, 2012 15:34 UTC (Sun) by kleptog (subscriber, #1183) [Link]

If you think the only difference between rpm and deb is the packaging format then you've completely missed the point. What makes Debian great is not its packaging format (which is just an ar file) but the Debian packaging policy.

The policy that ensures that files end up in predictable places. The policy that ensures your package will not be broken randomly by other installed packages. The policy that ensures the each package can be reliably rebuilt by anybody on any system. That they don't clash in user names, program names, port numbers, etc...

It's the policy that allows you to take a system and install tens of thousands of packages and have them ALL work. Simultaneously.

Distributing files was a solved problem long ago (.tar.gz). Today, a .deb is a sign that someone put effort into it. A mark of quality. Changing deb files to look like rpms would be technically feasible but pointless without everyone following the same policy. Rpms have their own policy and unless they align, nothing will go anywhere.

If you don't care about policy, use alien to convert the packages.

Deb -> Rpm?

Posted May 14, 2012 1:03 UTC (Mon) by vonbrand (subscriber, #4458) [Link]

What you describe is exactly what I see on Fedora (with RPM). And I'm sure SUSE, and Mandriva, and all the other "large" distributions do the same. This is a distribution policy, not something $PKG_FORMAT related at all; I'm quite capable of building an RPM violating any and all (sanity) rules, which on installation will create havoc; and I'm sure somebody with some deb-fu can do the same for Debian.

But don't forget that the base rules are distribution rules, installing the files from a Fedora RPM on your Debian system might get you into a lot of pain, and viceversa.

Deb -> Rpm?

Posted May 14, 2012 7:58 UTC (Mon) by renox (subscriber, #23785) [Link]

> What makes Debian great is not its packaging format (which is just an ar file) but the Debian packaging policy.

So? Those who want to distribute software must learn both to use a different tool (the LSB has selected RPM) and to respect a policy.
If one tool has been selected by the distributions then you'd only have to respect the policy as the tool would be already known..

If Debian developpers doesn't care that much about the .deb format why do they stick with it?
I don't care which packaging format is used, but what is very important is that there should be as few as possible..

Deb -> Rpm?

Posted May 14, 2012 13:34 UTC (Mon) by dgm (subscriber, #49227) [Link]

You missed the point. The packaging format difference is not that important when policies do not align. Debian could be using RPM but packages would still be incompatible, possibly creating more confusion.

First you would have to converge policies, then you could unify formants.

Deb -> Rpm?

Posted May 14, 2012 14:53 UTC (Mon) by renox (subscriber, #23785) [Link]

You're wrong: there are already this potential issue for the various distributions which use RPM and this isn't a big issue: users select the packages which correspond to their distribution, using a RPM from the wrong distribution can break your distribution.

So the policy issue is a weak excuse for using different tools.

Deb -> Rpm?

Posted May 14, 2012 15:53 UTC (Mon) by apoelstra (subscriber, #75205) [Link]

But if "using a RPM from the wrong distribution can break your distribution", why on earth would anyone bother to spend the time and energy switching formats? It would accomplish nothing except make it easier for people to goof up their systems.

Deb -> Rpm?

Posted May 14, 2012 16:41 UTC (Mon) by renox (subscriber, #23785) [Link]

A basic tenant of good design is separation of policy and mechanism(s).
The mechanisms here are the packaging tools and format used.
The policy is the distribution policy on how to create the package using the tools.

It would allow the packager to learn only one set of packaging tools.
And when the tools are identical, then you can more easily compare the various distributions policy..

As for the users, as I already said, there is no new issue: you can already have a lot a problem if you force the installation of a Suse RPM on a Mandriva distribution for example or if you jump in the stairs, the answer is easy: don't do that.

Deb -> Rpm?

Posted May 14, 2012 16:11 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

RPM is also missing a few features that DEB supports, specifically the multiple levels of dependencies (required, recommended, suggested)

personally, I also like the control directory with it's different files for different purposes rather than having everything mashed together into one spec file.

Deb -> Rpm?

Posted May 14, 2012 16:43 UTC (Mon) by renox (subscriber, #23785) [Link]

> RPM is also missing a few features that DEB supports, specifically the multiple levels of dependencies (required, recommended, suggested)

Well, it doesn't seem too hard to add this feature to RPM, no?

Deb -> Rpm?

Posted May 14, 2012 18:23 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

no it wouldn't, it also wouldn't be that hard to switch a distro to use .deb instead of .rpm either.

Another feature that .deb supports is the multilib capability (as opposed to the /lib /lib32 approach)

the RPM folks are welcome to implement these features (as they have copied other features from .deb, resulting in things like yum in the past), but since they haven't, it precludes rpm from being the 'universal' packaging tool that some people want it to be.

And this completely ignores other possible packaging tools and requirements that source-based distros like gentoo have

Deb -> Rpm?

Posted May 14, 2012 18:48 UTC (Mon) by boudewijn (subscriber, #14185) [Link]

And as long as deb fans will ask rpm fans to convert, and rpm fans ask deb fans to convert, people like me will have to continue to try to build tarballs that, together with some scripts, provide something that nearly works on every system but doesn't integrate and contains way too much junk.

I hate creating debs, I hate creating rpms, I hate creating tarballs or bitrock installers -- but most of all I hate having to do essentially the same job twice.

I don't give a damn about the package format, not as a Linux user, not as a software developer. Rpm and deb both just work, and I just don't like the fact that there are two of them, and that people actually can bring up the enthusiasm to defend one against the other.

Deb -> Rpm?

Posted May 14, 2012 19:25 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

so you need to use tools that build both for you without you having to do either one manually.

I understand that the Suse buildforge does this for you, and I believe that the code to do this is available.

plus there is the alien program that will take a .deb and convert it to a .rpm (and vice-versa)

so the cost of creating both formats (if you don't care about the distro specific policies) looks like one line in a build script. hardly a crushing load.

Deb -> Rpm?

Posted May 14, 2012 17:00 UTC (Mon) by dgm (subscriber, #49227) [Link]

> You're wrong

More often than I would admit, yes.

> So the policy issue is a weak excuse for using different tools.

No. It's an excuse for avoid _changing_ tools. Big difference.

BUT what would really solve droping dpkg? Imagine if you wish that tomorrow Debian ditches the .deb format and converts overnight to RPM. Now what? Packagers still would have to make different packages for Debian (and maybe Ubuntu), SuSE, Fedora, RedHat, Mageia, etc. It's even worse, because ISVs have to package for every _release_ of the distro they target. What do have we won? Nothing. Maybe that is the reason it hasn't happened yet. Will it happen in the future? I doubt it. Look at SuSE: same RPM, just different. The tendency is to fragmentation, not convergence, in RPM land. There are even 2 different forks of the RPM format.

So, at the end of the day, the package format is not that important. And probably that's the reason why we haven't seen unification even after so many years of pushing in that direction.

Deb -> Rpm?

Posted May 14, 2012 17:18 UTC (Mon) by raven667 (subscriber, #5198) [Link]

Sure, switching Debian to RPM wouldn't cause world peace overnight but it would remove a significant technical barrier to cross-distribution coordination of packaging guidelines. I think there'd be a lot more societal/peer pressure to standardize packaging guidelines once there were no technical barriers to doing so. ISV pressure would be more effective in this case as well.

Deb -> Rpm?

Posted May 14, 2012 17:19 UTC (Mon) by renox (subscriber, #23785) [Link]

>> So the policy issue is a weak excuse for using different tools.
>No. It's an excuse for avoid _changing_ tools. Big difference.

Sure this adds some work to Debian in the short term for the migration and less work for every ISV after the change because now they have to only learn one set of tool instead of two.

> It's even worse, because ISVs have to package for every _release_ of the distro they target.

Same situation as today then.

> What do have we won?

As already said, it makes ISV lives simpler as they can now use only one set of tools instead of two.

> The tendency is to fragmentation, not convergence,

Yes, I've noticed, Linux: ~1.5% of desktop share.

Deb -> Rpm?

Posted May 15, 2012 9:02 UTC (Tue) by dgm (subscriber, #49227) [Link]

> Yes, I've noticed, Linux: ~1.5% of desktop share.

Non sequitur. As easily I could say: Linux: ZERO viruses in the wild.

So what?

Deb -> Rpm?

Posted May 15, 2012 9:19 UTC (Tue) by renox (subscriber, #23785) [Link]

>> Yes, I've noticed, Linux: ~1.5% of desktop share.
> Non sequitur. As easily I could say: Linux: ZERO viruses in the wild.

Well, not really 'non sequitur': making the life hard for ISV surely don't help Linux's market share, but I agree that the packaging format is not enough, but it would be a start (not that I believe that it can happen: for whatever reason packaging tools seems to be a topic that triggers emotional reaction..).

As for ZERO viruses in the wild, Haiku has no virus too: nobody cares about it..

Deb -> Rpm?

Posted May 15, 2012 15:58 UTC (Tue) by dgm (subscriber, #49227) [Link]

But Haiku doesn't seem to have millions of users (it didn't last time I looked, correct me if I'm wrong).

As for ISV's lifes: packaging format is the _least_ of their problems, really. It's something that just requires installing a few tools and can be greatly automated. The real problems are supporting the horde of Linux versions out there -each with it's own library versions, configuration files and general idiosyncrasies- and, of course, getting Linux users to pay for software...

Deb -> Rpm?

Posted May 20, 2012 0:55 UTC (Sun) by steffen780 (guest, #68142) [Link]

And package format is one of those idiosyncrasies. If conversion is trivial to automate as some people claim, why not do it? It's one (small) issue less. That's how progress generally happens in software, especially free software - one small issue at a time. Unite .deb and .rpm since the differences are cosmetic, then go onto the next one. Why not? Distro policies and library versions will still differ, of course, but there are real reasons for that. Fedora has newer library versions than RHEL for a reason. I cannot see why Fedora and Debian have to use different formats for packaging.

As for your [citation needed] claim that Linux users don't pay for software, have a look at RH's balance sheets or the humble indie games bundle - RH covers the enterprise market, whilst the games bundle covers the private (well, presumably it is mostly private) desktop end users. And guess what? Linux end users (those that bought the humble bundle at least) pay MORE than Windows or OSX users. Maybe because they aren't being ripped off ridiculously by Microsoft on the Windows license or by Apple's simply obscene prices for hardware? Maybe they're better people? Maybe they just wanted to put an end to claims like yours? Maybe they just have more money? Who knows, fact is, Linux users do pay, generously - even when they don't have to.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 11:32 UTC (Wed) by ovitters (subscriber, #27950) [Link]

"Dickheads", "personal glory" ?

It is really obvious you believe in what you think. However, the way you phrase things makes me think not much more than "meh, troll, go away". Please tone it down a little.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 12:26 UTC (Wed) by slashdot (guest, #22014) [Link]

That's an interesting proposal, but after careful examination it seems to me that it would reduce the intensity of the flamewars produced, and thus diminish the amusement derived from the whole thing, which is clearly an undesirable outcome.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 9, 2012 16:48 UTC (Wed) by ean5533 (subscriber, #69480) [Link]

You readily admit that you like to start flamewars for the sake of your own enjoyment -- the very definition of a troll.

You're being added to my filter list. I encourage others to do the same.

Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)

Posted May 13, 2012 16:43 UTC (Sun) by viro (subscriber, #7872) [Link]

> However, the way you phrase things makes me think not much more than "meh, troll, go away".

And the username alone doesn't? Might as well have been "National Enquirer" or any other supermarket tabloid...

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