#!/bin/sh if [ $2 != "POST-INSTALL" ] then exit fi varrun=/var/run/bld logfile=/var/log/bld.log user=bld group=bld newsyslog_conf=/etc/newsyslog.conf syslog_conf=/etc/syslog.conf syslog_pid=/var/run/syslog.pid nonexistent=/nonexistent 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_account() { local u g gcos homeopt home u=$1 g=$2 gcos=$3 homeopt=${4:+"-d $4"} 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}\"." pw groupadd ${g} || exit echo "Done." fi if pw user show "${u}" >/dev/null 2>&1; then echo "You already have a user \"${u}\", so I will use it." else echo "You need a user \"${u}\"." pw useradd ${u} -g ${g} -h - ${homeopt} \ -s $nonexistent -c "${gcos}" || exit echo "Done." fi if [ x"$homeopt" = x ]; then eval home=~${u} if [ ! -d "${home}" ]; then mkdir -p ${home}/.cvsup || exit touch ${home}/.cvsup/auth || exit chown -R ${u}:${g} ${home} || exit chmod -R go= ${home} || exit fi fi } if [ ! -d "${varrun}" ] then mkdir ${varrun} || exit fi echo "" make_account ${user} ${group} "Blacklist Daemon" "$nonexistent" chmod 700 ${varrun} chown bld ${varrun} if grep -q "^[^#]*${facility}.*$logfile" $syslog_conf; then echo -n "It looks like you already have some logging set up, so I " echo "will use it." else echo "Setting up server logging in \"$syslog_conf\"." cat <>$syslog_conf !bld *.* $logfile EOF if [ ! -f $logfile ]; then echo "Creating \"$logfile\"." cp /dev/null $logfile fi if [ -f $syslog_pid ]; then echo "Giving syslogd a kick in the pants." kill -HUP $(cat $syslog_pid) fi echo "Adding bld log entry to \"$newsyslog_conf\"." cat <>$newsyslog_conf $logfile 664 7 * 24 Z EOF echo "Done." fi # Compatibility from v0.2.4 port for i in bld_acl.conf bld_whitelist.conf do if [ -f ${PKG_PREFIX}/etc/$i ] then if [ -f ${PKG_PREFIX}/etc/bld/$i ] then echo "WARNING: You have a $i configuration file in two directories:" echo "${PKG_PREFIX}/etc and ${PKG_PREFIX}/etc/bld" echo "You must use ${PREFIX}/etc/bld/$i" else echo "You seem to have a $i configuration file in ${PKG_PREFIX}/etc" echo "Copying it to ${PKG_PREFIX}/etc/bld" cp ${PKG_PREFIX}/etc/$i ${PKG_PREFIX}/etc/bld echo "You should clean the old ${PKG_PREFIX}/etc/$i" fi fi done