aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authormadpilot <madpilot@FreeBSD.org>2016-05-28 22:46:43 +0800
committermadpilot <madpilot@FreeBSD.org>2016-05-28 22:46:43 +0800
commit6aaba3ecd63c11442126392455d8e6adb8d9c3d1 (patch)
treec40712ddae3d5e20c46cef6972f3881e48685eae /net
parent5c86038c145cae7f94b170318cb88c0c967be131 (diff)
downloadfreebsd-ports-gnome-6aaba3ecd63c11442126392455d8e6adb8d9c3d1.tar.gz
freebsd-ports-gnome-6aaba3ecd63c11442126392455d8e6adb8d9c3d1.tar.zst
freebsd-ports-gnome-6aaba3ecd63c11442126392455d8e6adb8d9c3d1.zip
New port: net/ntpa
NTP Analyzer is a tool dedicated to analyze the operation of time servers. NTP Analyzer works by collecting data from the ntp daemon. Graphs and web pages can then be generated to visualize the activities of hosts and peers. WWW: https://bitbucket.org/anguist/ntpa PR: 208940 Submitted by: Carsten Larsen <cs at innolan.dk>
Diffstat (limited to 'net')
-rw-r--r--net/Makefile1
-rw-r--r--net/ntpa/Makefile47
-rw-r--r--net/ntpa/distinfo3
-rw-r--r--net/ntpa/files/ntpa.in109
-rw-r--r--net/ntpa/pkg-descr8
-rw-r--r--net/ntpa/pkg-message9
-rw-r--r--net/ntpa/pkg-plist77
7 files changed, 254 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile
index e531e07273c0..1e3c9a91c88a 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -461,6 +461,7 @@
SUBDIR += ntop
SUBDIR += ntp
SUBDIR += ntp-devel
+ SUBDIR += ntpa
SUBDIR += ntraceroute
SUBDIR += nusoap
SUBDIR += nxproxy
diff --git a/net/ntpa/Makefile b/net/ntpa/Makefile
new file mode 100644
index 000000000000..892abab766db
--- /dev/null
+++ b/net/ntpa/Makefile
@@ -0,0 +1,47 @@
+# $FreeBSD$
+
+PORTNAME= ntpa
+PORTVERSION= 0.6.1
+CATEGORIES= net
+MASTER_SITES= http://suyai.innolan.net/
+
+MAINTAINER= cs@innolan.dk
+COMMENT= NTP data collection and charting
+
+LICENSE= MIT
+
+OPTIONS_DEFINE= GRAPH PGSQL MYSQL
+OPTION_MULTI= PGSQL MYSQL
+GRAPH_DESC= Graphs and HTML generation (requires Cairo)
+PGSQL_DESC= PostgreSQL Connector
+MYSQL_DESC= MySQL Connector (GPL)
+
+OPTIONS_DEFAULT= GRAPH PGSQL
+
+GRAPH_LIB_DEPENDS= libgdiplus.so:x11-toolkits/libgdiplus \
+ libcairo.so:graphics/cairo \
+ libpng.so:graphics/png
+GRAPH_RUN_DEPENDS= ${LOCALBASE}/share/fonts/webfonts/arial.ttf:x11-fonts/webfonts
+GRAPH_CONFIGURE_ON= GRAPH
+MYSQL_CONFIGURE_ON= MYSQL
+PGSQL_CONFIGURE_ON= PGSQL
+
+USES= mono
+NO_ARCH= yes
+HAS_CONFIGURE= yes
+OPTIONS_SUB= yes
+USE_RC_SUBR= ntpa
+
+USERS= ntpa
+GROUPS= ntpa
+
+post-install:
+ ${MKDIR} ${STAGEDIR}${WWWDIR}
+ (cd ${WRKSRC}/html && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR})
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ (cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
+ ${INSTALL_MAN} ${WRKSRC}/docs/ntpa.8 ${STAGEDIR}${MAN8PREFIX}/man/man8
+ ${MKDIR} ${STAGEDIR}/var/log/ntpa
+ ${MKDIR} ${STAGEDIR}/var/run/ntpa
+
+.include <bsd.port.mk>
diff --git a/net/ntpa/distinfo b/net/ntpa/distinfo
new file mode 100644
index 000000000000..74750bbbb73e
--- /dev/null
+++ b/net/ntpa/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1464440774
+SHA256 (ntpa-0.6.1.tar.gz) = 93f6494039d21698de2e512169327caf447ef1143a9e8cc6c1ae304525d7984b
+SIZE (ntpa-0.6.1.tar.gz) = 1336869
diff --git a/net/ntpa/files/ntpa.in b/net/ntpa/files/ntpa.in
new file mode 100644
index 000000000000..bce837346811
--- /dev/null
+++ b/net/ntpa/files/ntpa.in
@@ -0,0 +1,109 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# PROVIDE: ntpa
+# REQUIRE: networking
+# KEYWORD: shutdown
+#
+# Add these lines to /etc/rc.conf to enable ntpa:
+#
+# ntpa_enable (bool): Set to NO by default.
+# Set it to YES to enable ntpa.
+# ntpa_config (path): Set to %%PREFIX%%/etc/ntpa/ntpa.conf
+# by default.
+# ntpa_tempdir (path): Set to /tmp by default.
+# ntpa_user (user): Set to ntpa by default.
+#
+# Run additional instances of ntpa with:
+# ln -s ntpa ntpa_name
+#
+
+. /etc/rc.subr
+
+# taken from security/openvpn.
+name="$file" ;
+
+case "$0" in
+/etc/rc*)
+ # during boot (shutdown) $0 is /etc/rc (/etc/rc.shutdown),
+ # so get the name of the script from $_file
+ name="$_file"
+ ;;
+*/service)
+ # do not use this as $0
+ ;;
+*)
+ name="$0"
+ ;;
+esac
+
+# default name to "ntpa" if guessing failed
+# Trailing semicolon for service(8)'s benefit:
+name="${name:-ntpa}" ;
+name="${name##*/}"
+desc="Monitors NTP daemon"
+rcvar=${name}_enable
+
+start_cmd=ntpa_start
+stop_cmd=ntpa_stop
+reload_cmd=ntpa_reload
+
+extra_commands=reload
+
+load_rc_config ${name}
+
+eval ": \${${name}_enable:=\"NO\"}"
+eval ": \${${name}_config:=\"%%PREFIX%%/etc/ntpa/${name}.conf\"}"
+eval ": \${${name}_tempdir:=\"/tmp/\"}"
+eval ": \${${name}_user:=\"ntpa\"}"
+
+config="$(eval echo \${${name}_config})"
+tempdir="$(eval echo \${${name}_tempdir})"
+ntpauser="$(eval echo \${${name}_user})"
+
+pid_dir=/var/run/ntpa
+pidfile="$pid_dir/${name}.pid"
+
+ntpa_start()
+{
+ if [ ! -d "$pid_dir" ]; then
+ install -m 0775 -g $ntpauser -o $ntpauser -d "$pid_dir"
+ fi
+
+ if [ -f ${pidfile} ]; then
+ rc_pid=`cat ${pidfile}`
+ echo 1>&2 "${name} already running? (pid=$rc_pid)."
+ return 1
+ else
+ echo "Starting ${name}."
+ su -m ${ntpauser} -c "sh -c '%%PREFIX%%/sbin/ntpa --config ${config} --writepid ${pidfile} --temp ${tempdir} --daemon ${name} &'"
+ fi
+}
+
+ntpa_reload()
+{
+ if [ ! -f ${pidfile} ]; then
+ _run_rc_notrunning
+ return 1
+ else
+ echo "Reloading ${name}."
+ rc_pid=`cat ${pidfile}`
+ kill -USR1 $rc_pid
+ fi
+}
+
+ntpa_stop()
+{
+ if [ ! -f ${pidfile} ]; then
+ _run_rc_notrunning
+ return 1
+ else
+ echo "Stopping ${name}."
+ rc_pid=`cat ${pidfile}`
+ kill -TERM $rc_pid
+ wait_for_pids ${rc_pid}
+ fi
+}
+
+run_rc_command "$1"
diff --git a/net/ntpa/pkg-descr b/net/ntpa/pkg-descr
new file mode 100644
index 000000000000..aac73979659a
--- /dev/null
+++ b/net/ntpa/pkg-descr
@@ -0,0 +1,8 @@
+NTP Analyzer is a tool dedicated to analyze the operation of time
+servers.
+
+NTP Analyzer works by collecting data from the ntp daemon. Graphs
+and web pages can then be generated to visualize the activities of
+hosts and peers.
+
+WWW: https://bitbucket.org/anguist/ntpa
diff --git a/net/ntpa/pkg-message b/net/ntpa/pkg-message
new file mode 100644
index 000000000000..125c9ba8449b
--- /dev/null
+++ b/net/ntpa/pkg-message
@@ -0,0 +1,9 @@
+ntpa has been installed.
+It requires a MySQL or PostgreeSQL user and database configured for it.
+
+You can do this with the following MySQL commands:
+
+CREATE DATABASE ntpa;
+CREATE USER 'ntpau'@'localhost' IDENTIFIED BY 'password';
+GRANT ALL PRIVILEGES ON ntpa.* TO 'ntpau'@'localhost';
+FLUSH PRIVILEGES;
diff --git a/net/ntpa/pkg-plist b/net/ntpa/pkg-plist
new file mode 100644
index 000000000000..9a9671bc3693
--- /dev/null
+++ b/net/ntpa/pkg-plist
@@ -0,0 +1,77 @@
+sbin/ntpa
+sbin/ntpac
+sbin/ntpav
+libexec/ntpa/NPlot.dll
+libexec/ntpa/Ntp.Analyzer.Cli.exe
+libexec/ntpa/Ntp.Analyzer.Data.dll
+libexec/ntpa/Ntp.Analyzer.dll
+libexec/ntpa/Ntp.Analyzer.Import.dll
+libexec/ntpa/Ntp.Analyzer.Localize.dll
+libexec/ntpa/Ntp.Analyzer.Log.dll
+libexec/ntpa/Ntp.Analyzer.Objects.dll
+libexec/ntpa/Ntp.Analyzer.Process.dll
+libexec/ntpa/Ntp.Analyzer.Validate.Cli.exe
+libexec/ntpa/Ntp.Common.dll
+libexec/ntpa/Ntp.Config.dll
+libexec/ntpa/Ntp.Data.dll
+libexec/ntpa/Ntp.Data.Provider.dll
+libexec/ntpa/Ntp.Interop.dll
+libexec/ntpa/Ntp.Monitor.Client.dll
+libexec/ntpa/Ntp.Monitor.Cli.exe
+libexec/ntpa/Ntp.Monitor.Server.dll
+libexec/ntpa/Ntp.Process.dll
+%%MYSQL%%libexec/ntpa/MySql.Data.dll
+%%PGSQL%%libexec/ntpa/Npgsql.dll
+%%PGSQL%%libexec/ntpa/de/Npgsql.resources.dll
+%%PGSQL%%libexec/ntpa/es/Npgsql.resources.dll
+%%PGSQL%%libexec/ntpa/fi/Npgsql.resources.dll
+%%PGSQL%%libexec/ntpa/fr/Npgsql.resources.dll
+%%PGSQL%%libexec/ntpa/ja/Npgsql.resources.dll
+%%PGSQL%%libexec/ntpa/zh-CN/Npgsql.resources.dll
+man/man8/ntpa.8.gz
+@sample(,ntpa,640) %%ETCDIR%%/ntpa.conf.sample
+@owner www
+@group www
+%%WWWDIR%%/index.html
+%%WWWDIR%%/css/bootstrap.css
+%%WWWDIR%%/css/bootstrap.css.map
+%%WWWDIR%%/css/bootstrap.min.css
+%%WWWDIR%%/css/bootstrap.min.css.map
+%%WWWDIR%%/css/bootstrap-theme.css
+%%WWWDIR%%/css/bootstrap-theme.css.map
+%%WWWDIR%%/css/bootstrap-theme.min.css
+%%WWWDIR%%/css/bootstrap-theme.min.css.map
+%%WWWDIR%%/css/graph.css
+%%WWWDIR%%/css/host.css
+%%WWWDIR%%/css/peer.css
+%%WWWDIR%%/fonts/glyphicons-halflings-regular.eot
+%%WWWDIR%%/fonts/glyphicons-halflings-regular.svg
+%%WWWDIR%%/fonts/glyphicons-halflings-regular.ttf
+%%WWWDIR%%/fonts/glyphicons-halflings-regular.woff
+%%WWWDIR%%/fonts/glyphicons-halflings-regular.woff2
+%%WWWDIR%%/js/bootstrap.js
+%%WWWDIR%%/js/bootstrap.min.js
+%%WWWDIR%%/js/jquery.js
+%%WWWDIR%%/js/jquery.min.js
+%%WWWDIR%%/js/jquery.min.map
+%%WWWDIR%%/js/npm.js
+@owner
+@group
+%%EXAMPLESDIR%%/ntpa.conf
+%%EXAMPLESDIR%%/ntpa.graph.conf
+%%EXAMPLESDIR%%/ntpa.inc.conf
+%%EXAMPLESDIR%%/ntpa.inc.graphs1
+%%EXAMPLESDIR%%/ntpa.inc.graphs2
+%%EXAMPLESDIR%%/ntpa.inc.menu
+%%EXAMPLESDIR%%/ntpa.inc.pages1
+%%EXAMPLESDIR%%/ntpa.inc.pages2
+%%EXAMPLESDIR%%/ntpa.stat2.conf
+%%EXAMPLESDIR%%/ntpa.stat.conf
+%%EXAMPLESDIR%%/ntpa.web.conf
+%%EXAMPLESDIR%%/ntpa.web.small.conf
+@dir(www,ntpa,775) %%WWWDIR%%
+@dir(www,www,) %%WWWDIR%%/css
+@dir(www,www,) %%WWWDIR%%/fonts
+@dir(www,www,) %%WWWDIR%%/js
+@dir(ntpa,ntpa,750) /var/log/ntpa
+@dir(ntpa,ntpa,755) /var/run/ntpa