Bug 320456

Summary: Selecting "set date & time automatically" sets time to GMT, ignoring time zone setting.
Product: [Applications] systemsettings Reporter: Steve Kline <sp1kline>
Component: kcm_clockAssignee: Paul Campbell <paul>
Status: RESOLVED FIXED    
Severity: normal CC: larry, marco_parillo, smaudet, youbestclick
Priority: NOR    
Version: 4.10.2   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description Steve Kline 2013-05-30 03:43:55 UTC
If I set date and time to local time, set time zone to PDT, and select "Apply", time and date are correctly set to local time.  If I select "set date and time automatically", date and time revert to GMT.  If attempted this on several KDE machines and they all act the same.

Reproducible: Always

Steps to Reproduce:
1. set local date & time, select apply.
2. set time zone, select apply. In my case; Time Zone says America/Los Angeles (PDT).
3. select "set date & time automatically", select apply; date and time reverts to GMT.


Expected Results:  
Software should not alter date and time settings.  Software should manage to keep system set to ntp time.
Comment 1 Steve Kline 2013-05-30 03:49:31 UTC
Hitting "apply" after selecting "set date and time automatically" causes the select button to reset (not selected).
Comment 2 Larry Garfield 2013-07-16 05:41:56 UTC
I can replicate this on 3 different computers, all running Kubuntu 13.04 with KDE 4.10.4.

The problem is that the applet generates an invalid symlink at /etc/localtime, pointing at a file that doesn't exist.  In my case:

# ls -l localtime 
lrwxrwxrwx 2 root root 18 Mar 14 10:46 localtime -> ../SystemV/EST5EDT

(There is no /SystemV directory on my system.)

Because the symlink is broken, the system falls back to UTC for localtime (which is a reasonable fallback).

A workaround is documented here:

http://askubuntu.com/questions/268073/kubuntu-and-kde-clock/268082

That workaround generates a real file at /etc/localtime, in a binary format.

The fix would seem to be to correct the logic that writes the symlink.
Comment 3 Sebastian Audet 2013-07-16 21:21:55 UTC
Using Kubuntu 12.04.2, I see this issue as well.
Comment 4 David Edmundson 2015-02-27 19:18:50 UTC
Git commit b6ae01ca8ea776c97cc57836401ca9696e2529e8 by David Edmundson.
Committed on 14/02/2015 at 13:50.
Pushed by davidedmundson into branch 'master'.

Add systemd support into the clock KCM as an optional dependency

The current time setting helper is incredibly broken.

It manually tries to run a range of NTP utilities, all of which are
deprecated.

We can just call timedated directly and cut out the middleman as it has
uses polkit anyway.

This is currently an optional dependency, and the original helper still
exists. It makes the code messy, but we have users to support for now.

Detection is done at runtime
Related: bug 196316, bug 311286, bug 317784, bug 319072, bug 337012, bug 339582, bug 241817, bug 178968, bug 317999, bug 337659
REVIEW: 122400

M  +5    -1    kcms/dateandtime/CMakeLists.txt
M  +22   -12   kcms/dateandtime/dateandtime.ui
M  +44   -30   kcms/dateandtime/dtime.cpp
M  +2    -1    kcms/dateandtime/dtime.h
M  +80   -7    kcms/dateandtime/main.cpp
M  +5    -1    kcms/dateandtime/main.h
A  +43   -0    kcms/dateandtime/timedated1.xml

http://commits.kde.org/plasma-desktop/b6ae01ca8ea776c97cc57836401ca9696e2529e8