mate-desktop / mate-settings-daemon

MATE settings daemon
https://mate-desktop.org
GNU General Public License v2.0
43 stars 47 forks source link

Please implement geoclue agent D-Bus API #229

Open bigon opened 6 years ago

bigon commented 6 years ago

Hello,

Currently MATE doesn't implement the geoclue agent D-Bus API (org.freedesktop.GeoClue2.Agent) that allows the user to confirm that he want his location to be used.

Shouldn't MATE implement this API? I'm not sure if that should be implemented in mate-panel or mate-settings-daemon

lukefromdc commented 6 years ago

I don't think we have any programs that use GPS location in any way. The only place I know of a location being set is that one or more locations can be entered manually for libmateweather to use via the clock applet or weather applet in the panel. That does not use GPS but rather selection from a list of mostly airport weather station locations.

alexarnaud commented 6 years ago

@bigon Does the API you've mentioned isn't usable despite of the desktop ? I don't understand the relationship to the desktop environment if it is already implemented as D-Bus API.

Best regards, Alex.

bigon commented 6 years ago

Since 2.4.9 geoclue requires the agent so the user can give his consent to share the location. If there is no agent available, no location is shared and the applications requesting it will get a permission denied, see NEWS file:

  • Refuse location access if no app-auth agent is registered. This fixes a security hole where an app requests location access before the agent gets to register itself and we end up giving out locaiton access even though user has disabled it.

geoclue provides a "demo" agent but it's not integrated in the DE at all, see: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=900936#20

raveit65 commented 6 years ago

fedora 28 have this

[root@satellite rave]# cat /etc/xdg/autostart/geoclue-demo-agent.desktop 
[Desktop Entry]
Name=Geoclue Demo agent
GenericName=Demo geoclue agent
Keywords=geolocation;
Exec=/usr/libexec/geoclue-2.0/demos/agent
Icon=mark-location-symbolic
NotShowIn=GNOME;
NoDisplay=true
Terminal=false
Type=Application
bigon commented 6 years ago

Indeed, this is the demo agent.

And AFAICS this is not really integrated in the DE as it doesn't store user decision, for example