Bug 420471 - nspluginwrapper relies on a specific version of firefox and this breaks
nspluginwrapper relies on a specific version of firefox and this breaks
Product: Fedora
Classification: Fedora
Component: nspluginwrapper (Show other bugs)
All Linux
low Severity medium
: ---
: ---
Assigned To: Martin Stransky
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2007-12-11 15:41 EST by Michal Jaegermann
Modified: 2007-12-11 16:18 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-12-11 15:49:16 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:

Attachments (Terms of Use)

  None (edit)
Description Michal Jaegermann 2007-12-11 15:41:38 EST
Description of problem:

nspluginwrapper has an explicit dependency on gecko-libs and
'rpm -q --whatprovides gecko-libs' responds with firefox only
so that means firefox.  Is that right?  Because if only
libgtkembedmoz.so then that this can be provided by other packages
too.  But this is a side issue.

The real trouble is that /usr/bin/mozilla-plugin-config has the
following code:

## Detect a gecko-lib instalation if it's requested
if [ "0" -eq "1" ]; then
    if [ ! -x $MOZ_LIB_DIR/firefox- ]; then
        if [ ! -x $SECONDARY_LIB_DIR/firefox- ]; then
            echo "Error: $MOZ_LIB_DIR/firefox- not found"
            if [ -d $SECONDARY_LIB_DIR ]; then
                echo "       $SECONDARY_LIB_DIR/firefox- not
found"            fi
            exit 1
    export LD_LIBRARY_PATH=$MOZ_LIB_DIR/firefox-

This obviously breaks if a firefox version changes - like right now
as firefox- was replaced. Instead a code like that could
be used:

## Detect a gecko-libs instalation if it's requested

set_library_path () {
    [ $? -eq 0 ] || exit 1 # gecko-libs are missing
    if [ "$2" = x86_64 ] ; then
        export LD_LIBRARY_PATH="/usr/lib64/$1"
        export LD_LIBRARY_PATH="/usr/lib/$1"

set_library_path $(rpm -q --whatprovides gecko-libs \
    --qf '%{name}-%{version} %{arch}\n')

Does that means that with a new firefox plugins have to be
rewrapped?  If yes then some triggers are needed.

Version-Release number of selected component (if applicable):
Comment 1 Martin Stransky 2007-12-11 15:49:16 EST
Check this code:


 if [ "0" -eq "1" ]; then


nspluginwrapper uses gecko-libs run-time only if it's compiled with XPCOM
support. And XPCOM support is turned off in Fedora 8.

Comment 2 Michal Jaegermann 2007-12-11 16:18:58 EST
Ok, but if and when  XPCOM support will be turned on will you
remember that you have a brewing trouble on your hands?

So I should look more carefuly at the original code and
in a replacement it should be

   if [ "$2" = x86_64 -o "$2" = ia64 -o "$2" = s390 ] ; then

and possibly MOZ_LIB_DIR and SECONDARY_LIB_DIR adjusted as they
are currently not derived from an architecture of a package
but these are easy to adjust

Note You need to log in before you can comment on or make changes to this bug.