Subject: Re: Time zones?
To: None <current-users@NetBSD.ORG>
From: Danny Thomas <D.Thomas@vthrc.uq.edu.au>
List: current-users
Date: 01/13/1995 21:03:56
Ted Lemon <mellon@vix.com> wrote:
>I'm finally running on NetBSD binaries, and now I'm having an annoying
>problem in that it doesn't seem to know what time zone it's in, even
>though it's compiled into the kernel.   Is there something obvious
>that I need to configure and am just not finding in the man pages?

and in response
"Mark P. Gooderum" <mark@nirvana.good.com>
>> I don't think the kernel's timezone is used for anything but
>> compatability with _really_ old binaries.
>
>The kernel timezone is used to give the difference between the real
>time clock and GMT.  This is used for things like PC's where the
>RTC may be wall clock time.
certainly it is useful for a machine running multiple OS's to have the RTC
at wall-time, eg for DOS. Maybe I misunderstand what the kernel timezone is
used for, but I figured there were advantages having the kernel at an
'absolute' time.

1) means that on moving a disk to another time-zone you only have
   to reconfigure the kernel-offset from the new RTC and old/new
   timestamps are correct. Of course you could do something similar
   even if your kernel doesn't use GMT, but then you have to know
   what that non-standard offset was
2) similarly if you've got users logging in from afar, they can
   simply use the obvious login TZ.

and mycroft addded:
>You should compile the kernel to use GMT, and then make a symlink from
>/etc/localtime to the appropriate file in /usr/share/zoneinfo.

I assume the build process constructs sub-directories for zone files having
more than one zone, eg Australia, Canada, Mexico, etc. Maybe the build goes
the other way around and constructs a single zone file for all zones in
sub-directories. The point being that there's consistency, and zonefiles
having more than one zone, have all-and-only those zones in a corresponding
sub-directory.

in my case I
1) confirmed RTC was wall-time
2) set the 'timezone' config item to be the negative of what
   we normally consider our GMT offset
3) built kernel, set a null value for TZ and verified the reported time
   was GMT
4) either set localtime as a symlink
   and/or "setenv TZ Australia/Queensland"


cheers,
Danny Thomas  (D.Thomas@vthrc.uq.edu.au)