Need help writing rolling timer script

i am trying to automate my lighting in my chicken coop i am using a DS1307 RTC from adafruit for timing at the moment i have it set to write pin 15 high (wich goes to a 120vac relay) at 07:00 and 18:00 and write it low at 8:00 and 19:00 this gives me a total of 12hrs of "daylight" in the coop

what i would like to do is set it on some sort of rolling time so that every time it competes a cycle it shifts the off time in the morning 2mins later and the "on" time 2 mins earlier to account for the change of actual daylight in the winter i just cant seem to get it right any help would be appreciated :~

Chicken coops seem popular today. Here's a link to a thread where someone needed similar functionality:,66426.0.html