Why is this needed?

Story: This week at LWN: Who maintains RPM? (2011 edition)Total Replies: 25
Author Content
Grishnakh

May 16, 2011
3:05 PM EDT
If you read the lengthy comments after that article, one of the RPM maintainers even comments about how there aren't a lot of development resources committed to RPM.

So why is it even needed? We already have a package format that seems to work fine, and has been with us for quite some time: DEB. What does RPM do that's so great compared to DEB? Or is it just a case of NIH?

Linux would do a lot better if it didn't waste scarce development resources on duplicated effort like this. It's understandable why you might want, say, two or three different music players, as those are highly subjective. But two different package formats? Why?
skelband

May 16, 2011
3:16 PM EDT
I seem to remember in the news some time ago an effort to bring these two camps together. I don't remember where or in what context or even if I've just made it up.

Perhaps it was part of the Linux common base thingy.
jimbauwens

May 16, 2011
3:51 PM EDT
Quoting:But two different package formats? Why?


Because some people don't agree or dislike stuff in the other package manager. For example, you can only install one thing at the time with Debian based package management. Some people might not like this, and there for create their own version/port/etc. This is the fun of open source.

Linux NEEDS stuff like this, and it isn't a waste of time. If it wouldn't be like this, I'm almost sure Linux (with the whole userland) wouldn't be what it is now.
gus3

May 16, 2011
5:35 PM EDT
Do you want Linux to have a One True Way? I suggest you take a look at {Free,Net,Open}BSD's market share. Ponder the results of "one true way" thinking, and then get back to me.
skelband

May 16, 2011
5:40 PM EDT
@jimbauwens : I disagree actually.

It is good for the evolution of software for different things to be tried. Some things will die, some with live on. RPM and DEB have been around long enough for developers to know what does and does not work and they've been pretty stable for a number of years.

DEB and RPM is one of the biggest divides in the LINUX world and I think this is quite divisive. We strive for standards like ODF and cry foul when Microsoft tries to pervert this by introducing another, different standard OOXML which purports to do the same thing.

Having competing products is good for development and trying things out. However, eventually you have to gather round a single standard for this kind of thing. How much packagers of all the big software projects must grind their teeth when they have to, not only package for DEB and RPM, but also for the variations in the main distributions as well.

I use Ubuntu so therefore DEB, but I have no axe to grind on the issue. However, I think they should either can one of them and just use the other, or somehow unify the two together.
jdixon

May 16, 2011
7:46 PM EDT
> So why is it even needed?

Because Red Hat wanted a package manager and didn't think .deb was ready. That's what the R stands for. And now switching to .deb would break too many things.

> DEB and RPM is one of the biggest divides in the LINUX world...

Nope. They both dependency resolving packaging systems. The real divide is between them, source based distros, and distros such as Slackware which expect you to handle dependencies yourself.

jimbauwens

May 17, 2011
4:02 AM EDT
@skelband, I don't mean RPM and DEB in general, I'm responding to the fact that he doesn't like that there are more than 2 package managers.

>How much packagers of all the big software projects must grind their teeth when they have to, not only package for DEB and RPM, but also for the variations in the main distributions as well.

I know the Ubuntu DEB are a bit different from the Debian DEB's, but as far as I know, I have never had a problem installing a Debian DEB on my computer. As for RPM, I don't know. If I release software, I would make it available in DEB, RPM, and packed in .tar.gz (like most do). This isn't so hard to do, and is totally not a deal breaker for me.

The main problem I think for most developers is the difference in the distro itself, not the packaging.
Sander_Marechal

May 17, 2011
4:13 AM EDT
Quoting:I know the Ubuntu DEB are a bit different from the Debian DEB's, but as far as I know, I have never had a problem installing a Debian DEB on my computer.


Then you were lucky. It could have blown up in your face and we would have just stood there and laughed. Binary packages are distro specific.

As for the deb/rpm schism, it doesn't matter. End users never see the difference because package manager frontends like Synaptic work everywhere and hide the details. Geeks often have strong opinions and good technical reasons not to switch format
jimbauwens

