Summary: | gnome-extra/evolution-data-server-3.46.0-r1: suspiciously declares dependency on both net-libs/webkit-gtk:4.1 and net-libs/webkit-gtk:5 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Joakim Tjernlund <joakim.tjernlund> |
Component: | Current packages | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | joost.ruis, mgorny |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://gitlab.gnome.org/GNOME/evolution/-/issues/2192 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Joakim Tjernlund
2022-11-16 18:19:44 UTC
snippet: oauth? ( >=net-libs/webkit-gtk-2.34.0:4.1 >=net-libs/webkit-gtk-2.36.0:5 ) Perhaps there should be an OR between these? e-credentials-prompter-impl-oauth2.c has: #if GTK_CHECK_VERSION(4, 0, 0) #ifdef ENABLE_OAUTH2_WEBKITGTK4 #define WITH_WEBKITGTK 1 #else #undef WITH_WEBKITGTK #endif #else #ifdef ENABLE_OAUTH2_WEBKITGTK #define WITH_WEBKITGTK 1 #else #undef WITH_WEBKITGTK #endif #endif #ifdef WITH_WEBKITGTK #include <webkit2/webkit2.h> #endif /* WITH_WEBKITGTK */ This looks to me like OAUTH is happy with either webkit, not both of them. I believe one provides oauth support when used via the gtk3 library, and the other when used via the gtk4 library. Different evolution-data-server consumers link to one of them, not both. E.g. gnome-calendar links to the gtk4 and would need webkit-gtk:5 to have bare oauth support. A month or two ago when I discussed about this on IRC, it looked like the only gtk4 user so far wouldn't really benefit from it, so I suggested to delay the SLOT=5 dep for now and explicitly build the gtk4 version of the relevant library without this direct webkit-gtk oauth support (as opposed to via gnome-online-accounts). The situation may have changed by now - I'm not up to date on when and how we ended up with this dep being there by now; maybe there's more important consumers now. To clarify - e-credentials-prompter-impl-oauth2.c is probably built twice - once as part of the relevant eds libraries gtk3 version, and once for the gtk4 version. It isn't a one or the other type of deal, but neither or both when both gtk3 and gtk4 libraries are enabled. At work we don't use GNOME directly, we have KDE and MATE. In our setup which is fairly big as it contains all tools we need to get work done, only evolution-data-server insists on net-libs/webkit-gtk:5 which is then is an unused dependency as nothing else uses net-libs/webkit-gtk:5 Could net-libs/webkit-gtk:5 be conditional somehow? It already is conditional on USE=oauth. You need it for gtk3 version? (In reply to Mart Raudsepp from comment #6) > It already is conditional on USE=oauth. You need it for gtk3 version? yes, with oauth How about adding an USE flag for GTK+4? FWICS evolution is still on GTK+3. (In reply to Michał Górny from comment #8) > How about adding an USE flag for GTK+4? FWICS evolution is still on GTK+3. That would be super! Ping. If I understand it correctly, I just need webkit-gtk-2.40.1-r410 emerge -pv --depclean webkit-gtk Calculating dependencies... done! net-libs/webkit-gtk-2.40.1-r410 pulled in by: gnome-extra/evolution-data-server-3.48.1 requires >=net-libs/webkit-gtk-2.34.0:4.1 gnome-extra/sushi-43.0 requires net-libs/webkit-gtk:4.1[introspection] mail-client/evolution-3.48.1 requires >=net-libs/webkit-gtk-2.38.0:4.1/0=[spell], >=net-libs/webkit-gtk-2.38.0:4.1=[spell] net-libs/gnome-online-accounts-3.48.0 requires >=net-libs/webkit-gtk-2.33.1:4.1 net-libs/webkit-gtk-2.40.1-r600 pulled in by: gnome-extra/evolution-data-server-3.48.1 requires >=net-libs/webkit-gtk-2.39.90:6 Is there anything that I can do to help resolve this issue? Still hoping for a USE flag, can we have one? The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9dc68056e1be368ce396ed12e2e5c1fcb253e51b commit 9dc68056e1be368ce396ed12e2e5c1fcb253e51b Author: Michał Górny <mgorny@gentoo.org> AuthorDate: 2023-10-12 13:09:39 +0000 Commit: Michał Górny <mgorny@gentoo.org> CommitDate: 2023-10-12 14:15:57 +0000 gnome-extra/evolution-data-server: Control GTK+3/4 oauth separately Add a separate `oauth-gtk3` and `oauth-gtk4` flags to control OAuth support in libedataserverui and libedataserverui4 separately. This makes it possible enable OAuth support for specific dependencies without having to build two versions of net-libs/webkit-gtk simultaneously. Closes: https://bugs.gentoo.org/881545 Signed-off-by: Michał Górny <mgorny@gentoo.org> .../evolution-data-server-3.50.0-r1.ebuild | 159 +++++++++++++++++++++ gnome-extra/evolution-data-server/metadata.xml | 5 +- profiles/arch/alpha/package.use.mask | 2 +- profiles/arch/ia64/package.use.mask | 2 +- 4 files changed, 165 insertions(+), 3 deletions(-) Thanks a lot ! |