Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 881545

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 packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Severity: normal CC: joost.ruis, mgorny
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also:
Package list:
Runtime testing required: ---

Description Joakim Tjernlund 2022-11-16 18:19:44 UTC
Does evolution-data-server really need both? net-libs/webkit-gtk is a fairly
big dependency so it would be great if net-libs/webkit-gtk:5 could be avoided.
Comment 1 Joakim Tjernlund 2022-11-23 09:23:37 UTC
	oauth? (

Perhaps there should be an OR between these?
Comment 2 Joakim Tjernlund 2022-11-23 09:36:27 UTC
e-credentials-prompter-impl-oauth2.c has:
#if GTK_CHECK_VERSION(4, 0, 0)
      #define WITH_WEBKITGTK 1
      #undef WITH_WEBKITGTK
      #define WITH_WEBKITGTK 1
      #undef WITH_WEBKITGTK

#include <webkit2/webkit2.h>
#endif /* WITH_WEBKITGTK */

This looks to me like OAUTH is happy with either webkit, not both of them.
Comment 3 Mart Raudsepp gentoo-dev 2022-11-23 15:00:08 UTC
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.
Comment 4 Mart Raudsepp gentoo-dev 2022-11-23 15:01:51 UTC
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.
Comment 5 Joakim Tjernlund 2022-11-24 19:46:08 UTC
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?
Comment 6 Mart Raudsepp gentoo-dev 2022-11-24 22:20:35 UTC
It already is conditional on USE=oauth. You need it for gtk3 version?
Comment 7 Joakim Tjernlund 2022-11-24 22:51:08 UTC
(In reply to Mart Raudsepp from comment #6)
> It already is conditional on USE=oauth. You need it for gtk3 version?

yes, with oauth
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2022-12-23 07:44:23 UTC
How about adding an USE flag for GTK+4?  FWICS evolution is still on GTK+3.
Comment 9 Joakim Tjernlund 2023-01-18 22:07:03 UTC
(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!
Comment 10 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2023-03-25 06:43:53 UTC
Comment 11 sMueggli 2023-06-10 09:28:23 UTC
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?
Comment 12 Joakim Tjernlund 2023-10-05 20:20:05 UTC
Still hoping for a USE flag, can we have one?
Comment 13 Larry the Git Cow gentoo-dev 2023-10-12 14:16:01 UTC
The bug has been closed via the following commit(s):

commit 9dc68056e1be368ce396ed12e2e5c1fcb253e51b
Author:     Michał Górny <>
AuthorDate: 2023-10-12 13:09:39 +0000
Commit:     Michał Górny <>
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.
    Signed-off-by: Michał Górny <>

 .../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(-)
Comment 14 Joakim Tjernlund 2023-10-12 14:22:33 UTC
Thanks a lot !