[PATCH] gnu: Add chrony.

DoneSubmitted by Tobias Geerinckx-Rice.
Details
One participant
  • Tobias Geerinckx-Rice
Owner
unassigned
Severity
normal
T
T
Tobias Geerinckx-Rice wrote on 31 Mar 2020 14:31
(address . guix-patches@gnu.org)
20200331123131.21520-1-me@tobias.gr
* gnu/packages/ntp.scm (chrony): New public variable.
---
gnu/packages/ntp.scm | 66 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)

Toggle diff (87 lines)
diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm
index dfcdb58de4..554317e2d4 100644
--- a/gnu/packages/ntp.scm
+++ b/gnu/packages/ntp.scm
@@ -28,7 +28,9 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages readline)
   #:use-module (gnu packages tls)
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
@@ -38,6 +40,70 @@
   #:use-module (guix utils)
   #:use-module (srfi srfi-1))
 
+(define-public chrony
+  (package
+    (name "chrony")
+    (version "3.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://download.tuxfamily.org/chrony/"
+                           "chrony-" version ".tar.gz"))
+       (sha256
+        (base32 "1d9r2dhslll4kzdmxrj0qfgwq1b30d4l3s5cwr8yr93029dpj0jf"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:modules ((srfi srfi-26)
+                  (guix build utils)
+                  (guix build gnu-build-system))
+       #:configure-flags
+       (list "--enable-scfilter"
+             "--with-sendmail=sendmail"
+             "--with-user=chrony")
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out")))
+               (invoke "make" "-j" (number->string (parallel-job-count))
+                       (string-append "CHRONYVARDIR=ignored")
+                       "install"))))
+         (add-after 'install 'install-more-documentation
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc (string-append out "/share/doc/" ,name "-" ,version)))
+               (for-each (cut install-file <> doc)
+                         (list "README" "FAQ"))
+               (copy-recursively "examples" (string-append doc "/examples"))
+               #t))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libcap" ,libcap)
+       ("libseccomp" ,libseccomp)
+       ("nettle" ,nettle)
+       ("readline" ,readline)))
+    (home-page "https://chrony.tuxfamily.org/")
+    (synopsis "System clock synchronisation service that speaks NTP")
+    (description
+     "Chrony keeps your system time accurate.  It synchronises your computer's
+clock with @acronym{NTP, Network Time Protocol} servers, reference clocks such
+as GPS receivers, or even manual input of the correct time from a wristwatch.
+
+Chrony will determine the rate at which the computer gains or loses time, and
+compensate for it.  It can also operate as an NTPv4 (RFC 5905) server and peer
+to provide a time service to other computers on the network.
+
+It's designed to perform well even under adverse conditions: congested
+networks, unreliable clocks drifting with changes in temperature, and devices
+or virtual machines that are frequently turned off and connect to the Internet
+for only a few minutes at a time.
+
+Typical accuracy when synchronised over the Internet is several milliseconds.
+On a local network this can reach tens of microseconds.  With hardware
+time-stamping or reference clock, sub-microsecond accuracy is possible.")
+    (license l:gpl2)))
+
 (define-public ntp
   (package
    (name "ntp")
-- 
2.25.2
T
T
Tobias Geerinckx-Rice wrote on 8 Apr 2020 15:34
(address . 40347-done@debbugs.gnu.org)
877dyqp0dy.fsf@nckx
Tobias Geerinckx-Rice via Guix-patches via 写道:
Toggle quote (2 lines)
> * gnu/packages/ntp.scm (chrony): New public variable.

Pushed as 9f12e06bb3c84c148a28491a480c7b8f55a3c131.

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEfo+u0AlEeO9y5k0W2Imw8BjFSTwFAl6N0skACgkQ2Imw8BjF
STxYfxAAoNaFEPdpZ9x3FYWNby7YBgvuXx1hPjCLjQg4TD1tROVzXKIOw5yP0lHY
USKmWOxFKtbTKTgAR+sLijTpcbI/FtLBfG3hosbfk/mzb93PJAba8EO+abVM+2Mc
uXEVfPDjW4FJHlj65u70bQEX/UOj8JecCpZAhz8fG22hbMziWkwrUJRm8I3q22oL
l0eQyyCnhGmtn03n+rIN3kFb0HpF+zozWHL4mT1WXpoWviQ1G3oUiOjctQtUaQVM
iZmbrnWObTioUl5UN/A+rJceWBOrrWZTvbdtilYdQDw+qKiBZQNhUiQhT3UFGhf6
QVuwUmNOWB9ANBxCtxvTk/yadx4xb8SyeeEWVpCgWh0p8z45RFO/nuQUITcLhxpj
iifkLTtgmICBADIzJhtxpw8HtzmTFWS7Thb5dBazF+EOqMrJhbFJK0XawhQX4uSZ
tTlLdeD0z1ALwgWdsev4qslZbFqt12ZC5zA/IjZ70xUO/xRvW4H5dllyLaCBy037
jkQgZcifICc3QY9O4VFa0+/XjMyYGUlvFOtmv/Zd1C0ehWPq/v/Dx8EnENahh34K
krns0bcrWKbKgw335So9/Cjgb2ZEijrSJeNoUovz5kFpKFCCdnBnxXSTpE6JqHNx
KcQHx8UVf4/zS7Difmytr1PAsfcS/J5LP/r4YOPIqq5Tt6YgE2g=
=Aa5X
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 40347@debbugs.gnu.org