Time zone data is currently stored in the registry inf files and must be updated by hand whenever a country changes its time zone or DST rules. With ReactOS's limited dev resources, we cannot keep up with such changes and the data is bound to be out of date most of the time.
Instead, we should acquire time zone data from the IANA Time Zone Database and use this data to update our .inf files. This would involve parsing their data format, mapping time zone names to their appropriate Windows names and writing the result out in a format suitable for import into the registry.
The data update could happen in two ways:
- A build tool fetches the database and generates the corresponding information in .inf format. This updated file would simply have to regularly be committed to master, as is done with caroots.inf
- A run-time tool periodically fetches this information from within ReactOS (e.g. as part of the w32time service, or as its own service) and writes it directly to the registry.
The first solution seems simpler and therefore more desirable for now. In the future it may make sense to use a combination of both methods (with the tool becoming a shared host tool/Win32 tool).