#! /bin/sh ask() { local question default answer question=$1 default=$2 if [ -z "${PACKAGE_BUILDING}" ]; 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 } make_group() { local g g=$1 if pw group show "${g}" >/dev/null 2>&1; then echo "You already have a group \"${g}\", so I will use it." else echo "You need a group \"${g}\"." if which -s pw && yesno "Would you like me to create it" y; then pw groupadd ${g} || exit echo "Done." else echo "Please create it, and try again." if ! grep -q "^${u}:" /etc/passwd; then echo "While you're at it, please create a user \"${u}\" too," echo "with a default group of \"${g}\"." fi exit 1 fi fi } init_plugins() { if [ -f ${PKG_PREFIX}/etc/munin/VERSION.node ]; then prevver=$(cat ${PKG_PREFIX}/etc/munin/VERSION.node) fi if [ -n "$prevver" ]; then echo -n "Initializing new plugins.." ${PKG_PREFIX}/sbin/munin-node-configure --shell --newer "${prevver%-*}" | sh -x else echo -n "Initializing plugins.." ${PKG_PREFIX}/sbin/munin-node-configure --shell | 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 <>/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 yesno "Would you like me to set up log rotation" y; then if grep -q /var/log/munin-node.log /etc/newsyslog.conf; then : else cat >> /etc/newsyslog.conf <