1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-03 06:04:53 +00:00

Add a port of system clock synchronization client and server (chrony).

WWW: http://chrony.tuxfamily.org/

PR:	ports/174263
This commit is contained in:
Alexey Dokuchaev 2014-04-08 17:06:58 +00:00
parent 5737569545
commit c7d659d4f8
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=350635
9 changed files with 172 additions and 0 deletions

View File

@ -67,6 +67,7 @@
SUBDIR += cagibi
SUBDIR += callweaver
SUBDIR += ccxstream
SUBDIR += chrony
SUBDIR += citrix_ica
SUBDIR += clamz
SUBDIR += click

41
net/chrony/Makefile Normal file
View File

@ -0,0 +1,41 @@
# Created by: Masaki TAGAWA <masaki@club.kyutech.ac.jp>
# $FreeBSD$
PORTNAME= chrony
PORTVERSION= 1.29.1
CATEGORIES= net
MASTER_SITES= http://download.tuxfamily.org/chrony/
MAINTAINER= masaki@club.kyutech.ac.jp
COMMENT= System clock synchronization client and server
LICENSE= GPLv2
# XXX: should theoretically work on others, but at least on PowerPC it dies
# with ``Could not open any NTP socket'' message :(
ONLY_FOR_ARCHS= i386 amd64
USES= gmake
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc --mandir=${MANPREFIX}/man \
--datarootdir=${DATADIR} --docdir=${DOCSDIR}
USE_RC_SUBR= chronyd
PORTDOCS= README chrony.txt
# XXX: there are also other potentially useful options worth looking into:
# --without-nss Don't use NSS even if it is available
# --without-tomcrypt Don't use libtomcrypt even if it is available
# --disable-pps Disable PPS API support
OPTIONS_DEFINE= IPV6
OPTIONS_DEFAULT= IPV6
IPV6_CATEGORIES= ipv6
IPV6_CONFIGURE_OFF= --disable-ipv6
post-install:
.for f in chrony.conf.example chrony.conf.example2 chrony.keys.example
${INSTALL_DATA} ${WRKSRC}/examples/${f} ${STAGEDIR}${PREFIX}/etc
.endfor
.include <bsd.port.mk>

2
net/chrony/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (chrony-1.29.1.tar.gz) = 658c9bb4d8c8d8ec7d0908429aa266e5f8413ba86bd4acbfd2f9669f6065af27
SIZE (chrony-1.29.1.tar.gz) = 392889

View File

@ -0,0 +1,19 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: chronyd
# REQUIRE: DAEMON
#
. /etc/rc.subr
name=chronyd
rcvar=chronyd_enable
command=%%PREFIX%%/sbin/${name}
load_rc_config ${name}
: ${chronyd_enable="NO"}
run_rc_command "$1"

View File

@ -0,0 +1,45 @@
--- examples/chrony.conf.example.orig 2014-01-31 20:12:59 +0800
+++ examples/chrony.conf.example
@@ -42,6 +42,13 @@
# Failing that, there are a lot of public NTP servers. There is a list
# you can access at http://support.ntp.org/bin/view/Servers/WebHome or
# you can use servers from the pool.ntp.org project.
+#
+# The option `iburst' is used for faster initial synchronization.
+
+server 0.freebsd.pool.ntp.org iburst
+server 1.freebsd.pool.ntp.org iburst
+server 2.freebsd.pool.ntp.org iburst
+#server 3.freebsd.pool.ntp.org iburst
! server 0.pool.ntp.org iburst
! server 1.pool.ntp.org iburst
@@ -98,7 +105,7 @@ driftfile /var/lib/chrony/drift
# exchanges between cooperating machines.) Again, this option is
# assumed by default.
-keyfile /etc/chrony.keys
+keyfile /usr/local/etc/chrony.keys
# Tell chronyd which numbered key in the file is used as the password
# for chronyc. (You can pick any integer up to 2**32-1. '1' is just a
@@ -129,7 +136,7 @@ commandkey 1
# still running and bail out. If you want to change the path to the PID
# file, uncomment this line and edit it. The default path is shown.
-! pidfile /var/run/chronyd.pid
+pidfile /var/run/chronyd.pid
#######################################################################
### INITIAL CLOCK CORRECTION
@@ -152,8 +159,8 @@ commandkey 1
# produce some graphs of your system's timekeeping performance, or you
# need help in debugging a problem.
-! logdir /var/log/chrony
-! log measurements statistics tracking
+logdir /var/log/chrony
+log measurements statistics tracking
# If you have real time clock support enabled (see below), you might want
# this line instead:

View File

@ -0,0 +1,33 @@
--- examples/chrony.conf.example2.orig 2014-01-31 20:12:59 +0800
+++ examples/chrony.conf.example2
@@ -1,9 +1,17 @@
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
-server 0.pool.ntp.org iburst
-server 1.pool.ntp.org iburst
-server 2.pool.ntp.org iburst
-server 3.pool.ntp.org iburst
+#
+# The option `iburst' is used for faster initial synchronization.
+#
+server 0.freebsd.pool.ntp.org iburst
+server 1.freebsd.pool.ntp.org iburst
+server 2.freebsd.pool.ntp.org iburst
+#server 3.freebsd.pool.ntp.org iburst
+
+#server 0.pool.ntp.org iburst
+#server 1.pool.ntp.org iburst
+#server 2.pool.ntp.org iburst
+#server 3.pool.ntp.org iburst
# Ignore stratum in source selection.
stratumweight 0
@@ -28,7 +36,7 @@ bindcmdaddress ::1
# Serve time even if not synchronized to any NTP server.
#local stratum 10
-keyfile /etc/chrony.keys
+keyfile /usr/local/etc/chrony.keys
# Specify the key used as password for chronyc.
commandkey 1

16
net/chrony/pkg-descr Normal file
View File

@ -0,0 +1,16 @@
chrony is a pair of programs which are used to maintain the accuracy of the
system clock on a computer; the two programs are called chronyd and chronyc.
chronyd is a daemon which runs in background on the system. It obtains
measurements via the network of the system clock's offset relative to time
servers on other systems and adjusts the system time accordingly. For
isolated systems, the user can periodically enter the correct time by hand
(using chronyc). In either case, chronyd determines the rate at which the
computer gains or loses time, and compensates for this. chronyd implements
the NTP protocol and can act as either a client or a server.
chronyc provides a user interface to chronyd for monitoring its performance
and configuring various settings. It can do so while running on the same
computer as the chronyd instance it is controlling or a different computer.
WWW: http://chrony.tuxfamily.org/

5
net/chrony/pkg-message Normal file
View File

@ -0,0 +1,5 @@
Unfortunately, this software has shameful history of several vulnerabilities
previously discovered. FreeBSD Project cannot guarantee that this spree had
come to an end. It is further complicated, as chronyd(8) requires superuser
permissions to operate; please type ``make deinstall'' to deinstall the port
if tight security is a concern.

10
net/chrony/pkg-plist Normal file
View File

@ -0,0 +1,10 @@
bin/chronyc
etc/chrony.conf.example
etc/chrony.conf.example2
etc/chrony.keys.example
man/man1/chrony.1.gz
man/man1/chronyc.1.gz
man/man5/chrony.conf.5.gz
man/man8/chronyd.8.gz
@mode 4755
sbin/chronyd