Embrace rc.subr(8).
This commit is contained in:
parent
af63caf140
commit
9965df0141
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=118871
2 changed files with 26 additions and 49 deletions
|
@ -8,7 +8,7 @@
|
|||
PORTNAME= nullmailer
|
||||
# PORTVERSION= 1.00RC7
|
||||
PORTVERSION= 1.00r7
|
||||
PORTREVISION= 0
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= mail
|
||||
MASTER_SITES= http://untroubled.org/nullmailer/ \
|
||||
ftp://mirrors.dataloss.nl/mirrors/bgware/nullmailer/%SUBDIR%/
|
||||
|
@ -27,6 +27,8 @@ MAN1= nullmailer-inject.1 sendmail.1
|
|||
MAN7= nullmailer.7
|
||||
MAN8= nullmailer-queue.8 nullmailer-send.8
|
||||
|
||||
USE_RC_SUBR= yes
|
||||
|
||||
PKGMESSAGE= ${WRKDIR}/pkg-message
|
||||
|
||||
LOCALSTATEDIR= /var/spool
|
||||
|
@ -35,6 +37,8 @@ CONFIGURE_ARGS+= --localstatedir=${LOCALSTATEDIR}
|
|||
PLIST_SUB= LOCALSTATEDIR=${LOCALSTATEDIR}
|
||||
PKGINSTALL= ${WRKDIR}/pkg-install
|
||||
|
||||
RC_SCRIPTS_SUB= PREFIX=${PREFIX} RC_SUBR=${RC_SUBR}
|
||||
|
||||
post-extract:
|
||||
@${CAT} ${FILESDIR}/pkg-install.proto | ${SED} -e 's,%%LOCALSTATEDIR%%,${LOCALSTATEDIR},g' > ${WRKDIR}/pkg-install
|
||||
@${CAT} ${FILESDIR}/pkg-message.proto | ${SED} -e 's,%%PREFIX%%,${PREFIX},' > ${PKGMESSAGE}
|
||||
|
@ -44,11 +48,10 @@ post-extract:
|
|||
pre-install:
|
||||
@BATCH="${BATCH}" LOCALSTATEDIR="${LOCALSTATEDIR}" PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
|
||||
|
||||
do-install:
|
||||
@cd ${WRKSRC} && make install && make install-root
|
||||
|
||||
post-install:
|
||||
@${INSTALL_SCRIPT} -c ${FILESDIR}/nullmail.sh ${PREFIX}/etc/rc.d/
|
||||
@cd ${WRKSRC} && make install-root
|
||||
@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} ${FILESDIR}/nullmail.sh > ${WRKDIR}/nullmail.sh
|
||||
@${INSTALL_SCRIPT} -c ${WRKDIR}/nullmail.sh ${PREFIX}/etc/rc.d/
|
||||
@${INSTALL_DATA} -c ${FILESDIR}/remotes.sample ${PREFIX}/etc/nullmailer/
|
||||
@BATCH="${BATCH}" NMH_PREFIX="${NMH_PREFIX}" PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
|
||||
@${CAT} ${PKGMESSAGE}
|
||||
|
|
|
@ -1,48 +1,22 @@
|
|||
#!/bin/sh
|
||||
# $FreeBSD$
|
||||
#
|
||||
# PROVIDE: nullmailer
|
||||
# REQUIRE: DAEMON
|
||||
# KEYWORD: FreeBSD
|
||||
#
|
||||
# Add the following line to /etc/rc.conf to enable nullmailer:
|
||||
#
|
||||
# nullmailer_enable="YES"
|
||||
#
|
||||
|
||||
if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
|
||||
echo "$0: Cannot determine the PREFIX" >&2
|
||||
exit 1
|
||||
fi
|
||||
. %%RC_SUBR%%
|
||||
|
||||
NULLMAILUSER=nullmail
|
||||
name=nullmailer
|
||||
rcvar=`set_rcvar`
|
||||
nullmailer_user=nullmail
|
||||
command=%%PREFIX%%/sbin/nullmailer-send
|
||||
command_args=" | /usr/bin/logger -i -p local5.info -t nullmail &"
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
||||
|
||||
PIDFILE=/var/run/nullmailer.pid
|
||||
AWK=/usr/bin/awk
|
||||
CAT=/bin/cat
|
||||
GREP=/usr/bin/grep
|
||||
PS=/bin/ps
|
||||
RM=/bin/rm
|
||||
LOGGER=/usr/bin/logger
|
||||
KILL=/bin/kill
|
||||
KILLALL=/usr/bin/killall
|
||||
HEAD=/usr/bin/head
|
||||
|
||||
PRIORITY=local5.info
|
||||
TAG=${NULLMAILUSER}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo -n ' nullmailer'
|
||||
if [ ! -r ${PIDFILE} ] ; then
|
||||
[ -x ${PREFIX}/sbin/nullmailer-send ] && su -l ${NULLMAILUSER} -c "${PREFIX}/sbin/nullmailer-send 2>&1 | ${LOGGER} -i -p ${PRIORITY} -t ${TAG} &"
|
||||
JUNK=`${PS} -ax`
|
||||
PID=`${PS} awx | ${GREP} -v awk | ${AWK} '/nullmailer-send/ {print $1}' | ${HEAD} -1`
|
||||
echo $PID > ${PIDFILE}
|
||||
else
|
||||
echo ' already running'
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo -n ' nullmailer'
|
||||
if [ -r ${PIDFILE} ] ; then
|
||||
${KILL} `${CAT} ${PIDFILE}` > /dev/null
|
||||
${RM} -f ${PIDFILE}
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: `basename $0` {start|stop}" >&2
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
|
Loading…
Reference in a new issue