FS#63475 - [libxfce4ui] Potentially unneeded dependency on gtk2

Attached to Project: Arch Linux
Opened by Rodrigo Orselli (orsa) - Friday, 16 August 2019, 13:34 GMT
Last edited by Evangelos Foutras (foutrelis) - Friday, 29 May 2020, 03:04 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Evangelos Foutras (foutrelis)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

Description:
Installing the xfce4 group still tries to pull in gtk2 as a dependency, which, according to the release notes for stable release 4.14, should not be needed. A quick look at the "Required by" section for gtk2 suggests libxfce4ui is the culprit. Upstream (https://git.xfce.org/xfce/libxfce4ui/about/) says the package should only require gtk+ 3.18.0 or above.

Additional info:
* package version: libxfce4ui 4.14.1-2
This task depends upon

Closed by  Evangelos Foutras (foutrelis)
Friday, 29 May 2020, 03:04 GMT
Reason for closing:  Deferred
Additional comments about closing:  Going to wait until Xfce 4.16 which will officially drop support for GTK+2.
Comment by Eli Schwartz (eschwartz) - Tuesday, 20 August 2019, 05:09 GMT
It's not quite as open and shut as all that.

$ pkg-list-linked-libraries libxfce4ui 'libg(t|d)k-x11-2.0.so.0'
==> checking linked libraries for libxfce4ui-4.14.1-2-x86_64.pkg.tar.xz ...
/usr/lib/libxfce4kbd-private-2.so.0.0.0
NEEDED libgtk-x11-2.0.so.0
NEEDED libgdk-x11-2.0.so.0
/usr/lib/libxfce4ui-1.so.0.0.0
NEEDED libgtk-x11-2.0.so.0
NEEDED libgdk-x11-2.0.so.0

It is definitely linked to gtk2 right now. OTOH, looking at the upstream configure.ac, it will check for and utilize: "Optional support for a GTK+2 version of the library"

Looks like this is needed in order to support Glade Interface Designer. I don't know if this is important or needed functionality, let's see what the package maintainer thinks.
Comment by Evangelos Foutras (foutrelis) - Tuesday, 20 August 2019, 05:45 GMT
GTK+ 2 support is optional in a sense but there are still a few panel plugins that haven't been ported to GTK+ 3.

I'm not sure if I want to move gtk2 to libxfce4ui's makedepends and rely on GTK+ 2 panel plugins to pull it in. It'd mean that the package would be shipping the libxfce4ui-1 library (i.e.: GTK+2 variant) with broken dependencies.

It might be better to hold off until Xfce 4.16 to fully drop GTK+ 2 -- from https://simon.shimmerproject.org/2019/07/31/xfce-4-14pre3-released/ :

"In general support for Gtk+2 plugins will remain as part of the final 4.14 release of the panel and will only be removed in the 4.16 cycle."
Comment by Balló György (City-busz) - Tuesday, 20 August 2019, 09:47 GMT
The following plugins can be built with GTK 3:
- xfce4-notes-plugin: build with --enable-gtk3 switch.[1]
- xfce4-weather-plugin: it was ported to gtk3 in the latest version.[2]

Only the following applications and plugins are not yet ported to GTK 3:
- xfburn
- xfce4-mailwatch-plugin
- xfce4-time-out-plugin

I would prefer to drop these packages from [extra], and then disable GTK 2 support in libxfce4ui and garcon.


[1] https://git.xfce.org/panel-plugins/xfce4-notes-plugin/tree/configure.ac.in?h=1.8.1#n49
[2] https://mail.xfce.org/pipermail/xfce-announce/2019-August/000759.html
Comment by Eli Schwartz (eschwartz) - Tuesday, 20 August 2019, 13:42 GMT
If the next version of xfce4 will fully deprecate gtk2, then I think there's no need to rush. Gtk2 is still used quite a bit anyway.

Loading...