summaryrefslogtreecommitdiff
path: root/extra/ntp
diff options
context:
space:
mode:
authorParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
committerParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
commit415856bdd4f48ab4f2732996f0bae58595092bbe (patch)
treeede2018b591f6dfb477fe9341ba17b9bc000fab9 /extra/ntp
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'extra/ntp')
-rw-r--r--extra/ntp/PKGBUILD78
-rw-r--r--extra/ntp/changelog25
-rw-r--r--extra/ntp/ntp-4.2.4-html2man.patch183
-rw-r--r--extra/ntp/ntp-client.conf5
-rw-r--r--extra/ntp/ntp.conf52
-rwxr-xr-xextra/ntp/ntpd52
-rwxr-xr-xextra/ntp/ntpdate31
7 files changed, 426 insertions, 0 deletions
diff --git a/extra/ntp/PKGBUILD b/extra/ntp/PKGBUILD
new file mode 100644
index 000000000..69669c721
--- /dev/null
+++ b/extra/ntp/PKGBUILD
@@ -0,0 +1,78 @@
+# $Id: PKGBUILD 117473 2011-04-03 17:50:26Z andrea $
+# Maintainer: kevin <kevin@archlinux.org>
+
+pkgname=ntp
+pkgver=4.2.6.p3
+_realver=4.2.6p3
+pkgrel=3
+pkgdesc="NTP (Network Time Protocol) tries to keep servers in sync"
+arch=(i686 x86_64)
+license=('custom')
+url="http://www.ntp.org/"
+depends=('openssl' 'readline' 'libcap')
+makedepends=('perl-html-parser')
+backup=('etc/ntp.conf' 'etc/conf.d/ntp-client.conf')
+options=('!emptydirs')
+changelog=changelog
+source=(http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-${_realver}.tar.gz
+ ntp-4.2.4-html2man.patch
+ ntp.conf
+ ntp-client.conf
+ ntpd
+ ntpdate)
+md5sums=('59876a9009b098ff59767ee45a88ebd2' '1b04e888717bb31479a6087632981723'
+ '398a7f270f6ae083f47f86eb8b557a75' '58997d6cf4846d80e35a01b855376a33'
+ 'bf20804e75656609e808ca21b53ea4aa' '99b49d763e5866f4f81c48d922c80b93')
+
+build() {
+ cd "$srcdir/$pkgname-$_realver"
+ # fix man page generation
+ patch -Np1 -i ../ntp-4.2.4-html2man.patch
+ # configure
+ export LDFLAGS="${LDFLAGS//-Wl,--as-needed}"
+ # 4.2.6p3: aclocal too old, regenerate
+ rm -f aclocal.m4
+ libtoolize --copy --force
+ ac_cv_header_dns_sd_h=0 ./configure --prefix=/usr \
+ --mandir=/usr/share/man \
+ --enable-linux-caps
+ # build
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$_realver"
+
+ # install
+ make DESTDIR="$pkgdir" install
+
+ # install conf files
+ install -d "$pkgdir/usr/share/ntp"
+ install -D -m644 conf/* "${pkgdir}/usr/share/ntp"
+
+ # install launch scripts
+ install -d "$pkgdir/etc/rc.d"
+ install -D -m755 ${srcdir}/{ntpd,ntpdate} "$pkgdir/etc/rc.d"
+
+ # install man pages
+ cd html
+ ../scripts/html2man
+ sed -i 's/^[\t\ ]*$//;/./,/^$/!d' man/man*/*.[58]
+ install -d "$pkgdir"/usr/share/man/man{5,8}
+ install -m644 man/man5/* "$pkgdir/usr/share/man/man5/"
+ install -m644 man/man8/* "$pkgdir/usr/share/man/man8/"
+ mv "$pkgdir/usr/share/man/man8/ntpd.8" "$pkgdir/usr/share/man/man8/ntp-ntpd.8"
+ cd ..
+
+ # install sample configs
+ install -D -m644 "$srcdir/ntp.conf" "$pkgdir/etc/ntp.conf"
+ install -D -m644 "$srcdir/ntp-client.conf" \
+ "$pkgdir/etc/conf.d/ntp-client.conf"
+
+ # create /var/lib/ntp
+ install -d "$pkgdir/var/lib/ntp"
+ touch "$pkgdir/var/lib/ntp/.placeholder"
+
+ install -Dm644 "$srcdir/$pkgname-$_realver/COPYRIGHT" \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
diff --git a/extra/ntp/changelog b/extra/ntp/changelog
new file mode 100644
index 000000000..528a07826
--- /dev/null
+++ b/extra/ntp/changelog
@@ -0,0 +1,25 @@
+2011-04-03 andrea <andrea@archlinux.org>
+
+ * ntp 4.2.6p3-3
+ - Use 'ntpd -p' to get the PID in ntpd
+ - Don't run the ntp client in background in ntpdate
+
+2011-03-28 andrea <andrea@archlinux.org>
+
+ * ntp 4.2.6p3-2
+ - Improved daemon scripts
+
+2010-10-16 kevin <kevin@archlinux.org>
+
+ * ntp 4.2.6p3
+ - Implemented FS#18469, replace ntpdate with ntpd -q
+ - Removed LIBS
+ - Removed old IPv6 and nano patch
+
+2010-10-16 kevin <kevin@archlinux.org>
+
+ * ntp 4.2.6p2
+ - Added changelog
+ - Set LIBS to use librt since configure doesn't set it
+ - Convert PKGBUILD to build()/package() format
+ - removed "|| return 1"
diff --git a/extra/ntp/ntp-4.2.4-html2man.patch b/extra/ntp/ntp-4.2.4-html2man.patch
new file mode 100644
index 000000000..333d4529a
--- /dev/null
+++ b/extra/ntp/ntp-4.2.4-html2man.patch
@@ -0,0 +1,183 @@
+--- ntp-4.2.4/scripts/html2man.in.html2man 2006-06-06 22:17:10.000000000 +0200
++++ ntp-4.2.4/scripts/html2man.in 2007-01-08 12:47:31.000000000 +0100
+@@ -23,10 +23,10 @@
+ 'ntpq' => ['ntpq', 8, 'ntpd(8), ntpdc(8)'],
+ 'ntpdate' => ['ntpdate', 8, 'ntpd(8)'],
+ 'ntpdc' => ['ntpdc', 8, 'ntpd(8)'],
+- 'ntptime' => ['ntpdtime', 8, 'ntpd(8), ntpdate(8)'],
++ 'ntptime' => ['ntptime', 8, 'ntpd(8), ntpdate(8)'],
+ 'ntptrace' => ['ntptrace', 8, 'ntpd(8)'],
+ 'keygen' => ['ntp-keygen', 8, 'ntpd(8), ntp_auth(5)'],
+- 'confopt' => ['ntp.conf', 5, 'ntpd(8)'],
++ 'confopt' => ['ntp.conf', 5, 'ntpd(8), ntp_auth(5), ntp_mon(5), ntp_acc(5), ntp_clock(5), ntp_misc(5)'],
+ 'authopt' => ['ntp_auth', 5, 'ntp.conf(5), ntpd(8)'],
+ 'monopt' => ['ntp_mon', 5, 'ntp.conf(5)'],
+ 'accopt' => ['ntp_acc', 5, 'ntp.conf(5)'],
+@@ -34,17 +34,8 @@
+ 'miscopt' => ['ntp_misc', 5, 'ntp.conf(5)']);
+
+ # Disclaimer to go in SEE ALSO section of the man page
+-$seealso_disclaimer = 'These man pages are automatically hacked from the main NTP ' .
+- 'documentation pages, which are maintained in HTML format. These files are ' .
+- 'included in the NTP source distribution. If you installed NTP from a binary ' .
+- 'package, or it came pre-installed on your system, chances are the documentation ' .
+- 'was also included in the usual place for your system. The HTML files are more ' .
+- 'correct and complete than these man pages, which are provided for your reference ' .
+- 'only.';
+-
+-# Disclaimer to go right at the top
+-$top_disclaimer = 'This file was automatically generated from HTML source, and may be ' .
+- 'incorrect. See the SEE ALSO section at the end of this file for more info';
++$seealso_disclaimer = "Primary source of documentation: /usr/share/doc/ntp-*\n\n" .
++ "This file was automatically generated from HTML source.\n";
+
+ mkdir $MANDIR, 0777;
+ mkdir "$MANDIR/man8", 0777;
+@@ -64,7 +55,8 @@
+ $fileinfo = $manfiles{$filename};
+
+ $p = HTML::TokeParser->new("$filename.html") || die "Can't open $filename.html: $!";
+- open(MANOUT, ">$MANDIR/man$fileinfo->[1]/$fileinfo->[0].$fileinfo->[1]")
++ $fileout = "$MANDIR/man$fileinfo->[1]/$fileinfo->[0].$fileinfo->[1]";
++ open(MANOUT, ">$fileout")
+ || die "Can't open: $!";
+
+ $p->get_tag("title");
+@@ -73,7 +65,6 @@
+
+ # Setup man header
+ print MANOUT ".TH " . $fileinfo->[0] . " " . $fileinfo->[1] . "\n";
+- print MANOUT ".UC 4\n";
+ print MANOUT ".SH NAME\n";
+ $pat = $fileinfo->[0];
+ if ($name =~ /$pat/) {
+@@ -81,10 +72,12 @@
+ # Add the manpage name, if not in the HTML title already
+ print MANOUT "$fileinfo->[0] - ";
+ }
+- print MANOUT "$name\n\n";
+-
+- print MANOUT "$top_disclaimer\n";
++ print MANOUT "$name\n.SH \\ \n\n";
+
++ @fontstack = ();
++ $deflevel = 0;
++ $pre = 0;
++ $ignore = 0;
+ # Now start scanning. We basically print everything after translating some tags.
+ # $token->[0] has "T", "S", "E" for Text, Start, End
+ # $token->[1] has the tag name, or text (for "T" case)
+@@ -92,19 +85,37 @@
+ while (my $token = $p->get_token) {
+ if($token->[0] eq "T") {
+ my $text = $token->[1];
+- if($tag) {
+- $text =~ s/^[\n ]*//;
+- $text =~ s/[\n ]*$/ /;
++ if (!$pre) {
++ if($tag) {
++ $text =~ s/^[\n\t ]*//;
++ }
++ $text =~ s/^[\n\t ][\n\t ]+$//;
++ $text =~ s/[\n\t ]+/ /g;
++ $text =~ s/&nbsp\;/ /g;
++ $text =~ s/&gt\;/>/g;
++ $text =~ s/&lt\;/</g;
++ $text =~ s/&quot\;/"/g;
++ $text =~ s/&amp\;/&/g;
++ $text =~ s/^\./\\[char46]/;
+ }
+- $text =~ s/&nbsp\;/ /g;
+- $text =~ s/^\./\\./;
+ print MANOUT "$text";
+ $tag = 0;
+ }
+ if($token->[0] eq "S") {
+ if($token->[1] eq "h4") {
+ my $text = uc($p->get_trimmed_text("/h4"));
+- print MANOUT ".SH $text\n";
++ # ignore these two sections in ntpd.html
++ if ($filename eq "ntpd" &&
++ ($text eq "FILES" || $text eq "CONFIGURATION OPTIONS")) {
++ $ignore = 1;
++ close(MANOUT);
++ open(MANOUT, ">/dev/null");
++ } elsif ($ignore) {
++ $ignore = 0;
++ close(MANOUT);
++ open(MANOUT, ">>$fileout");
++ }
++ print MANOUT "\n\n.SH $text\n";
+ }
+ if($token->[1] eq "tt") {
+ push @fontstack, "tt";
+@@ -118,22 +129,30 @@
+ my $text = $p->get_trimmed_text("/address");
+ print MANOUT "\n.SH AUTHOR\n$text\n";
+ }
+- if($token->[1] eq "dt") {
+- $tmp = $deflevel-4;
+- print MANOUT "\n.RS $tmp\n";
++ if($token->[1] eq "dt" || $token->[1] eq "br" && $deflevel > 0) {
++ print MANOUT "\n.TP 8\n";
+ $tag = 1;
+ }
+ if($token->[1] eq "dd") {
+- print MANOUT "\n.RS $deflevel\n";
++ print MANOUT "\n";
+ $tag = 1;
+ }
+ if($token->[1] eq "dl") {
+- $deflevel+=4;
++ $deflevel+=1;
++ if ($deflevel > 0) {
++ print MANOUT "\n.RS ", $deflevel > 1 ? 8 : 0;
++ }
++ }
++ if($token->[1] eq "p") {
++ print MANOUT "\n";
++ }
++ if($token->[1] eq "pre") {
++ print MANOUT "\n.nf";
++ $pre = 1;
+ }
+ }
+ elsif($token->[0] eq "E") {
+- if($token->[1] eq "dd") {
+- print MANOUT "\n.RE\n";
++ if($token->[1] eq "h4") {
+ $tag = 1;
+ }
+ if($token->[1] eq "tt") {
+@@ -157,15 +176,27 @@
+ print MANOUT "$fontswitch";
+ }
+ if($token->[1] eq "dl") {
+- $deflevel-=4;
++ if ($deflevel > 0) {
++ print MANOUT "\n.RE";
++ }
++ print MANOUT "\n";
++ $deflevel-=1;
+ }
+- if($token->[1] eq "dt") {
+- print MANOUT "\n.RE";
++ if($token->[1] eq "p") {
++ print MANOUT "\n";
+ $tag = 1;
+ }
++ if($token->[1] eq "pre") {
++ print MANOUT "\n.fi";
++ $pre = 0;
++ }
+ }
+ }
+- print MANOUT ".SH SEE ALSO\n\n";
++ if ($ignore) {
++ close(MANOUT);
++ open(MANOUT, ">>$fileout");
++ }
++ print MANOUT "\n.SH SEE ALSO\n\n";
+ print MANOUT "$fileinfo->[2]\n\n";
+ print MANOUT "$seealso_disclaimer\n";
+ close(MANOUT);
diff --git a/extra/ntp/ntp-client.conf b/extra/ntp/ntp-client.conf
new file mode 100644
index 000000000..e728db579
--- /dev/null
+++ b/extra/ntp/ntp-client.conf
@@ -0,0 +1,5 @@
+# client options for "ntpd -q" - ntpdate equivalent
+NTP_CLIENT_OPTION="-g"
+
+# arguments passed to ntpd when started
+NTPD_ARGS="-g"
diff --git a/extra/ntp/ntp.conf b/extra/ntp/ntp.conf
new file mode 100644
index 000000000..7f888e4b1
--- /dev/null
+++ b/extra/ntp/ntp.conf
@@ -0,0 +1,52 @@
+# NOTES:
+# - you should only have to update the server line below
+# - if you start getting lines like 'restrict' and 'fudge'
+# and you didnt add them, AND you run dhcpcd on your
+# network interfaces, be sure to add '-Y -N' to the
+# dhcpcd_ethX variables in /etc/conf.d/net
+
+# Name of the servers ntpd should sync with
+# Please respect the access policy as stated by the responsible person.
+#server ntp.example.tld iburst
+
+server pool.ntp.org
+
+##
+# A list of available servers can be found here:
+# http://www.pool.ntp.org/
+# http://www.pool.ntp.org/#use
+# A good way to get servers for your machine is:
+# netselect -s 3 pool.ntp.org
+##
+
+#server ntplocal.example.com prefer
+#server timeserver.example.org
+
+# Warning: Using default NTP settings will leave your NTP
+# server accessible to all hosts on the Internet.
+
+# A default deny all (including localhost) policy
+# To use this define restrictions for all servers and clients
+#restrict default ignore
+#restrict -6 default ignore
+
+# A more open policy, allow access but deny changing the configuration
+restrict default nomodify nopeer
+#restrict -6 default nomodify nopeer
+
+# Allow localhost
+restrict 127.0.0.1
+#restrict -6 ::1
+
+
+# To allow machines within your network to synchronize
+# their clocks with your server, but ensure they are
+# not allowed to configure the server or used as peers
+# to synchronize against, uncomment this line.
+#
+#restrict 192.168.0.0 mask 255.255.255.0 nomodify nopeer notrap
+
+
+# you should not need to modify the following paths
+driftfile /var/lib/ntp/ntp.drift
+
diff --git a/extra/ntp/ntpd b/extra/ntp/ntpd
new file mode 100755
index 000000000..825efc189
--- /dev/null
+++ b/extra/ntp/ntpd
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/ntp-client.conf
+
+PIDFILE="/var/run/ntpd/ntpd.pid"
+PID=$(cat $PIDFILE 2> /dev/null)
+
+case "$1" in
+ start)
+ stat_busy "Starting NTP Daemon"
+ [ ! -d /var/run/ntpd ] && install -d /var/run/ntpd &>/dev/null
+ if [ -z "$PID" ]; then
+ /usr/bin/ntpd $NTPD_ARGS -p /var/run/ntpd/ntpd.pid &>/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ add_daemon ntpd
+ stat_done
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping NTP Daemon"
+ if [ -n "$PID" ]; then
+ kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ rm $PIDFILE &>/dev/null
+ rm_daemon ntpd
+ stat_done
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
diff --git a/extra/ntp/ntpdate b/extra/ntp/ntpdate
new file mode 100755
index 000000000..99508f4fd
--- /dev/null
+++ b/extra/ntp/ntpdate
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/ntp-client.conf
+
+case "$1" in
+ start)
+ stat_busy "Starting NTP Client"
+ /usr/bin/ntpd -q $NTP_CLIENT_OPTION &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ add_daemon ntpdate
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping NTP Client"
+ rm_daemon ntpdate
+ stat_done
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+