GVFS depends on WebKitGTK via gnome-online-accounts

  • Open
  • quality assurance status badge
Details
2 participants
  • kiasoc5
  • Ludovic Courtès
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 8 Oct 2022 11:53
(address . bug-guix@gnu.org)
87mta68wuw.fsf@inria.fr
For a “system-level” package, GVFS has an unreasonable footprint:

Toggle snippet (25 lines)
$ guix describe
Generation 230 Oct 03 2022 00:13:06 (current)
guix bb3b810
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: bb3b810167d9ff784770a848a6f86b0cfa9cdfd8
$ guix size gvfs
store item total self
/gnu/store/wdm2s2si8fqsrcd5xpc29ivmpkf20s8d-mesa-21.3.8 411.6 169.6 6.8%
/gnu/store/6pdzpmxg5afzss6dlivq8z84sfa31x22-llvm-11.0.0 221.5 149.5 6.0%
/gnu/store/069aq2v993kpc41yabp5b6vm4wb9jkhg-gcc-10.3.0 217.7 145.8 5.9%
/gnu/store/9cbi3x1f0xqagpmdmjhc79acshyjkl6k-webkitgtk-2.36.7 1379.1 127.0 5.1%
/gnu/store/a67q76vpbahf66y434pqs9c1gsj6x7ml-samba-4.16.4 491.8 93.7 3.8%
/gnu/store/492rrcrkgaq0csw1x09x6aj5kjz8xxrr-samba-4.15.3 489.4 90.1 3.6%
/gnu/store/drjnxy0jrxd084grrkyagrdkjsyv1afz-qtbase-5.15.2 1154.1 73.4 2.9%
/gnu/store/65i3nhcwmz0p8rqbg48gaavyky4g4hwk-python-3.9.9 155.3 63.7 2.6%
/gnu/store/p3hz5g4z1yzjq6bsbp7kqr9g0fmrmad8-mozjs-78.15.0 258.1 62.3 2.5%
/gnu/store/hy6abswwv4d89zp464fw52z65fkzr7h5-perl-5.34.0 147.7 58.6 2.4%
/gnu/store/x3rwakc3z81hmgayxj5qh4a8flsj9hzw-mediasdk-22.4.4 468.8 56.4 2.3%

[...]

total: 2492.4 MiB

The main issue is the dependency on webkitgtk:

Toggle snippet (18 lines)
$ guix graph --path gvfs webkitgtk@2.36
gvfs@1.50.2
gnome-online-accounts@3.45.2
webkitgtk@2.36.7
$ guix gc --references $(guix build gnome-online-accounts)|grep webkit
/gnu/store/6zpcpnywcimmia84jkixnwfcl4chhz6k-webkitgtk-2.36.7
$ grep -r 6zpcpnywcimmia84jkixnwfcl4chhz6k $(guix build gnome-online-accounts)
grep: /gnu/store/dkqcdhcg8536h4ahwpkc3hv0xrrc8haj-gnome-online-accounts-3.45.2/lib/libgoa-backend-1.0.so.1.0.0: binary file matches
grep: /gnu/store/dkqcdhcg8536h4ahwpkc3hv0xrrc8haj-gnome-online-accounts-3.45.2/lib/goa-1.0/web-extensions/libgoawebextension.so: binary file matches
grep: /gnu/store/dkqcdhcg8536h4ahwpkc3hv0xrrc8haj-gnome-online-accounts-3.45.2/etc/ld.so.cache: binary file matches
$ ldd /gnu/store/dkqcdhcg8536h4ahwpkc3hv0xrrc8haj-gnome-online-accounts-3.45.2/lib/libgoa-backend-1.0.so.1.0.0 |grep webkit
libjavascriptcoregtk-4.1.so.0 => /gnu/store/6zpcpnywcimmia84jkixnwfcl4chhz6k-webkitgtk-2.36.7/lib/libjavascriptcoregtk-4.1.so.0 (0x00007f228ec00000)
libwebkit2gtk-4.1.so.0 => /gnu/store/6zpcpnywcimmia84jkixnwfcl4chhz6k-webkitgtk-2.36.7/lib/libwebkit2gtk-4.1.so.0 (0x00007f228a800000)
$ ldd /gnu/store/dkqcdhcg8536h4ahwpkc3hv0xrrc8haj-gnome-online-accounts-3.45.2/lib/goa-1.0/web-extensions/libgoawebextension.so |grep webkit
libwebkit2gtk-4.1.so.0 => /gnu/store/6zpcpnywcimmia84jkixnwfcl4chhz6k-webkitgtk-2.36.7/lib/libwebkit2gtk-4.1.so.0 (0x00007f3a0a200000)
libjavascriptcoregtk-4.1.so.0 => /gnu/store/6zpcpnywcimmia84jkixnwfcl4chhz6k-webkitgtk-2.36.7/lib/libjavascriptcoregtk-4.1.so.0 (0x00007f3a07c00000)

One way to address it might be to build libgoa-backend and
libgoawebextension separately from the main libgoa.so, or to have them
in a separate output.

However, I’m not sure how libgoa-backend is supposed to be used. It has
a .pc file, which suggests applications that need it explicitly link
against it (as opposed to having it dlopen’d), but I couldn’t find an
example.

Thoughts?

Ludo’.
K
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 58374@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 58374
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch