Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for May 23, 2013
An "enum" for Python 3
An unexpected perf feature
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
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.
Fragmentation on the Linux Desktop (Is it Normal?) (Datamation)
Posted May 9, 2012 10:55 UTC (Wed) by nmav (subscriber, #34036)
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.
Posted May 9, 2012 11:12 UTC (Wed) by slashdot (guest, #22014)
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.
Posted May 9, 2012 11:55 UTC (Wed) by pboddie (subscriber, #50784)
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.
Posted May 9, 2012 13:48 UTC (Wed) by renox (subscriber, #23785)
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".
Posted May 9, 2012 16:39 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
FreeBSD is not a serious competitor anymore. It's way behind in device support and general functionality.
Posted May 9, 2012 19:51 UTC (Wed) by mathstuf (subscriber, #69389)
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?
Posted May 9, 2012 23:37 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
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)
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.
Posted May 14, 2012 1:03 UTC (Mon) by vonbrand (subscriber, #4458)
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.
Posted May 14, 2012 7:58 UTC (Mon) by renox (subscriber, #23785)
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..
Posted May 14, 2012 13:34 UTC (Mon) by dgm (subscriber, #49227)
First you would have to converge policies, then you could unify formants.
Posted May 14, 2012 14:53 UTC (Mon) by renox (subscriber, #23785)
So the policy issue is a weak excuse for using different tools.
Posted May 14, 2012 15:53 UTC (Mon) by apoelstra (subscriber, #75205)
Posted May 14, 2012 16:41 UTC (Mon) by renox (subscriber, #23785)
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.
Posted May 14, 2012 16:11 UTC (Mon) by dlang (✭ supporter ✭, #313)
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.
Posted May 14, 2012 16:43 UTC (Mon) by renox (subscriber, #23785)
Well, it doesn't seem too hard to add this feature to RPM, no?
Posted May 14, 2012 18:23 UTC (Mon) by dlang (✭ supporter ✭, #313)
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
Posted May 14, 2012 18:48 UTC (Mon) by boudewijn (subscriber, #14185)
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.
Posted May 14, 2012 19:25 UTC (Mon) by dlang (✭ supporter ✭, #313)
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.
Posted May 14, 2012 17:00 UTC (Mon) by dgm (subscriber, #49227)
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.
Posted May 14, 2012 17:18 UTC (Mon) by raven667 (subscriber, #5198)
Posted May 14, 2012 17:19 UTC (Mon) by renox (subscriber, #23785)
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.
Posted May 15, 2012 9:02 UTC (Tue) by dgm (subscriber, #49227)
Non sequitur. As easily I could say: Linux: ZERO viruses in the wild.
Posted May 15, 2012 9:19 UTC (Tue) by renox (subscriber, #23785)
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..
Posted May 15, 2012 15:58 UTC (Tue) by dgm (subscriber, #49227)
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...
Posted May 20, 2012 0:55 UTC (Sun) by steffen780 (guest, #68142)
As for your  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.
Posted May 9, 2012 11:32 UTC (Wed) by ovitters (subscriber, #27950)
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.
Posted May 9, 2012 12:26 UTC (Wed) by slashdot (guest, #22014)
Posted May 9, 2012 16:48 UTC (Wed) by ean5533 (subscriber, #69480)
You're being added to my filter list. I encourage others to do the same.
Posted May 13, 2012 16:43 UTC (Sun) by viro (subscriber, #7872)
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