Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#807601: libreoffice-core and libreoffice-evolution still depend on libgtk2.0-0

4 views
Skip to first unread message

Emilio Pozuelo Monfort

unread,
Dec 10, 2015, 1:30:03 PM12/10/15
to
Package: src:libreoffice
Version: 1:5.1.0~beta2-1
Severity: minor

Hi,

I'm using LO 1:5.1.0~beta2-1 from experimental. I'm trying to get a gtk2-free
system, and while at that I noticed that libreoffice-core and
libreoffice-evolution depend on libgtk2.0-0.

Binary file pluginapp.bin matches
Binary file libpllo.so matches
Binary file libevoablo.so matches

It'd be nice if those didn't depend on gtk2... no idea how hard that is or if
upstream is already aware of that... Let me know if I should report this
upstream, I'm happy to do that.

Cheers,
Emilio

-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (800, 'unstable'), (700, 'experimental'), (650, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: armhf, i386

Kernel: Linux 4.2.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Rene Engelhard

unread,
Dec 10, 2015, 3:40:03 PM12/10/15
to
Hi,

On Thu, Dec 10, 2015 at 09:04:55PM +0100, Rene Engelhard wrote:
> On Thu, Dec 10, 2015 at 07:19:32PM +0100, Emilio Pozuelo Monfort wrote:
> > system, and while at that I noticed that libreoffice-core and
> > libreoffice-evolution depend on libgtk2.0-0.
> >
> > Binary file pluginapp.bin matches
> > Binary file libpllo.so matches
>
> This is http://cgit.freedesktop.org/libreoffice/core/tree/extensions/source/plugin/unx?h=libreoffice-5-1 and thus http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Executable_pluginapp.bin.mk?h=libreoffice-5-1 and http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Library_pl.mk?h=libreoffice-5-1.
>
> The (imho uneeded) "use npapi plugins inside LibreOffice" feature....
>
> Probably depending on gtk2 since "the browsers (read: firefox/icewasel)" do,
> which is wrong noadays. But It uses gtk itself:
>
> (sid)rene@frodo ..0.0.beta2/extensions/source/plugin/unx % grep -r gtk_ *
> npnapi.cxx: pInst->pGtkWindow = gtk_plug_new((GdkNativeWindow)reinterpret_cast<sal_uIntPtr>(pWindow->window));
> npnapi.cxx: gtk_widget_show( pInst->pGtkWindow );
> npnapi.cxx: pInst->pGtkWidget = gtk_socket_new();
> npnapi.cxx: gtk_widget_show( pInst->pGtkWidget );
> npnapi.cxx: gtk_container_add( GTK_CONTAINER(pInst->pGtkWindow), pInst->pGtkWidget );
> npnapi.cxx: gtk_widget_show_all( pInst->pGtkWindow );
> npnapi.cxx: pInst->window.window = reinterpret_cast<void *>(gtk_socket_get_id( GTK_SOCKET(pInst->pGtkWidget ) ));
> npnapi.cxx: gtk_widget_set_size_request( pInst->pGtkWidget, pWindow->width, pWindow->height );
> npnapi.cxx: gtk_window_resize( GTK_WINDOW(pInst->pGtkWindow), pWindow->width, pWindow->height );
> npnapi.cxx: GdkScreen* pGdkScreen = gtk_widget_get_screen( pInst->pGtkWidget );
> npwrap.cxx: gtk_init(&argc, &argv);
> (sid)rene@frodo ..0.0.beta2/extensions/source/plugin/unx %
>
> No idea about whether the API used changed between gtk2 and gtk3...

Besides that fact, one might consider splitting this "feature" out or
(but that means implicitely giving it more attention...) or simply patching
it away, I don't really believe anyone is using this ;)

Regards,

Rene

Rene Engelhard

unread,
Dec 10, 2015, 3:40:03 PM12/10/15
to
Hi,

On Thu, Dec 10, 2015 at 07:19:32PM +0100, Emilio Pozuelo Monfort wrote:
> system, and while at that I noticed that libreoffice-core and
> libreoffice-evolution depend on libgtk2.0-0.
>
> Binary file pluginapp.bin matches
> Binary file libpllo.so matches

This is http://cgit.freedesktop.org/libreoffice/core/tree/extensions/source/plugin/unx?h=libreoffice-5-1 and thus http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Executable_pluginapp.bin.mk?h=libreoffice-5-1 and http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Library_pl.mk?h=libreoffice-5-1.

The (imho uneeded) "use npapi plugins inside LibreOffice" feature....

Probably depending on gtk2 since "the browsers (read: firefox/icewasel)" do,
which is wrong noadays. But It uses gtk itself:

(sid)rene@frodo ..0.0.beta2/extensions/source/plugin/unx % grep -r gtk_ *
npnapi.cxx: pInst->pGtkWindow = gtk_plug_new((GdkNativeWindow)reinterpret_cast<sal_uIntPtr>(pWindow->window));
npnapi.cxx: gtk_widget_show( pInst->pGtkWindow );
npnapi.cxx: pInst->pGtkWidget = gtk_socket_new();
npnapi.cxx: gtk_widget_show( pInst->pGtkWidget );
npnapi.cxx: gtk_container_add( GTK_CONTAINER(pInst->pGtkWindow), pInst->pGtkWidget );
npnapi.cxx: gtk_widget_show_all( pInst->pGtkWindow );
npnapi.cxx: pInst->window.window = reinterpret_cast<void *>(gtk_socket_get_id( GTK_SOCKET(pInst->pGtkWidget ) ));
npnapi.cxx: gtk_widget_set_size_request( pInst->pGtkWidget, pWindow->width, pWindow->height );
npnapi.cxx: gtk_window_resize( GTK_WINDOW(pInst->pGtkWindow), pWindow->width, pWindow->height );
npnapi.cxx: GdkScreen* pGdkScreen = gtk_widget_get_screen( pInst->pGtkWidget );
npwrap.cxx: gtk_init(&argc, &argv);
(sid)rene@frodo ..0.0.beta2/extensions/source/plugin/unx %

No idea about whether the API used changed between gtk2 and gtk3...

> Binary file libevoablo.so matches

And this is the evolution ab thingy. Probably depending on gtk2 because
of evolution (which also changed). I mean, it doesn't use gtk directly afaics:

(sid)rene@frodo ..ta2/connectivity/source/drivers/evoab2 % grep -r gtk_ *
1 (sid)rene@frodo ..ta2/connectivity/source/drivers/evoab2 %

> It'd be nice if those didn't depend on gtk2... no idea how hard that is or if
> upstream is already aware of that...

I don't believe they are.
In fact, 5.1 will the first release even enabling gtk3 per default upstream
and the VCLPlug (-gtk3) is the first step. So..

> Let me know if I should report this upstream, I'm happy to do that.

If you wanted to do that, that would be nice.

Regards,

Rene

Rene Engelhard

unread,
Dec 10, 2015, 4:00:03 PM12/10/15
to
Hi,

On Thu, Dec 10, 2015 at 09:04:55PM +0100, Rene Engelhard wrote:
> > Binary file libevoablo.so matches
>
> And this is the evolution ab thingy. Probably depending on gtk2 because
> of evolution (which also changed). I mean, it doesn't use gtk directly afaics:
>
> (sid)rene@frodo ..ta2/connectivity/source/drivers/evoab2 % grep -r gtk_ *
> 1 (sid)rene@frodo ..ta2/connectivity/source/drivers/evoab2 %

libebook is (forgot to mention that in my last mail) dlopen()'ed anyway and
a build says this:

pkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libpangocairo-1.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libucbhelper.so (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libgdk_pixbuf-2.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libfreetype.so.6 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libpangoft2-1.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libfontconfig.so.1 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libgtk-x11-2.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libatk-1.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libcairo.so.2 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libgdk-x11-2.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libpango-1.0.so.0 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libfilelo.so (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libreoffice-evolution/usr/lib/libreoffice/program/libevoablo.so was not linked against libgio-2.0.so.0 (it uses none of the library's symbols)
# dpkg-shlibdeps "in practice" always will look for this in

so we probably don't need a gtk linkage at all there.

Regards,

Rene

Emilio Pozuelo Monfort

unread,
Dec 10, 2015, 7:20:03 PM12/10/15
to
I have forwarded this part to

https://bugs.documentfoundation.org/show_bug.cgi?id=96396

Cheers,
Emilio

Emilio Pozuelo Monfort

unread,
Dec 10, 2015, 7:40:03 PM12/10/15
to
On 10/12/15 21:04, Rene Engelhard wrote:
> Hi,
>
> On Thu, Dec 10, 2015 at 07:19:32PM +0100, Emilio Pozuelo Monfort wrote:
>> system, and while at that I noticed that libreoffice-core and
>> libreoffice-evolution depend on libgtk2.0-0.
>>
>> Binary file pluginapp.bin matches
>> Binary file libpllo.so matches
>
> This is http://cgit.freedesktop.org/libreoffice/core/tree/extensions/source/plugin/unx?h=libreoffice-5-1 and thus http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Executable_pluginapp.bin.mk?h=libreoffice-5-1 and http://cgit.freedesktop.org/libreoffice/core/tree/extensions/Library_pl.mk?h=libreoffice-5-1.
>
> The (imho uneeded) "use npapi plugins inside LibreOffice" feature....

I didn't know about that. What plugins can be used inside LO?

> Probably depending on gtk2 since "the browsers (read: firefox/icewasel)" do,
> which is wrong noadays. But It uses gtk itself:

Probably because some plugins use GTK+2 (e.g. Flash), hence the plugin process
needs to use GTK+2 as well.
Reported this as https://bugs.documentfoundation.org/show_bug.cgi?id=96398

Cheers,
Emilio

Rene Engelhard

unread,
Dec 11, 2015, 2:20:03 AM12/11/15
to
clone 807601 -1
reassign 807601 libreoffice-core
reassign -1 libreoffice-evolution
found 807601 1:5.1.0~beta2-1
retitle 807601 libreoffice-core still depend on libgtk2.0-0
retitle -1 libreoffice-evolution has an unneeded dependency on libgtk2.0-0
severity -1 normal
forwarded -1 https://bugs.documentfoundation.org/show_bug.cgi?id=96396
forwarded 807601 https://bugs.documentfoundation.org/show_bug.cgi?id=96398
thanks

Hi,

On Thu, Dec 10, 2015 at 07:19:32PM +0100, Emilio Pozuelo Monfort wrote:
> Package: src:libreoffice
> Version: 1:5.1.0~beta2-1
> Severity: minor
>
> Hi,
>
> I'm using LO 1:5.1.0~beta2-1 from experimental. I'm trying to get a gtk2-free
> system, and while at that I noticed that libreoffice-core and
> libreoffice-evolution depend on libgtk2.0-0.
>
> Binary file pluginapp.bin matches
> Binary file libpllo.so matches
> Binary file libevoablo.so matches
>
> It'd be nice if those didn't depend on gtk2... no idea how hard that is or if
> upstream is already aware of that... Let me know if I should report this
> upstream, I'm happy to do that.

Thanks for doing that, marking as forwaded (and splitting the bugs)

Regards,

Rene

Rene Engelhard

unread,
Dec 11, 2015, 4:00:05 AM12/11/15
to
Hi,

On Fri, Dec 11, 2015 at 01:21:46AM +0100, Emilio Pozuelo Monfort wrote:
> > The (imho uneeded) "use npapi plugins inside LibreOffice" feature....
>
> I didn't know about that. What plugins can be used inside LO?

I've no idea.

(I don't really care, though, in any way).

> > Probably depending on gtk2 since "the browsers (read: firefox/icewasel)" do,
> > which is wrong noadays. But It uses gtk itself:
>
> Probably because some plugins use GTK+2 (e.g. Flash), hence the plugin process
> needs to use GTK+2 as well.

Yeah, maybe. Though as I also can see flash as the only relevant example,
why would anyone add flash videos? Maybe in Impress, but...

And given the steady security issues of flash...
Thanks.

As said, I am sceptical about moving it into a -npapi-support package as
it would give more publicity to this little-known feature. (And would require
NEW)

If we want to get rid of the gtk2.0 dependency in -core we probably need to
patch it out completely.
(As you say in the upstream report NPAPI is deprecated, so I've no
idea why they kept this when they removed the NPAPI browser plugin... I wondered
already at that time because it makes no sense to me...)

Regards,

Rene
0 new messages