#!/bin/sh PKGNAME=$1 [ ! -n PKG_PREFIX ] && exit 1 PKG_PREFIX=${PKG_PREFIX:-/usr/local} case $2 in PRE-INSTALL) echo "===> Checking for old database files" if [ ! -d ${PKG_PREFIX}/news/db ]; then mkdir -p ${PKG_PREFIX}/news/db.dist fi ;; CHECK-CONF) ETC_DIR=${3} echo "Checking for configuration files" for f in $(find ${ETC_DIR} -name "*.dist" -type f) do REALFILE=${f%%.dist} echo -n "Checking if ${REALFILE} exists: " if [ -e ${REALFILE} ] then echo "[YES]" else echo "[NO]" echo " Installing ${f} to ${REALFILE}" cp -p ${f} ${REALFILE} fi done ;; POST-INSTALL) NEWSBASE=${PKG_PREFIX}/news install -d -o news -g news -m 755 \ ${NEWSBASE}/run \ ${NEWSBASE}/spool \ ${NEWSBASE}/spool/archive \ ${NEWSBASE}/spool/articles \ ${NEWSBASE}/spool/incoming \ ${NEWSBASE}/spool/incoming/bad \ ${NEWSBASE}/spool/innfeed \ ${NEWSBASE}/spool/outgoing \ ${NEWSBASE}/spool/overview \ ${NEWSBASE}/spool/tmp if [ ${3:-""} = "PORTMODE" ]; then fc=`ls ${NEWSBASE}/db.dist/* 2>/dev/null | wc -l` if [ -d ${NEWSBASE}/db.dist -a $fc -eq 0 ]; then for f in ${NEWSBASE}/db/*; do cp -pR ${f} ${NEWSBASE}/db.dist done else mkdir -p ${NEWSBASE}/db.dist for f in ${NEWSBASE}/db/*; do touch ${NEWSBASE}/db.dist/${f##*/} done fi # Fix permissions for f in ${NEWSBASE}/etc/*.ctl ${NEWSBASE}/etc/readers.conf; do chmod 640 ${f} done else fc=`ls ${NEWSBASE}/db/* 2>/dev/null | wc -l` if [ -d ${NEWSBASE}/db -a $fc -eq 0 ]; then for f in ${NEWSBASE}/db.dist/*; do cp -pR ${f} ${NEWSBASE}/db done fi fi ;; *) echo "Unexpected Argument $2!!!" exit 1 ;; esac exit 0