1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

Change rc script to daemonize inspircd via daemon(8)

inspircd has a curious feature where it exits with signal 15 when it
forks off to the background. This is very confusing and leads users to
believe the service was not started successfully when in fact it was.

https://github.com/inspircd/inspircd/pull/626

Approved by:	swills (mentor)
This commit is contained in:
Mark Felder 2014-02-10 01:46:33 +00:00
parent 98b3383194
commit e4e8a4e153
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=343571
2 changed files with 12 additions and 10 deletions

View File

@ -3,7 +3,7 @@
PORTNAME= inspircd
PORTVERSION= 2.0.14
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= irc
MAINTAINER= feld@FreeBSD.org

View File

@ -38,21 +38,23 @@ load_rc_config ${name}
: ${inspircd_logfile="%%INSPIRCD_LOG%%"}
: ${inspircd_flags="${inspircd_flags} --logfile ${inspircd_logfile} --config ${inspircd_config}"}
command=%%PREFIX%%/bin/inspircd
command=/usr/sbin/daemon
command_args=" -f %%PREFIX%%/bin/inspircd --nofork ${inspircd_flags}"
procname=%%PREFIX%%/bin/inspircd
pidfile=${inspircd_pidfile}
required_files=${inspircd_config}
start_precmd=inspircd_prestart
inspircd_prestart()
{
piddir=$(dirname ${inspircd_pidfile})
if [ ! -d ${piddir} ]; then
install -d -m 755 -o ${inspircd_user} -g ${inspircd_group} ${piddir}
fi
logdir=$(dirname ${inspircd_logfile})
if [ ! -d ${logdir} ]; then
install -d -m 755 -o ${inspircd_user} -g ${inspircd_group} ${logdir}
fi
# inspircd_flags gets applied too early if we don't do this.
# I didn't want to force people to update their rc.conf files
# and change the inspircd_flags to something else.
rc_flags=""
for i in ${inspircd_pidfile} ${inspircd_logfile}; do
install -d -m 755 -o ${inspircd_user} -g ${inspircd_group} ${i%/*}
done
}
run_rc_command "$1"