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

Bug 935796

Summary: gnome-base/gnome-extra-apps: remove unconditional dependency on www-client/epiphany
Product: Gentoo Linux Reporter: Jorge <jorge+git>
Component: Current packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: UNCONFIRMED ---    
Severity: normal CC: jorge+git
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Jorge 2024-07-09 17:58:06 UTC
gnome-base/gnome-extra-apps unconditionally depends on www-client/epiphany, which is quite costly to build and very little used.  It (with its webkit-gtk:6 dependency) also wastes ≃ 131MiB of disk space.

This bug is similar to #811279, but I believe things have changed since it was closed on 2021-08-31.  I posted a comment there on 2024-07-02 and no one replied, probably because the bug is closed.  Objection:

> And no, it bringing in webkit-gtk, and thus wanting to avoid it with it, is
> not an argument either (not sure if it was yours), because it's far from the
> only thing that does so - webkit-gtk is a core platform library and is used
> by various other packages, including others that are in the same
> meta-package.

Answer: maybe that was true in 2021-08-31, but now epiphany is the only package (on both machines I use) pulling webkit-gtk:6.  The command

emerge -pvc net-libs/webkit-gtk:6 www-client/epiphany gnome-base/gnome{,-extra-apps}

confirms Portage can remove webkit-gtk:6 as long as epiphany -- therefore also gnome-base/gnome-extra-apps -- is removed too.  In my simulation also pretend-removed gnome-base/gnome, as it has USE=extras.

On my workstation, building webkit-gtk:6 takes 2h.  This unnecessary epiphany dependency costs 2h on initial Gentoo install and on every webkit-gtk upgrade, thus significantly worsening one of Gentoo's worst problems.

To leverage getbinpkg, I have to disable avif jpegxl USE flags in /etc/portage/package.use/lean.conf:

    net-libs/webkit-gtk:6 -avif -jpegxl

This workaround has two problems:
1. Many users, especially those installing Gentoo, won't come up with this solution, considering:
1.1: They may not know the cost of building webkit-gtk
1.2: The list of new packages when installing Gentoo is hundreds of lines long, so the user won't notice the specific problem.
1.3: The user might not realize epiphany is the only package pulling net-libs/webkit-gtk:6.
2. The workaround forces the user to maintain that USE package override specifically for webkit-gtk:6, updating it whenever default webkit-gtk USE flags diverge from user configuration.

I don't think the number of Gentoo users with custom make.conf USE flags affecting webkit-gtk (such as avif and jpegxl) is small.  USE flags are one of Gentoo's key selling points.

> Where would it stop - if epiphany has a USE flag, why wouldn't
> gnome-system-monitor, gnome-font-viewer, gnome-calculator,
> gnome-disk-utility, ...

Epiphany is a special case:

1. It is the only reverse dependency of net-libs/webkit-gtk:6 (2h build) on both machines I use.
2. It is probably one of the least-used big Gnome apps.


Reproducible: Always

Steps to Reproduce:
1. Emerge gnome-base/gnome-extra-apps
Actual Results:  
1. It brings www-client/epiphany and net-libs/webkit-gtk:6
2. net-libs/webkit-gtk:6 builds from source even with FEATURES="getbinpkg", possibly because of USE=avif or USE=jpegxl.
3. net-libs/webkit-gtk:6 wastes 2h build on install and every upgrade.  www-client/epiphany and net-libs/webkit-gtk:6 waste ≃131MiB on disk.

Expected Results:  
gnome-base/gnome-extra-apps should not hard-depend on costly, seldom used packages.
Comment 1 Jorge 2024-07-09 18:04:56 UTC
For reference, Debian sid's task-gnome-desktop does not hard-depend on Epiphany.  Gnome-core only *recommends* (not hard-depend) a graphical web browser, *and* the graphical web browser recommendation can be fulfilled by Firefox, Chromium or Epiphany.