FS#48322 - [geoclue2] Incorrect timezone when set to automatic

Attached to Project: Arch Linux
Opened by Michael Shihjay Chen (shihjay2) - Wednesday, 24 February 2016, 13:58 GMT
Last edited by Jan de Groot (JGC) - Monday, 27 June 2016, 13:15 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan Alexander Steffens (heftig)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No



Since the systemd upgrade to 229-3 and when Gnome Date & Time is set to Automatic Time Zone, I am getting an incorrect time zone set on my system (for instance, I'm in America/Los_Angeles and it's being set to America/Chicago instead)

Additional info:
systemd 229-3
gnome-shell 3.18.3-3
geoclue2 2.4.1-1

Logs showing just prior to the time zone change:

[system] Rejected send message, 9 matched rules; type="method_return", sender=":1.93" (uid=0 pid=1276 comm="/usr/lib/geoclue2/geoclue -t 5 ") interface="(unset)" member="(unset)" error name="(unset)" requested_reply="0" destination=":1.70" (uid=1000 pid=900 comm="/usr/lib/gnome-settings-daemon/gnome-settings-daem"
This task depends upon

Closed by  Jan de Groot (JGC)
Monday, 27 June 2016, 13:15 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Geoclue2 uses mozilla location services to detect location. If wifi is your only location source, mozilla services aren't very accurate. This is not something we can or want to fix. You can use Google instead, but as distribution, enabling Google services by default needs a license which can be very expensive.
Comment by Dave Reisner (falconindy) - Wednesday, 24 February 2016, 14:12 GMT
To systemd 229-3 from what version? I don't think this has anything to do with systemd since timesyncd/timedated don't have any sort of geolocation...
Comment by Doug Newgard (Scimmia) - Wednesday, 24 February 2016, 14:40 GMT
I assume it's dbus putting that in the log?
Comment by Michael Shihjay Chen (shihjay2) - Wednesday, 24 February 2016, 15:18 GMT
From systemd 229-2 to systemd 229-3; it happened right after I upgraded it last night. After trying to figure out why it kept reverting to the wrong time zone, I stumbled upon this link https://www.reddit.com/r/archlinux/comments/32jwga/difference_between_gnomeshell_time_and_date/ which seems to indicate that systemd-timesyncd activates geoclue Is there another method that systemd uses to figure out the location of the machine?
Comment by Dave Reisner (falconindy) - Wednesday, 24 February 2016, 18:50 GMT
229-2 to 229-3 contained bugfixes for things entirely unrelated to this. timesyncd has no tie-in to geoclue -- your reddit post is spreading misinformation.
Comment by Jan de Groot (JGC) - Thursday, 25 February 2016, 13:22 GMT
When you set timezone to auto, gnome-settings-daemon asks geoclue2 for your location and uses that information to decide your timezone. Systemd-timesyncd has nothing to do with this.
Comment by Michael Shihjay Chen (shihjay2) - Thursday, 25 February 2016, 14:27 GMT
I tested geoclue by getting the latitude and longitudes through redshift. It appears that it's locating me in Kansas instead of Oregon. I changed the geoclue.conf file to use the Google API instead of the Mozilla API and it now locates me correctly. I'm not sure what has changed as it had worked fine before (no router, ISP changes) other than the updates that I mentioned which is strange...