May 17, 2011
4:40 AM EDT
Ok, thanks for the info Sander! I didn't know that.



Quoting:As for the deb/rpm schism, it doesn't matter. End users never see the difference because package manager frontends like Synaptic work everywhere and hide the details. Geeks often have strong opinions and good technical reasons not to switch format


I agree with that.
jacog

May 17, 2011
5:49 AM EDT
I was running Foresight Linux for a bit. It uses conary. And I have to say, I really like it. It's kind-of like having all your software managed via subversion or something similar. Overall it just seems like a better way to have a rolling distribution.

I'll revisit it again in a few months to see if the community has grown, more software becomes available, etc.
TxtEdMacs

May 17, 2011
6:15 AM EDT
jacog,

It's early, so this is how I read it:
Quoting:I was running Foresight Linux for a bit. It uses co[r]nary. And I have to say, [...]


It's really heart stopping ...

YBT
jacog

May 17, 2011
7:34 AM EDT
Saaay YBT - are you taking shill-checks from the Heart Foundation now too? My God, man... how low will you stoop?
TxtEdMacs

May 17, 2011
8:05 AM EDT
jacog,

If the cash is on the floor, I stoop to conquer my greed. Non-profit is for the agency and taxation purposes. Not for me.

As always,

YBT
skelband

May 17, 2011
10:36 AM EDT
I think that my main point about the divisive nature of the two managers was that if only an RPM was available and you had a DEB based system, then you are pretty much stuffed unless you go down the Alien route which most end-users are not going to do.

It would be cool for a distribution to support both by some amalgamated package management technology. It could be done and would be useful for the end user.

I know that techies argue the toss over which is better like we argue about vi and EMACS. I see the need for evolutionary development along multiple paths which gives us the best of breed type of end-result, but I don't see who benefits from two end-results though on such a core technology. Again, I cite the ODF example. We had a number of different doc formats emerge over the years, but everyone sees the benefit of a single portable format that everyone can support for interoperability. You may have differing opinions on which word processor you prefer but in the end you need a common format to allow you to move from one to another.

I don't see that either the DEB or RPM format is going to evolve much further from this point on. So I therefore don't see the continuing need for two separate systems of package delivery. Whether or not it is actually possible to bring to two camps together at this point is another thing entirely though :D
jacog

May 17, 2011
10:45 AM EDT
Also worth considering that other formats might be better than both DEB and RPM.
TxtEdMacs

May 17, 2011
11:11 AM EDT
Quoting: [;,,] My God, man... how low will you stoop?


For clarity, "A Shills Anthem"

If it is buried I will Digg for it.

Moreover, I will slash your dot for views.

And patent rights are not to be sniffed at.

Furthermore, I am Mono maniacal in getting into your stack.

Where misleading the ill informed, those easily herded and directing the confused,

is my stock && trade while making me bemused.

However, only for the gift of a significant portion of the Cash horde.

So when I am asked, how low will you go?

I say Bling it on.

YBT
DrGeoffrey

May 17, 2011
11:26 AM EDT
Txt,

In keeping with your honorable position as resident shill, shouldn't that last sentence read:

"I say Bing it on"?

G
TxtEdMacs

May 17, 2011
11:54 AM EDT
Sir Dr. G.,

Very unfortunately, you are correct. I always have read it as bling, like the counter rotating hubs on cars that puts the susceptible into terminal epileptic shock.

Now if MS had only listened to me, it would be leading the search with Bling not this damn bing or ping or sing Crosby Crap.

I will not recant, MS is wrong and they would have owned the market had they a more discerning management. There is only so much a first class shill can do.

Sadly,

YBT

jdixon

May 17, 2011
12:25 PM EDT
> There is only so much a first class shill can do.

It's OK, Txt. Anyone here will be happy to testify that you've always done your best.
TxtEdMacs

May 17, 2011
12:47 PM EDT
jd,

Your words bring me no comfort, because I am an abject failure as a shill.

Your Sad Buddy Txt.

P.S. Bling is soooo much better than Bing ... what were they thinking?
Sander_Marechal

