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.
Perhaps there should be an OR between these?
#if GTK_CHECK_VERSION(4, 0, 0)
#define WITH_WEBKITGTK 1
#define WITH_WEBKITGTK 1
#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!
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):
Author: Michał Górny <email@example.com>
AuthorDate: 2023-10-12 13:09:39 +0000
Commit: Michał Górny <firstname.lastname@example.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.
Signed-off-by: Michał Górny <email@example.com>
.../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 !