Page 1 of 1

Slacko not setting time right at summer's end

Posted: Sat 17 Nov 2012, 15:40
by NETTKNUT
I am running Slacko 5.3 on an old 660Mhz machine. When I logged on today the time shown was one hour ahead of GMT. I have set up all my preferences to run on European time, changing to +1 during summer time. Europe reverted to +0 at the end of October but Slacko shows I am still on (American) DST (the abbreviation and its meaning are different in Europe - it actually means 'double summer time'!). This point has been brought up several times before but I am bringing it up again as no one is doing anything about it. If I could fix the software myself I would but I can't. Now, will someone out there please, please fix this. Surely that's not too much to ask? Thank you very much.

Posted: Sat 17 Nov 2012, 15:46
by pemasu
Quicksetup and: Europe/Helsinki and summer/wintertime change happens for me. Dont use GMT !

Posted: Sat 17 Nov 2012, 16:38
by Ray MK
Quicksetup and: Europe/London and summer/wintertime change happens for me. Dont use GMT !

Posted: Sat 17 Nov 2012, 16:47
by Sylvander
I too use Europe/London, and the PC/Puppy summer/winter time changes automatically. :D

Posted: Sat 17 Nov 2012, 18:22
by don570
The recognition of day-light saving time is built into the linux kernel.

The user doesn't have to be connected to the internet :lol:

Apparently the kernel checks what city the user is living in.

You give that info when you fill in Shinobar's country wizard.

_____________________________________________________

gmt

Posted: Sat 17 Nov 2012, 18:29
by NETTKNUT
Thanks for all your replies. Currently I am set to UTC+0 and 'switch to summer time is NO' in order to get the correct GMT in the UK. This should not be necessary except that 'summer time' refers implicitly only to USA and they have not yet reverted back to their winter time. Someone some time ago pointed out that 'preferences' does not recognise GMT. Earlier this year when I spent some time setting the time up I seem to recall a button marked 'dst' (US daylight saving time) but I could not find it today. It is perplexing that the time was incorrectly displayed on my machine but not on others. There must be another way of setting the time in Puppy and the two are in conflict. Someone who is familiar with time setting for USA, Europe and GMT in Puppy/SeaMonkey needs to have a look at this.

Posted: Tue 20 Nov 2012, 15:34
by npierce
NETTKNUT,

Please enter this single-line list of commands into a terminal window and post the output:

Code: Select all

cat /etc/clock ; readlink /etc/localtime ; cat /proc/driver/rtc | grep rtc_time ; date
Also, please tell us what your actual local time was (approximately) when you did this.

Posted: Tue 20 Nov 2012, 17:51
by 8-bit
Although I just stumbled onto this discussion, I want to add my two cents worth.
First, the date of change to daylight savings time and standard time in the US had been changed and I wanted to know if that fact was updated in linux/Puppy.

Second, the output from npierce's try this showed

Code: Select all

# cat /etc/clock ; readlink /etc/localtime ; cat /proc/driver/rtc | grep rtc_time ; date
#Set this to either 'utc' or 'localtime' based on which one your computer's
#hardware clock uses.
HWCLOCKTIME=localtime
#HWCLOCKTIME=utc

/usr/share/zoneinfo/US/Pacific
rtc_time	: 09:41:58
Tue Nov 20 09:41:58 PST 2012
# 
I just thought I would show the results with Slacko 5.3.3.

Posted: Tue 20 Nov 2012, 20:37
by npierce
8-bit wrote:First, the date of change to daylight savings time and standard time in the US had been changed and I wanted to know if that fact was updated in linux/Puppy.
You may look at the current zoneinfo data on your Puppy with the zdump command. For instance, for your timezone:

Code: Select all

# zdump -v US/Pacific | grep 2012
US/Pacific  Sun Mar 11 09:59:59 2012 UTC = Sun Mar 11 01:59:59 2012 PST isdst=0 gmtoff=-28800
US/Pacific  Sun Mar 11 10:00:00 2012 UTC = Sun Mar 11 03:00:00 2012 PDT isdst=1 gmtoff=-25200
US/Pacific  Sun Nov  4 08:59:59 2012 UTC = Sun Nov  4 01:59:59 2012 PDT isdst=1 gmtoff=-25200
US/Pacific  Sun Nov  4 09:00:00 2012 UTC = Sun Nov  4 01:00:00 2012 PST isdst=0 gmtoff=-28800
This shows the times in 2012 one second before the time changes and the times immediately after the changes. If this output is correct, then the zoneinfo data has been updated.

For more info see the zdump man page.

Slacko not saving time correctly at summer's end.

Posted: Mon 26 Nov 2012, 20:55
by NETTKNUT
In reply to npierce these are the results of the tests suggested.

cat etc/clock
HWCLOCKTIME=localtime

readlink /etc/localtime
/usr/share/zoneinfo/Europe/London