May 17, 2011
5:30 PM EDT
@skelband; *Why* would you care about the package source format? Think about it, it really makes littel sense at all. End users don't see it. They only see the compiled, binary packages and they are non-portable anyway (yes, really! Any portability is either accidental, or because the package in question contains every dependency it needs down to the base C libraries).

The only people who really care about this are maintainers of closed-source software. They can't be arsed to maintain source packages in two formats and then build umpteen binary packages from it. Open source software people can simply hand over their source code to the distro packagers. For my software, I have only ever build a few .deb packages in order to support old Ubuntu versions when I first released. Yet, you can find new DEB, RPM, TGZ and many other packaged formats of my software.
skelband

May 17, 2011
6:47 PM EDT
@Sander_Marechal: Well I actually don't really care that much :D

I don't maintain packages for any distribution although I have built DEB packages before so it doesn't affect me directly at all.

It just seems to me that there is so much duplicated effort. It worries me that DEB and RPM packages are not portable. They really should list all of their dependencies. I realise that names of dependent packages vary from distribution to distribution and that's an issue as well.

It just doesn't seem logical to me to have two systems purporting to achieve the same ends. Package distribution is so core to Linux distributions that I think of it in terms of components like HAL, SANE and Xorg rather than OpenOffice or GIMP.

Yes, we have KDE and GNOME etc but they are radically different and we see them evolving at a rapid pace. It makes sense for these things to go their own way since their evolution is contributing to the Linux ecosystem. I just don't see any evolution in package management and we are unlikely to see it in the foreseeable future.

If we continue with separate DEB and RPM it's not the end of the world. It is a shame that we cannot rid ourselves of some unnecessary cruft in the Linux environment by agreeing on something that everyone will use. We might even see a new package management system appear in the future. If it takes over from DEB and RPM with some great new ideas then great. I can't see it at the moment though. ;)
BernardSwiss

May 17, 2011
7:12 PM EDT
Quoting: The only people who really care about this are maintainers of closed-source software. They can't be arsed to maintain source packages in two formats and then build umpteen binary packages from it.


Actually, why can't they?

After all, Opera does, for just one fairly obvious and high-profile example.

Don't they have the source code? Don't they have ready (and generally "free" access to whatever build environments (aka "distros") they might be interested in.

And I'm not sure they even actually need the distro on hand (though it might be easiest). Besides, haven't I heard of "build services" that let software writers put in code and get out nice neat binaries properly compiled for whichever distros they've selected? So clearly it not only can be done -- it can be automated.

And even for Windows they already have to do this, anyhow, right? Even if they might hide this from clueless users with an installer that checks which version of Windows it is running on, and varies the install accordingly. And if (when?) it won't run properly anymore, after some Windows Update patch or Service Pack or whatever, won't it be a lot harder to track down the bug?

Of course, I'm not a software developer, so I may be totally clueless...



Sander_Marechal

May 18, 2011
12:18 AM EDT
Quoting:Actually, why can't they?


Good point. That why I wrote "they can't be arsed" instead of "it's very hard" or "complicated" or "expensive" or some such apology.

That's a bit harsh though. Even Opera, who sprouts an impressive list of supported distros, doesn't support them all.
dinotrac

May 18, 2011
8:48 AM EDT
@BernardSwiss --

The biggest problem is not package formats. That borders on trivial... a couple of extra steps in the Makefile or some such.

Testing is less trivial, but, the nature of the testing required probably means it can be automated also.

The real problem is distributions, not package formats. The more the distributions differ, the more difficult it is to support them. The more they look alike -- at least from a standard libraries and utilities in standard locations standpoint -- the easier, especially if support amounts to little more than some assurance that things will install correctly and be usable.
JaseP

May 18, 2011
10:42 AM EDT
Diversity is the stuff of greatness in Open Source,... So, have to disagree that too many distros are bad... Not having enough choices is WORSE...

Posting in this forum is limited to members of the group: [ForumMods, SITEADMINS, MEMBERS.]

Becoming a member of LXer is easy and free. Join Us!