From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: Re: [PATCH 1/1] services: ntpd: Make large clock adjustments if necessary. Date: Wed, 19 Oct 2016 17:39:06 -0400 Message-ID: <20161019213906.GA29612@jasmine> References: <20161013050650.GA25727@jocasta.intra> <20161013141246.GA7431@jasmine> <87h9883vz7.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46688) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bwyZt-0000F9-RD for guix-devel@gnu.org; Wed, 19 Oct 2016 17:39:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bwyZo-0005fq-Tv for guix-devel@gnu.org; Wed, 19 Oct 2016 17:39:13 -0400 Content-Disposition: inline In-Reply-To: <87h9883vz7.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ludovic =?iso-8859-1?Q?Court=E8s?= Cc: guix-devel@gnu.org On Wed, Oct 19, 2016 at 10:49:32PM +0200, Ludovic Courtès wrote: > diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm > index 7495179..ce281c5 100644 > --- a/gnu/services/networking.scm > +++ b/gnu/services/networking.scm > @@ -265,11 +265,13 @@ Protocol (DHCP) client, on all the non-loopback network interfaces." > ntp-configuration? > (ntp ntp-configuration-ntp > (default ntp)) > - (servers ntp-configuration-servers)) > + (servers ntp-configuration-servers) > + (allow-large-adjustment? ntp-allow-large-adjustment? > + (default #f))) > > (define ntp-shepherd-service > (match-lambda > - (($ ntp servers) > + (($ ntp servers allow-large-adjustment?) > (let () > ;; TODO: Add authentication support. > (define config > @@ -296,7 +298,10 @@ restrict -6 ::1\n")) > (requirement '(user-processes networking)) > (start #~(make-forkexec-constructor > (list (string-append #$ntp "/bin/ntpd") "-n" > - "-c" #$ntpd.conf "-u" "ntpd"))) > + "-c" #$ntpd.conf "-u" "ntpd" > + #$@(if allow-large-adjustment? > + '("-g") > + '())))) > (stop #~(make-kill-destructor)))))))) > > (define %ntp-accounts > @@ -331,10 +336,13 @@ restrict -6 ::1\n")) > ntp-service-activation))))) > > (define* (ntp-service #:key (ntp ntp) > - (servers %ntp-servers)) > + (servers %ntp-servers) > + allow-large-adjustment?) > "Return a service that runs the daemon from @var{ntp}, the > @uref{http://www.ntp.org, Network Time Protocol package}. The daemon will > -keep the system clock synchronized with that of @var{servers}." > +keep the system clock synchronized with that of @var{servers}. > +@var{allow-large-adjustment?} determines whether @command{ntpd} is allowed to > +make an initial adjustment of more than 1,000 seconds." > (service ntp-service-type > (ntp-configuration (ntp ntp) (servers servers)))) > > > If that’s fine with you, I’ll commit it with a doc update. It looks good to me! Once we can run GuixSD on armhf or aarch64, I bet we will have lots of users with hardware lacking a battery-backed real time clock, and they will appreciate this option.