freebsd-ports/sysutils/munin-node/pkg-install
Florian Smeets 773edde1d7 - update to 2.0.14
- make port non-interactive [1]
- add PORTSCOUT hints, 2.1.X is a development version

PR:		ports/178532 [1]
Submitted by:	Claudius Herder <claudius_herder@ambtec.de> [1]
2013-05-29 23:36:16 +00:00

87 lines
1.9 KiB
Bash

#! /bin/sh
ask() {
local question default answer
question=$1
default=$2
if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
read -p "${question} [${default}]? " answer
fi
if [ x${answer} = x ]; then
answer=${default}
fi
echo ${answer}
}
yesno() {
local dflt question answer
question=$1
dflt=$2
while :; do
answer=$(ask "${question}" "${dflt}")
case "${answer}" in
[Yy]*) return 0;;
[Nn]*) return 1;;
esac
echo "Please answer yes or no."
done
}
init_plugins() {
if [ -f /tmp/.munin-node.version ]; then
prevver=$(cat /tmp/.munin-node.version)
fi
if [ -n "$prevver" ]; then
echo -n "Initializing new plugins.."
${PKG_PREFIX}/sbin/munin-node-configure --shell --newer "${prevver%-*}" | sh -x
fi
echo "done."
}
create_crontab_entries() {
local sched prog
sched=$1
prog=$2
if grep -q "^[^#]*$prog" /etc/crontab; then
echo "It looks like your crontab is already set up, so I'll use that."
else
echo "It looks like your perl suffers from unsafe signals."
if yesno "Would you like me to set up your root crontab to restart munin-node" y; then
cat <<EOT >>/etc/crontab
$sched root $prog
EOT
else
echo "You may suffer from munin-node crashing after log rotation."
echo "If you still want to restart munin-node, use $prog."
fi
fi
}
newsyslog() {
if grep -q /var/log/munin/munin-node.log /etc/newsyslog.conf; then
:
else
cat >> /etc/newsyslog.conf <<EOT
/var/log/munin/munin-node.log 644 7 * @T00 Z /var/run/munin/munin-node.pid
EOT
fi
}
########################################################################
case $2 in
PRE-INSTALL)
;;
POST-INSTALL)
if [ -z "${PACKAGE_BUILDING}" ]; then
init_plugins
${PKG_PREFIX}/etc/rc.d/munin-node start
newsyslog
fi
;;
esac