Bug 352151

Summary: ruby-gtkmozembed should not depend on specific version of firefox
Product: [Fedora] Fedora Reporter: Lubomir Kundrak <lkundrak>
Component: ruby-gnome2Assignee: Allisson Azevedo <allisson>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8CC: gecko-bugs-nobody, mtasaka, triage
Target Milestone: ---Keywords: EasyFix
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: bzcl34nup
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-17 18:04:54 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Lubomir Kundrak 2007-10-25 11:54:02 UTC
Description of problem:

I believe the dependency of the package on specific version of firefox is
incorrect. The package should depend on gecko-lib instead.

Not having the correct dependency makes it harder to track packages that should
be rebuilt when firefox/gecko-libs is rebuilt and causes dependency and possibly
security problems.

Version-Release number of selected component (if applicable):

ruby-gtkmozembed-0:0.16.0-12.fc8.i386

Comment 1 Mamoru TASAKA 2007-10-25 13:00:19 UTC
I oppose this.

Comment 2 Allisson Azevedo 2007-10-25 13:58:36 UTC
Here is the reason, from https://bugzilla.redhat.com/show_bug.cgi?id=232160#c22

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
* Gecko engine dependency
  - Well, I have to explain this a bit longer.
  # Summary
    - You must specify what version of firefox you used
      for build time.
      i.e. you must use "BuildRequires: firefox-devel = <VERSION>"
    - You must specify version specific dependency against
      firefox for ruby-gtkmozembed.
      i.e. you must write for ruby-gtkmozembed:
	   Requires: firefox = <version>
    - NOTE:
      firefox version may differ on each branches (devel/FC-6/FC-5).

  # Explanation
    - Well, what ruby-gtkmozembed requires are:
--------------------------------------------------------
[tasaka1@localhost ruby-gnome2]$ rpm -q --requires ruby-gtkmozembed | egrep
'(moz|xp)'
libgtkembedmoz.so
libxpcom.so
--------------------------------------------------------
      NOTE that only basenames are checked by rpm.
      However, ldd -r shows:
--------------------------------------------------------
[tasaka1@localhost ruby-gnome2]$ ldd -r
/usr/lib/ruby/site_ruby/1.8/i386-linux/gtkmozembed.so 2>/dev/null | egrep
'(moz|xpcom)'
	libgtkembedmoz.so => /usr/lib/firefox-2.0.0.3/libgtkembedmoz.so
(0x00110000)
	libxpcom.so => /usr/lib/firefox-2.0.0.3/libxpcom.so (0x0012f000)
	libxpcom_core.so => /usr/lib/firefox-2.0.0.3/libxpcom_core.so
(0x00cad000)
---------------------------------------------------------
      Here, the directory /usr/lib/firefox-2.0.0.3 is not in default
      library path and actually gtkmozembed.so has rpath.
---------------------------------------------------------
[tasaka1@localhost ruby-gnome2]$ objdump -T --headers --private-headers
/usr/lib/ruby/site_ruby/1.8/i386-linux/gtkmozembed.so  | grep RPATH
  RPATH       /usr/lib/firefox-2.0.0.3
---------------------------------------------------------
       So, if firefox is updated to 2.0.0.4, it succeeds without any complaint,

       because rpm does not check rpath dependency.
       However gtkmozembed.so actually requires libxpcom.so under
       /usr/lib/firefox-2.0.0.3, so ruby-gtkmozembed gets unusable.

       To aviod this, we have to specify version dependency against
       firefox explicitly.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Comment 3 Christopher Aillon 2007-10-25 17:19:34 UTC
Hi.  I am the firefox maintainer for Fedora.  I asked lkundrak to file these
bugs.    gecko-libs is actually the correct way to do this.  While it is true
that in theory another package could provide gecko-libs and have different
paths, that will never happen in Fedora, so your argument against that is more
theoretical than anything.

Doing this will make it much easier for me to make the switch to xulrunner, and
will help allow scripting updates.  Please make the change from Requires:
firefox = 2.0.0.8 to Requires: gecko-libs = 1.8.1.8 like most other packages in
the distro.


Comment 4 Allisson Azevedo 2007-10-26 02:02:49 UTC
Hi Christopher,

I make new build for use gecko-devel and gecko-libs:

http://koji.fedoraproject.org/koji/buildinfo?buildID=22428 F-7
http://koji.fedoraproject.org/koji/buildinfo?buildID=22429 F-8
http://koji.fedoraproject.org/koji/buildinfo?buildID=22430 F-9




Comment 5 Christopher Aillon 2007-10-26 11:04:14 UTC
Thank you!

Comment 6 Bug Zapper 2008-04-04 14:16:51 UTC
Based on the date this bug was created, it appears to have been reported
during the development of Fedora 8. In order to refocus our efforts as
a project we are changing the version of this bug to '8'.

If this bug still exists in rawhide, please change the version back to
rawhide.
(If you're unable to change the bug's version, add a comment to the bug
and someone will change it for you.)

Thanks for your help and we apologize for the interruption.

The process we're following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

Comment 7 Mamoru TASAKA 2008-05-17 18:04:54 UTC
Closing