Bug 1222474

Summary: libgoa shouldn't recommend gnome-online-accounts
Product: [openSUSE] openSUSE Distribution Reporter: Duck <bsduck>
Component: GNOMEAssignee: E-mail List <gnome-bugs>
Status: CONFIRMED --- QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: dimstar
Version: Leap 15.5   
Target Milestone: ---   
Hardware: All   
OS: openSUSE Leap 15.5   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Duck 2024-04-08 14:01:55 UTC
Hello,

I recently noticed that when installing a lean Xfce desktop through patterns-xfce-xfce_basis, you end up with gnome-online-accounts installed and its services (goa-daemon and goa-identity-service) running, wasting ~50 MiB RAM for nothing (Xfce doesn't use gnome-online-accounts).

Therefore, I investigated a bit to find why this package was installed. It turns out that libgoa, which is pulled as a dependency by gvfs-backends, recommends gnome-online-accounts. This doesn't make sense to me: gnome-online-accounts will already be installed in a context where it is relevant (GNOME desktop and derivatives) and you don't want it to be installed and running automatically in other contexts just because a program installed the library for compatibility with it in case it would be there.

Accordingly, I suggest to drop the recommendation. I can't see a valid reason for it to exist, while it results in a waste of resources in contexts where you expect something lean and minimal (Xfce and other lightweight desktop environments using gvfs such as LXQt).
Comment 1 Dominique Leuenberger 2024-04-08 14:16:23 UTC
the dep from libgoa to gnome-online-accounts is correct - and the recommends defitniively should stay in place.

As you already found yourself, your assessment that 'gnome-online-accounts' is not used must be wrong - otherwise you'd not have a dep on libgoa in your system.

The correct fix would rather be to backport this fix from Factory:

- Split out a new sub-package gvfs-backend-goa. This allows
  end-users to remove last remains of soup2 and gdata dependencies.
  Add a Supplements on gvfs and gnome-online-accounts to pull it in
  for most of our users.


This had the side-effect of moving goa-depending gvfs monitors to an own package.

(in Factory, there seems to be an error though:
  gvfsd-onedrive should move to the -goa subpackage
)
Comment 2 Duck 2024-04-09 00:51:54 UTC
Thanks for the reply. This sounds good indeed, it would be great if these changes could be backported to Leap.

I have two packages requiring libgoa on my system. The first one is gvfs-backends, the second one is libgdata, itself a dependency of gvfs-backends as well. If these two dependencies are gone from gvfs-backends, my problem is solved (assuming the new gvfs-backend-goa isn't recommended by gvfs) and a basic install of gvfs won't pull gnome-online-accounts by default.

I actually have another package depending on libgdata: shotwell. It would also be nice if just having a photo manager installed wouldn't result in gnome-online-accounts constantly running, but at least this one isn't part of patterns-xfce-xfce_basis. I may ask the Xfce maintainers what they think about this since they include shotwell as part of the bigger patterns-xfce-xfce.