PDA

View Full Version : round 2 - rpms and managers


YoshiroShin
6th October 2010, 01:04 AM
Okay reposted without the censor stars!

So me and a friend of mine start discussing rpms and debs after I tell him that I've been testing openSUSE and Fedora. I'm posting it here cause you Fedora guys will obviously have rpm experience. It goes like this:
---
Him:
I *hate* rpm! I won't use a distro that uses it. I used Mandriva for a while before I found Ubuntu and I was always getting headaches because of the package manager.

Me:
from what I understand the package manager's faults would be those of itself rather those of the rpm format. There are multiple managers for rpm like Zypper (for SUSE), Synaptic (PCLinuxOS), etc than just Urpmi.

Him:
it was a massive [headache] to install anything that wasn't in the repos.
Comparatively, I can throw apt a deb and it'll install the deps for me before installing the deb. It won't make it halfway through and then [bug] off telling me to "choose a pkg". It chooses the most compatible pkg.
I have to get [humped] by rpm before anything can get done and even then the pkg won't necessarily get installed.
It almost seems like rpm's pkg resolution isn't recursive or it just gives up really easily.
I find that as soon as rpm has a choice of pkgs to provide a req, it [bug]s off faster than superman on ritalin. When you finally choose a pkg, it will turn out to be incompatible with another dep of the original pkg. *Then* you're really [messed] and it'll be easier to survive a zombie invasion rather than figuring out which of the 5 choices *is* compatible.
Makes no difference because the problem is inherent to rpm, not the mgr.

Me:
hmm.. So you had this experience with Mandriva only? Are you sure you're not confusing Urpmi with rpm? How were you able to determine that it was the package format and not the manager that was messed up?

Also some rpms are made for different distros so they might have different nomentclature and assumptions of what's already installed (i.e. a Fedora rpm vs a openSUSE one).

Still I think you might try to give SUSE or Fed or even P.L.O. a shot. It wouldn't hurt to attempt to broaden your horizons a bit. This could just be Mandriva's problem. You might even like the others even if you ultimately choose to stick with Ubuntu anyway.

It wouldn't hurt, especially if you have a test machine.

Him:
tl;dr rpm allows reqs specified as pkgs or provides (a capability, file, etc) whereas deb only allows pkgs.

I think the times I tried to install an rpm were with a one-off rpm (not from a repo) built for that distro.
I'm not confusing urpmi with rpm. rpm pkgs specify general reqs (eg requires usb-hotplug). This req may be satisfied by more than one pkg in which case the manager will prompt the user to choose an option. [As far as I know], most managers don't check the user's choice against the rest of the deps, direct or not. They blindly install the choice and then continue. All goes well with *this* install. Now suppose the user goes to install another pkg that deps on usb-hotplug but alsp deps on usb-somethingelse. usb-somethingelse is only available in one package and that one package also provides usb-hotplug. The manager won't let 2 usb-hotplug pkgs be installed so it [bug]s off and leaves the user to sort it out. This phenomenon is colloquially known as rpm dependency hell. This is possible because rpm allows both deps on specific pkgs *and* provides whereas deb only allows pkgs.
I'm not saying it's not possible to get into a deb dependency hell, it's just a bit harder. This is all coming from 5 year old memory though.
---

So what do you think? Do these issues he's describing still persist? Is it an rpm design issue or was it just a package manager issue?

P.S. I hope this was the right section to post this under. If not I apologize.

stoat
6th October 2010, 01:52 AM
All I can think of to say to you and your friend is that the rpm command will check for dependencies, but it will not handle them. When installing a package(s) manually with the rpm command, it's up to us to provide the dependencies all at once in the same rpm command (or install them in advance, if possible). Doing otherwise is what can lead to the so-called "dependency hell" to which he referred. I recommend that he use a front-end such as YUM or Yumex which will handle the dependencies. Provide a repo(s) where it can go after them, and YUM will not bother your friend about dependencies. Anyway, that's the way it goes here for me.

YoshiroShin
6th October 2010, 07:14 AM

