Bug#927731: epiphany-browser/i386: private libdazzle not loaded

Simon McVittie smcv at debian.org
Wed Aug 28 08:29:20 BST 2019


On Wed, 28 Aug 2019 at 03:38:13 +0200, Carlos Alberto Lopez Perez wrote:
> What is broke is not the new search bar, but the libephywebextension.so
> which is unrelated with the search bar.
> 
> This extension is injected into the WebProcess and is used for things
> like remembering passwords on sites (the typical login form)

How can I make Epiphany try to load this extension? How can I tell
whether this feature is working?

(Please note that I am not an epiphany maintainer, only a GNOME team
member trying to help - so please do not assume that I know anything
about Epiphany beyond "it's a web browser and it uses GNOME libraries".)

> It seems that in the linking process this .so library got linked with
> the system libdazzle by mistake.

There is no system libdazzle during compilation of epiphany: linking with
a bundled library leaves the same DT_NEEDED reference to the SONAME of the
bundled library as linking with a system library of the same name. What
needs to happen is for the extension to also get a RPATH or RUNPATH
pointing to the bundled library - which seems to have worked as intended
for libephymain.so, at least on amd64, but not for libephywebextension.so.

I'm not sure why the RPATH/RUNPATH isn't being set, because ephymain
and ephywebprocessextension both have "install_rpath: pkglibdir" in
their respective meson.build files, but for some reason only the one
for ephymain seems to "stick"?

The fact that installing the system version of libdazzle makes it work
is somewhat unexpected, because the system version in buster is older
than the version required by Epiphany, which is why we're trying to use
the bundled copy in the first place. If the system copy was sufficient
then we would have preferred to use that one, which would have generated
a dpkg/apt-level dependency.

> rebuild this library declaring a build-conflicts with the system
> libdazzle

That wouldn't have any effect, because the system libdazzle was not
installed during compilation of epiphany-browser anyway. In the buildd
log, for example
https://buildd.debian.org/status/fetch.php?pkg=epiphany-browser&arch=i386&ver=3.32.1.2-2&stamp=1556409731&raw=0
for i386:

    Package versions: adduser_3.118 ... zlib1g-dev_1:1.2.11.dfsg-1
    ...
    Dependency libdazzle-1.0 found: NO (tried pkgconfig and cmake)

the "Package versions" line (which lists every package installed in the
chroot) does not mention libdazzle.

    smcv



More information about the pkg-gnome-maintainers mailing list