aboutsummaryrefslogtreecommitdiff
path: root/irc/inspircd12/files/inspircd.in
diff options
context:
space:
mode:
Diffstat (limited to 'irc/inspircd12/files/inspircd.in')
-rw-r--r--irc/inspircd12/files/inspircd.in76
1 files changed, 76 insertions, 0 deletions
diff --git a/irc/inspircd12/files/inspircd.in b/irc/inspircd12/files/inspircd.in
new file mode 100644
index 000000000000..eb9e8366ac02
--- /dev/null
+++ b/irc/inspircd12/files/inspircd.in
@@ -0,0 +1,76 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# PROVIDE: inspircd
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable inspircd:
+#
+# inspircd_enable="YES"
+#
+# Other rc.conf variables:
+# inspircd_flags="<set as needed>"
+#
+# inspircd_config="%%ETCDIR%%/inspircd.conf"
+# -- path to config file
+# inspircd_pidfile="%%INSPIRCD_RUN%%/inspircd.pid"
+# -- location of pidfile: must match setting
+# in ${inspircd_conffile}
+# inspircd_user="%%INSPIRCD_USR%%"
+# -- user to run inspircd as
+# inspircd_group="%%INSPIRCD_GRP%%"
+# -- group to run inspircd as
+# inspircd_logfile="%%INSPIRCD_LOG%%"
+# -- file inspircd writes logs to
+#
+. /etc/rc.subr
+
+name=inspircd
+rcvar=inspircd_enable
+
+load_rc_config ${name}
+
+: ${inspircd_enable="NO"}
+: ${inspircd_config="%%ETCDIR%%/inspircd.conf"}
+: ${inspircd_pidfile="%%INSPIRCD_RUN%%/inspircd.pid"}
+: ${inspircd_user="%%INSPIRCD_USR%%"}
+: ${inspircd_group="%%INSPIRCD_GRP%%"}
+: ${inspircd_logfile="%%INSPIRCD_LOG%%"}
+
+command=%%PREFIX%%/bin/inspircd
+pidfile=${inspircd_pidfile}
+required_files=${inspircd_config}
+start_precmd=inspircd_prestart
+
+inspircd_prestart ()
+{
+ piddir=$(dirname ${inspircd_pidfile})
+ if [ ! -d ${piddir} ]; then
+ mkdir -m 755 -p ${piddir}
+ chown -R ${inspircd_user}:${inspircd_group} ${piddir}
+ fi
+ logdir=$(dirname ${inspircd_logfile})
+ if [ ! -d ${logdir} ]; then
+ mkdir -m 755 -p ${logdir}
+ chown -R ${inspircd_user}:${inspircd_group} ${logdir}
+ fi
+}
+
+case "${inspircd_flags}" in
+ *--config\ *)
+ echo "Warning \$inspircd_flags includes --config option." \
+ "Please use \$inspircd_config instead."
+ ;;
+ *--logfile\ *)
+ echo "Warning \$inspircd_flags includes --logfile option." \
+ "Please use \$inspircd_logfile instead."
+ ;;
+ *)
+ inspircd_flags="${inspircd_flags} --logfile ${inspircd_logfile} --config ${inspircd_config}"
+ ;;
+esac
+
+run_rc_command "$1"