[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: apparent circular dependency

Matthew Miller wrote:
On Thu, Nov 25, 2004 at 09:15:09AM +0100, Diana Bosio wrote:

If it really sounds logical to you, then probably you might be able to solve this problem: in a village where the only barber available shaves only men that are not able to shave themselves, who shaves the barber?

Uh, clearly some men, hopefully including the barber _are_ able to shave
themselves. Setting up strawmen doesn't help.

Nevermind, never heard of a man called Bertrand Russell?

bash does not provide /bin/sh nor /bin/bash, at least not on my system, as you can see below. We can maybe start making a case for the config(*) line,

Err, yes it does.

No, it does not, /bin/sh and /bin/bash are files written by the bash rpm, but they are not in the provides tag, as you probably already know.
$ rpm -q --whatprovides /bin/bash

I don't believe --provides gives you files. Do this instead: `rpm -ql --provides bash`.

-ql and -provides are two separated queries, one gives you the list of files installed by that rpm, the other what is in the provide tag.

I am not sure. In any case it might be valid and predictable for you and concerning bash, but I have a plethora of rpms providing and requiring the same library, and it is not a system library that they might require in a post install script, but simply a wrong way of building the rpm...

You're making a weird circular argument. First you say that bash is a special case and there's nothing else like it, and then you say that there's
lots of other examples, but that they are -- by your original argument, all

No, I am not making a circular argument and indeed I have to decide if those rpma are all wrong or not. I am the one that decides if those rpms are built correctly or not. Out of the 150 rpms that I test, 34 have this odd behaviour, the rest is ok. I have to decide if the require and provide tags are specified correctly by the developers or not. But now I begin to believe that it is rpm itself that puts a dependency on that library in the require tag without checking if the library is itself inside the package. It looks like some parts of the require and provide tags are built independenlty without crosscheck.

Once again, how do I distinguish from a circular dependency that is "not at all confusing and quite logical" (according to you) and a bug that I have to report?

Simple -- circular dependencies aren't bugs.

Just out of curiosity: how does rpm installs the bash rpm if it needs bash to install rpms? Or does it need only some kind of basic shell? And in any case how that basic shell gets installed on the system?

Can rpm install itself?

CERN, European Organization for Nuclear Research
IT Department, Grid Middleware
Geneva 23, CH-1211, Switzerland
Tel: ++ 41 22 767 4374	Fax: ++ 41 22 767 7155

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]