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

Bug 600064

Summary: gnome-base/gnome-settings-daemon-3.22.1 requires sys-apps/dbus[user-session] to automatically launch vino and rygel, etc
Product: Gentoo Linux Reporter: Mike Auty (RETIRED) <ikelos>
Component: Current packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: RESOLVED FIXED    
Severity: normal CC: arthur, maggu2810, tsmksubc
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: https://git.gnome.org/browse/gnome-settings-daemon/commit/?id=e0b7f4143bdd201c824499dd09159f5890a07c6a
See Also: https://bugs.gentoo.org/show_bug.cgi?id=576028
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 576028    
Bug Blocks: 595886    

Description Mike Auty (RETIRED) gentoo-dev 2016-11-17 02:23:34 UTC
I'm hoping that gnome-settings-daemon is right (the other option was gnome-control-center, but they're both assigned to the same place).

Basically, in gnome-3.22 they appear to have moved to launching subprograms (such as vino-server and rygel) using systemd through the systemd user session support.  If USE="-user-session", then vino-server silently fails to start (despite the control panel saying that it's active).  

With USE="user-session" vino (and presumably rygel and others) start automatically again.  Since this seems to be a core part of the way gnome's internal systems will now work, it should be in one of the central packages that needs it, and that seems to be either gnome-settings-daemon (which I think it was does the automatic launching) or gnome-control-center (which attempts to launch them when they're activate through their respective control panels).

Here's the reference that finally helped me figure it all out, let me know if you need any more information...

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838769#10
Comment 1 Pacho Ramos gentoo-dev 2016-11-22 19:37:06 UTC
I thought this was needing only systemd... not dbus+user-session, that was causing lots of problems some months ago :S... some of them were "workarounded" changing the default of KillUserProcesses setting in systemd... but we would need a >= 230 systemd version stabilized first

The change that added this is:
https://git.gnome.org/browse/gnome-settings-daemon/commit/?id=e0b7f4143bdd201c824499dd09159f5890a07c6a

if I don't misremember
Comment 2 Mike Auty (RETIRED) gentoo-dev 2016-11-22 20:56:45 UTC
I rebuilt dbus with USE="user-session" and it's been running reasonably well for the past 5 days.  What sort of difficulties did it cause?  I'm using systemd-232 and my KillUserProcesses is the default (which I think is no?)...
Comment 3 Mike Auty (RETIRED) gentoo-dev 2016-11-22 21:03:39 UTC
Sorry, just read the bug you linked (and the other bugs off that).  I have had lingering processes (although I run mpd under my user's account, so that may be why it never kills off all the remaining ones), but I haven't experienced a problem with it.  Perhaps we could get away with just a notice at the end of the vino installation?  It's pretty useless if it doesn't start though, it's not really designed to be launched separately...  5:S  Not sure what the best course of action is, but happy to go with whatever you suggest.  5:)
Comment 4 Pacho Ramos gentoo-dev 2016-11-25 19:15:52 UTC
With systemd-232 it will default to killing the processes (even screen, deluged :S... ), once that step is jumped (and It should be the case as soon as systemd-233 is released fixing some pending security issues) we can think on maybe trying to enable user-session dbus again :/
Comment 5 Randy Tupas 2017-05-21 18:15:21 UTC
Using systemd version 233.

Enabled "user-session" USE flag causing rebuild of dbus and bluez. Attempted to have vino-server start by remote login (vinegre), but no success.

Systemd does not start the vino-server automatically. Tried to enable, but cannot enable File or Screen Sharing under the Gnome Control Center applet, buttons slide back to off. Also can't select a network for sharing.
Comment 6 Mike Auty (RETIRED) gentoo-dev 2017-05-22 23:49:13 UTC
Randy, I've had no problem with USE="user-session" starting vino-server.  Just to rule out the obvious, could you reply indicating whether you restarted your system after rebuilding dbus/bluez with USE="user-session" please?  Gnome won't automatically pick up and start using the dbus user-session support until dbus (and therefore also gnome) have been restarted since the rebuild...

@gnome, any change of a quick status update on whether we required user-session deps in vino/rygel and/or how far along we are in getting it enabled when necessary?
Comment 7 Randy Tupas 2017-05-23 02:34:58 UTC
(In reply to Mike Auty from comment #6)
> Randy, I've had no problem with USE="user-session" starting vino-server. 
> Just to rule out the obvious, could you reply indicating whether you
> restarted your system after rebuilding dbus/bluez with USE="user-session"
> please?  Gnome won't automatically pick up and start using the dbus
> user-session support until dbus (and therefore also gnome) have been
> restarted since the rebuild...
> 
> @gnome, any change of a quick status update on whether we required
> user-session deps in vino/rygel and/or how far along we are in getting it
> enabled when necessary?

Mike,

Yes, I restarted the system.

If I start "gnome-control-center sharing" from the command line and attempt to toggle the "Screen Sharing" to ON, I receive the following error:
sharing-cc-panel-WARNING**: Failed to enable service vino-server: GDBus.Error:org.freedesktop.DBUS.Error.InvalidArgs: Sharing cannot be enabled on this network, status is '0'

Digging around on the internet seems to imply there is an issue with NetworkManager. There are "No networks selected for sharing"
Comment 8 Randy Tupas 2017-05-23 05:14:33 UTC
After a lot of digging and trial-and-error, I discovered that the "networkmanager" USE flag must be set for gnome-settings-daemon package. 
Once set and gnome-settings-daemon rebuilt and restarted, I can now select a network for sharing and enable screen sharing. I can now log in remotely via vinegre and vino-server will start automatically.

gnome-shell had networkmanager set by default, forcing gnome-control-center to be built with networkmanager set (I did it via package.use).
Comment 9 Mart Raudsepp gentoo-dev 2017-12-22 00:11:15 UTC
Note that gnome-session-3.24.2 has the following NEWS, which might affect this user-session ordeal (mostly regarding dbus[user-session] usage in general, not anything vino/rygel):

	- Make sure non-graphical services get
	  killed at log out when there's
	  systemd --user.
Comment 10 Mart Raudsepp gentoo-dev 2020-02-20 08:27:29 UTC
Some days ago I shifted things around, moving the user-session dep to gnome-settings-daemon as it really belongs (removing it from vino in the process), after adding package.use entries for enabling user-session by default on dbus (and bluez out of necessity) in the gnome/systemd profiles.
Ignoring the fact that many don't need screen sharing to work out of the box, but this is just defaults, plus gnome-session-3.24 on systemd profiles will hard-require dbus[user-session] (or at least systemd user services) to launch anything at all.
This should conclude this bug.
Comment 11 Mart Raudsepp gentoo-dev 2020-02-20 08:28:10 UTC
(In reply to Mart Raudsepp from comment #10)
> plus gnome-session-3.24 on systemd profiles will hard-require

gnome-session-3.34*