His reply:
--

Him:
let them know that A) I *was* using a pkg mgr when I experienced my problems, B) it was some time ago so these issues have probably been resolved, and C) I *do* know what I'm talking about. I've used Mandriva (just after the rebranding) for >6 months and I've used Ubuntu for >1 year. [In other words], I'm not a newbie.
It's the ability for RPM to specify capabilities that screws you. (contrived) scenario:
Pkg A(not installed) provides cap_1, cap_2. Pkg B(not installed) provides cap_1, cap_2, cap_3. You install Pkg C which requires cap_1+cap_2 and conflicts with cap_3. To satisfy the dependency, you choose Pkg A. All goes well. Later, you choose to install Pkg D which requires cap_1+cap_2+cap_3. Now you're [in a not too good position] if you need both C and D installed as they're mutually exclusive.
--

More thoughts? I'm only doing this as it's a learning experience for me and he might find this conversation constructively stimulating.

By the way I come from an environment such as Ubuntu forums so I'm not so sure of the ways of the Fedora guys but if you guys hate these topics and prefer to talk to people with problems on doing things rather than participating in educational discussions like this you might as well tell me now straight off and I'll leave this. Perhaps I should've posted this in another section of the forums?

Once again this is for constructive purposes. I want to learn. I don't know as much as a lot of others on here but I'm willing to try (and I'm not violating Rule 3 of the "When Asking Questions" guidelines when I say that) - after all as written above I noted that I have been testing Fedora and checking it out.

Thank you for your indulgence.

tox
6th October 2010, 08:07 AM
shouldnt this be in dribble sub-forum . why is this still open?.

YoshiroShin
6th October 2010, 08:25 AM
Can't a moderator just move it instead of closing it?

tox
6th October 2010, 08:29 AM
i could be wrong but why bring this up in this forum? specially when your on Ubuntu an about rpm's , to me its just like a bashing fedora/rpm thread. no package management distro is brilliant

YoshiroShin
6th October 2010, 08:39 AM
We're not bashing Fedora or rpms. My friend disagrees with them. Are his grievances still relevant? It's a discussion, not bashing - the users on the openSUSE forums are also participating in the discussion of this subject without any problems. The Ubuntu users are doing so also but they are hardly doing any bashing from their side. Moreover I posted it here because this section is called "Packaging" and we are talking about that are we not? I apologize for getting confused - I didn't realize this section was restricted to discussing the how-to's. If this follows then a moderator can move it to the appropriate section but it shouldn't be necessary to close the thread.

tox
6th October 2010, 08:53 AM
well it seems to me a Bashing rpm kinda thread . this threads probably not gonna go anywhere as the person that maintains RPM does not come to the forum at all.

Are his grievances still relevant? maybe but as i said, there is No Brilliant Package Management in any Distro .

It's a discussion, not bashing . you using Ubuntu seems like its a bashing thread. , im sure a lot here dont care about OpenSuse Users since they Happily use Mono & other Apps that Fedora will not package in there Repo or install by default like Moonlight. as far as i care about OpenSuse they could use .,deb for all i care or .exe .

YoshiroShin
6th October 2010, 09:15 AM
You state a very good point though in that it would be even more constructive to have my friend discuss this on the forum himself - I shall pass this on to him.

I apologize that you are offended as a consequence of the choice of my primary Linux distribution. Also I only mentioned openSUSE forums because they were not offended (while you were) which I thought was relevant since they use rpm packaging also yet they have not become defencive.

Yes it is obvious that no package manager (or anything else for that matter) is perfect but this fact is besides the point - I simply wanted to find out if the main issues were due to past package management issues or is they were past design issues. Then I wanted to find out the degree of improvement that was made (i.e. are many people having these dependency issues as much anymore?).

I thought that the users of Fedora would be the best to ask about this seeing as rpm was created by Red Hat Linux (now Fedora and Red Hat Enterprise Linux) and they would therefore have a great amount of experience with rpms.

Moreover it is irrelevant to the topic whether or not you or the other Fedora users care about the openSUSE users or not. Yes they do things differently than you, but this is why I asked them as well.

glennzo
6th October 2010, 09:19 AM
shouldnt this be in dribble sub-forum . why is this still open?.

Why do you constantly campaign to get threads closed?

tox
6th October 2010, 09:31 AM
Why do you constantly campaign to get threads closed?

i dont Glenn . i just dont think think this thread will go anywhere due to the fact the RPM Maintainer does not come to the forum. if someone has complaints about RPM or its Package management its probably advised to click on the FedoraProject an then to communicate rather than bringing up a thread like this that wont go anywhere. maybe they should suggest Fedora uses RPM5 instead

YoshiroShin
6th October 2010, 09:36 AM
Ah I misunderstood that point - yes I will advise my colleague to communicate his issues with a developer. It is unfortunate that you feel that this thread will go nowhere when it has on the other forums where I got answers and answers were all I wanted. You have not participated in the topic at hand - this is part of why this thread has gone nowhere.

tox
6th October 2010, 09:39 AM
Ah I misunderstood that point - yes I will advise my colleague to communicate his issues with a developer. It is unfortunate that you feel that this thread will go nowhere when it has on the other forums where I got answers and answers were all I wanted. You have not participated in the topic at hand - this is part of why this thread has gone nowhere.

can you provide a link to this so called thread?

YoshiroShin
6th October 2010, 09:42 AM
"so called thread"? I am not sure what else to call it - I believe that is the proper term. Also there is more than one of them seeing as I have been referring to them in the plural.

http://forums.opensuse.org/english/community/general-chit-chat/447646-rpms-managers.html
http://ubuntuforums.org/showthread.php?t=1588995

glennzo
6th October 2010, 09:46 AM
i dont Glenn . i just dont think think this thread will go anywhere due to the fact the RPM Maintainer does not come to the forum. if someone has complaints about RPM or its Package management its probably advised to click on the FedoraProject an then to communicate rather than bringing up a thread like this that wont go anywhere. maybe they should suggest Fedora uses RPM5 instead

Why not just take part in a friendly discussion of the pros and cons of package managers then? There have been many threads here that have been closed just because someone gets annoyed over something that was said and then they start whining about it. It would just be nice to see a civil discussion going on where intelligent people post intelligent comments about the subject at hand.

stoat
6th October 2010, 01:27 PM
It's the ability for RPM to specify capabilities that screws you. (contrived) scenario:
Pkg A(not installed) provides cap_1, cap_2. Pkg B(not installed) provides cap_1, cap_2, cap_3. You install Pkg C which requires cap_1+cap_2 and conflicts with cap_3. To satisfy the dependency, you choose Pkg A. All goes well. Later, you choose to install Pkg D which requires cap_1+cap_2+cap_3. Now you're [in a not too good position] if you need both C and D installed as they're mutually exclusive.
--

More thoughts?I've never experienced that. It might be interesting to see what repos are installed and enabled.yum repolist

vallimar
6th October 2010, 02:49 PM
You haven't seen it because as they already admitted, it's hypothetical nonsense.
Basing a dislike for something on contrived unrealities is nothing less then foolish.
This persons argument is nothing but a silly justification to themselves to continue to bash rpm.
They want to be babysat, and rpm is not a babysitter, simple as that.

aCROX999
6th October 2010, 02:54 PM
isn't "yum localinstall /path/to/rpm/package" will resolve all the dependecies all by itself?

YoshiroShin
7th October 2010, 02:09 AM
Okay guys as you can tell on one of the other forums the matter has basically been settled and I'm satisfied with what I've learnt so far out of this discussion. The discussion on this particular one is still young so if anyone wants to say more your welcome to do so - you can view his additions on the opensuse forum (link on page 1) and post your thoughts here if you feel that what you'd like to say hasn't already been said yet but I'm going to let the discussion close otherwise.

I'd like to say thanks to the users on this forum who took the time to voice (type) their views on the topic and happy linuxing.