Re: [opensuse-buildservice] Re: opensuse-buildservice: package mapping for dbus on fedora ?
Adrian, - Norm Paxton Software Engineer npaxton@novell.com (801) 861-5799 Novell, Inc. Software for the Open Enterprise http://www.novell.com/open
Adrian Schröter <adrian@suse.de> 07/28/06 3:45 AM >>>
CC'ing the list ...
Am Friday 28 July 2006 01:15 schrieb Norm Paxton:
Adrian,
From the opensuse-buildservice, while you were out: Can you help me with this? (I'll be happy to provide more info, if necessary)
-Norm Paxton *************************************************************** normp: darix: appears that adrianS is out of office today (hasn't been online for a while). Is there somebody else that could help us resolve the package mapping question from yesterday about dbus on fedora?
judas_iscariote: normp: what's the issue eh ? ;)
normp: I have a project that requires hwinfo. On SuSE, no problem - hwinfo is fine there. I have to include (build) hwinfo in my project, for fedora. hwinfo has a Requires (but not BuldRequires) on dbus-1. fedora defaults with dbus-0.
normp: KDE/KDE4 has a dbus-1 package on fedora. I linked that project.
normp: At my project (omc-base, which requires hwinfo) build prep, it installs dbus-1 (as expected) but immediately after, tries to install dbus-0, causing conflicts.
normp: Suggestion was that this is likely a package-mapping problems with dbus on fedora.
normp: If I add dbus-1 as a 'BuildRequires' on hwinfo, I get identical problem building hwinfo, if that helps narrow it down?
The problem is that some package within the BuildRequires requires dbus-0. This is nothing what can be fixed via mappings, it is a packaging issue of dbus-1 in first place.
Either dbus-1 packages for Fedora needs to be able to coexist with dbus-0 packages or it must be possible to setup a system with dbus-1 only.
This is not an issue of the build service, it is a coding issue in first place. If dbus-1 is incompatible with dbus-0, but can't coexist it is problem within dbus in first place.
I am including (below, it is long) an IRC discussion from the #hal channel. Perhaps it sheds more light on this. The summary is this: "Stupid packaging problem" Sounds like they accidentally (once upon a time) changed the package name instead of the version #? In any case, they say that dbus and dbus-1 are essentially they same. Does this help in the argument for package mapping for fedora?
bye adrian
--
Adrian Schroeter SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany email: adrian@suse.de
**Discussion from freenode/#hal: (10:07:23) normp: can anyone here answer questions on hal's dependency on dbus, or is that better sent to dbus mailing list? (10:08:13) normp: specifically, dbus vs dbus-1 (10:11:30) kay: normp: there is only on dbus, wht do you mean? (10:11:42) kay: only one dbus (10:12:52) normp: kay: I have an rpm that depends on dbus-1 (dbus-1-v#, dbus-1-glib-v#, etc) and another that depends on dbus (dbus-v#, etc). They conflict - both trying to use the same conf file, etc. (10:13:39) normp: more specifically, I'm trying to build hwinfo on fedora. hwinfo has dependency on dbus-1 and hal, but hal has dependency on dbus. Hence I get the dual but conflicting dependency. (10:14:20) kay: normp: yeah, it's a silly packaging problem (10:14:32) normp: can't find anything in google explaining difference between dbus and dbus-1, why the odd naming convention, etc. (10:14:48) kay: it's distro specific, you should probably ask on the fedora lists to get that resolved (10:14:50) normp: Am I OK putting hwinfo's dependency on dbus? Are they really the same? (10:15:21) kay: dbus and dbus-1 are the same, yes. at least today, we have only dbus in one version (10:15:28) normp: ok. Thanks. (10:18:36) normp: kay: follow-on... hwinfo comes from suse, has the dependency on dbus-1. You mention 'silly packaging problem'. ShonyK: why should this be a bug? (10:19:28) normp: dannyK: I don't know - I'm just trying to solve this dual/conflicting dependency problem. (10:19:45) kay: normp: oh, mixing system rpm's across distros doesn't really work, yeah (10:19:59) dannyK: normp: is this really a problem? (10:20:16) dannyK: normp: this work perfect on SUSE ... (10:20:25) dannyK: normp: I don't understand the problem (10:22:32) normp: dannyK: Problem comes when I try to build my new open-source project for multiple platforms. I'm using the opensuse build-service. hwinfo has dependency on 'dbus-1' and 'hal'. Works fine on suse. But on fedora, hal has dependency on 'dbus' not 'dbus-1' and conflicts. Can't build. If there's truly one dbus, with a 'silly packaging problem', is the real answer to get them aligned on the 'real' version of dbus? (10:23:36) normp: dannyK: if you have other suggestions and want to sidebar (since not directly related to hal, even though the original question is) I'd be happy to hear them :) (10:26:59) dannyK: If you try to build with the opensuse buildservice with *one* specfile for all distros you need IMO to use ifdef's for different package names ... bug you should maybe ask this on the related opensuse ML ... btw. IMO (and IIRC) there is some kind of mapping in the buildservice to handle different package names for the same package. If this not work for dbus you should report this (10:32:27) normp: dannyK: thanks. Yes, I have been working with some at the build service. This is, according to them, not a mapping issue, but rather an issue of specifically declared version dependencies. Will take this conversation back to them, see if it helps. (10:35:12) normp: dannyK: fyi: here is their reply: 'The problem is that some package within the BuildRequires requires dbus-0. This is nothing what can be fixed via mappings, it is a packaging issue of dbus-1 in first place. Either dbus-1 packages for Fedora needs to be able to coexist with dbus-0 packages or it must be possible to setup a system with dbus-1 only. This is not an issue of the build service, it is a coding issue in first place. If dbus-1 is incompatible with dbus-0, but can't coexist it is problem within dbus in first place.' (10:35:30) normp: the 'some package' referred to is hal (10:37:05) dannyK: normp: on which distro exist dbus-0 ? (10:37:16) mjg59: normp: hal doesn't use dbus-0 (10:38:48) dannyK: mjg59: on fedora, but on Mandriva (their package names are sometimes really strange)? (10:38:58) normp: dannyK: from the build on fedora 5 with extras: (10:38:58) normp: installing dbus-1-0.62-1.1 (10:38:58) normp: warning: user messagebus does not exist - using root (10:38:58) normp: installing dbus-0.61-3 (10:38:58) normp: file /etc/dbus-1/system.conf from install of dbus-0.61-3 conflicts with file from package dbus-1-0.62-1.1 (10:38:58) normp: file /usr/bin/dbus-send from install of dbus-0.61-3 conflicts with file from package dbus-1-0.62-1.1 (10:38:58) normp: file /usr/share/man/man1/dbus-daemon.1.gz from install of dbus-0.61-3 conflicts with file from package dbus-1-0.62-1.1 (10:39:49) normp: not really 'dbus-0' but rather 'dbus' as compared to 'dbus-1' as required by hwinfo. (10:40:02) dannyK: how does fedora name the package ? dbus or dbus-1 ? (10:40:07) normp: dbus (10:40:11) davidz: normp: on Fedora the package have always been 'dbus' (10:40:14) davidz: the name that is (10:40:25) davidz: of the rpm (10:40:34) mjg59: Well, mandrive may be broken (10:40:34) normp: therein is the problem - hwinfo requires dbus-1, and they can't coexist appaently (10:40:58) mjg59: normp: They're the same package (10:41:17) mjg59: Or, at least, they should be (10:41:18) dannyK: then ifdef the buildrequires and use your own for fedora (10:42:33) normp: you mean build my own hal or hwinfo. I'm a ways down the road of separate builds for the distros. (10:42:36) dannyK: or try to use the Provides/Obsoletes flag from rpm (10:42:59) davidz: normp: mixing rmp: Back to the primary question, which was the difference between dbus and dbus-1. Answered, I believe. (10:43:09) davidz: normp: or assuming that packages are named the same (10:43:15) mjg59: normp: There is no difference between dbus and dbus-1 (10:43:22) davidz: normp: you rather want the requires to be on .so's btw (10:43:24) mjg59: normp: dbus-1 has the abi version encoded into the package name, dbus doesn't (10:43:25) dannyK: nothing only different rpm names (10:43:37) davidz: normp: e.g. libdbus-1.so.2 or libdbus-1.so.3 (10:43:44) davidz: normp: then e.g. rpm can figure out the package to install (10:43:57) davidz: normp: and IIRC rpmbuild gets this right by itself (10:44:18) davidz: again, I just don't see a point in trying to make one spec file works across different distributions (10:44:27) davidz: it might work once but in general it's just too difficult (10:44:48) davidz: it's sad but I think that's the way it is (10:44:51) ***davidz goes to lunch (10:45:04) normp: okay. thanks all. (10:45:06) dannyK: davidz: this is maybe not so easy with the opensuse buildservice, where you can build for more than only one distribution (10:45:42) davidz: dannyK: so the whole idea of the opensuse buildservice is to use the same spec file? (10:45:46) normp: using %if (distro) all over the place... (10:46:06) davidz: dannyK: might be good, I don't really know much about packaging... :-) (10:46:14) dannyK: and the advantage of the buildservice is: only one spec and the package build on SUSE/Fedora4/5/mandriva ... (10:46:27) davidz: ok (10:46:32) dannyK: should build ;-) (10:46:50) normp: davidz: really, quite nice. problem came with the dual/imcompatible dependencies of dbus and dbus-1 (10:47:09) dannyK: yes looks so (10:48:13) dannyK: normp: use %if (distro) only for the package requirements and maybe Provides/Obsoletes -Norm --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice-unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice-help@opensuse.org
participants (1)
-
Norm Paxton