Review Request 113260: Port KTimeZoned to Qt5/KF5

Martin Klapetek martin.klapetek at
Tue Oct 22 17:49:05 BST 2013

This is an automatically generated e-mail. To reply, visit:

(Updated Oct. 22, 2013, 4:49 p.m.)

Review request for KDE Runtime, KDE Frameworks, Plasma, and John Layt.


* Watch the whole timezone database dir
* Rename signal to timeZoneDatabaseUpdated()
  * Windows support is to be added later by John (I have no way to test)
* The Solaris support remains removed. Yes, Solaris still has its users, but they are using KDE4 and will keep so for some time. IF PlasmaWorkspaces2 will get Solaris support (so that it all builds and runs), I hereby commit to add proper Solaris support to ktimezoned at that time, otherwise there's no point in keeping old (now untested) code around to bitrot and add maintenance burden, especially since there is 0 effort to have other, more important components work on Solaris (including Frameworks).

Repository: kde-runtime


Originally I wanted to port KTimeZoned 1:1 to Qt5/KF5, but then I found out that all the stuff KTZD was doing was added in QTimeZone, that includes reading correct system files/env variables to obtain the timezone and returning the proper system zone (KTZD did all this by itself). It also doesn't need to parse the timezone files itself or watch for their changes as QTimeZone objects are not stored.

So now it's just a thin module watching /etc/timezone (used by Debian-based distros) and /etc/localtime (used by eg. Fedora or Suse, but also by Debian in conjunction with /etc/timezone) for changes and if it detects a change, it checks if the new timezone is really different and if it is, it sends out a DBus signal "timeZoneChange". I changed it from "configChanged" as I think "timeZoneChanged" makes way more sense.

I didn't touch the Windows part as I have no way to test, would be nice if someone could help with that.

EDIT: I removed the other two DBus signals which were not used and I'm unsure KTZD is the correct place for that now anyway. The only usage in KSystemTimeZone can be replaced by own KDirWatch instance.

Diffs (updated)

  CMakeLists.txt a5ec93d 
  ktimezoned/CMakeLists.txt bafc85e 
  ktimezoned/ktimezoned.h ff21807 
  ktimezoned/ktimezoned.cpp f380c09 
  ktimezoned/ktimezoned_win.h 26e21cc 
  ktimezoned/ktimezoned_win.cpp cadfe3a 
  ktimezoned/ktimezonedbase.h ca00aca 
  ktimezoned/org.kde.KTimeZoned.xml daaa0b7 



Tested by changing the timezone in different ways, change was detected and signalled out.


Martin Klapetek

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------
Kde-frameworks-devel mailing list
Kde-frameworks-devel at

More information about the kde-core-devel mailing list