cat /proc/driver/rtc | grep rtc_time
rtc_time : 20:35:09


date
Mon Nov 26 20:36:12 GMT 2012

This is the result of zdump

zdump -v Europe/London | grep 2012
Europe/London Sun Mar 25 00:59:59 2012 UTC = Sun Mar 25 00:59:59 2012 GMT isdst=0 gmtoff=0
Europe/London Sun Mar 25 01:00:00 2012 UTC = Sun Mar 25 02:00:00 2012 BST isdst=1 gmtoff=3600
Europe/London Sun Oct 28 00:59:59 2012 UTC = Sun Oct 28 01:59:59 2012 BST isdst=1 gmtoff=3600
Europe/London Sun Oct 28 01:00:00 2012 UTC = Sun Oct 28 01:00:00 2012 GMT isdst=0 gmtoff=0


These show that my machine is set correctly to Europe/London ie GMT.
So it does not explain the discrepancy I reported initially.

On a side issue, I could not get the complete string of commands to run all at once; I had to enter them separately as above. Nice to learn some new very useful commands.

Thanks for all the comments and help.

Posted: Tue 27 Nov 2012, 17:05
by npierce
NETTKNUT wrote:These show that my machine is set correctly to Europe/London ie GMT.
So it does not explain the discrepancy I reported initially.
It's good to know that your Puppy is back on the correct time.

Here's one possible explanation.

Your hardware clock ("rtc") is keeping local time. You probably have it set this way because you sometimes boot another operating system (such as Windows) that expects the hardware clock to give local time.

When Summer Time begins or ends, Linux will immediately adjust the clock displayed on your desktop and any other clocks based upon the software clock, but does not adjust the hardware clock. (The software clock is the clock that is used for everything except, obviously, setting itself at boot time, which is what the hardware clock is for.) So if you leave the PC powered-on during the night that the time shift occurs, it will display the new correct time when you awake the next day. It will continue to display the correct time until you shut it down or reboot.

If you or your other O.S. does not adjust the hardware clock before you next boot Puppy, when you eventually boot your Puppy and it sets the software clock based upon what it reads from the hardware clock, the time will be incorrect because the hardware clock is still incorrect.

When you next boot your other O.S., it checks to see when it was last run, sees that it hasn't been run since the time shift, and so it adjusts the hardware clock.

Then, when you next boot your Puppy, the hardware clock will be correct, and so the software clock will be set correctly.

So why doesn't Puppy adjust the hardware clock?

Have you ever risen the morning after a time shift, adjusted all of your various wall, floor, and shelf clocks, and sat down to a good breakfast, happy in the knowledge that your prompt actions have brought your household up to date again -- happy, that is, until you arrive at church an hour late and realize that your spouse was even more prompt that you, and reset all of the clocks before going to bed? That's why Puppy doesn't adjust the hardware clock. If it did, your other O.S. would adjust it a second time the next time it booted. (The same problem would likely happen if you booted two different installations of Windows -- one would have no way of knowing that the other had already reset the clock.)

Remember, keeping the hardware clock on local time is just for the convenience of the other operating system. A pure Linux PC has no need for this twice-yearly dance. Like other Unix-like systems, it can keep the hardware clock set to UTC year-round. (Getting the local time to display on your desktop and the timestamps for your files is, of course, a simple matter of mathematics for the PC -- I hear computers are good at that.) So if you ever retire your other O.S., you can set your hardware clock to UTC, tell all your Puppies that you did that, and not have to deal with that again.

Until you retire your other O.S., the best way to keep both it and Linux happy is probably to boot your other O.S. the morning after a time shift. That way the hardware clock gets reset, and your other O.S. knows that it has been reset, so won't try to set it again.

Some people use their other O.S. so rarely, that they set the hardware clock to UTC anyway, and get used to the fact that the other O.S. will then display the time and timestamps in UTC. This, of course, will only work if you can tell the other O.S. that it is using UTC, so that it won't keep trying to adjust the hardware clock for Summer Time. (I've heard rumors that newer versions of one O.S., Windows, can be told to keep the hardware clock in UTC and display the time and timestamps in local time (just like Linux always could). I've also heard rumors that that option is a bit buggy.)

NETTKNUT wrote:On a side issue, I could not get the complete string of commands to run all at once; I had to enter them separately as above.
I don't know what would cause that. I just copied and pasted the line into a urxvt window and it ran OK on my Puppy (Slacko 5.3.3). I don't know what might be different on your system to prevent it from running. But, no matter; entering the commands individually achieved satisfactory results.

(solved)Slacko not setting right time at Summer's end

Posted: Wed 28 Nov 2012, 09:46
by NETTKNUT
Thanks npierce for your comprehensive explanation of factors affecting the correct setting of local and hardware clocks in Linux, Windows etc. Everything seems to be OK now. Many thanks.

Posted: Wed 28 Nov 2012, 12:34
by npierce
You're welcome.