Add an rc.d script for NetBSD.
This commit is contained in:
parent
41e3401c5c
commit
9d3eda1959
|
@ -0,0 +1,66 @@
|
|||
#!/bin/sh
|
||||
# PROVIDE: pleroma
|
||||
# REQUIRE: DAEMON pgsql
|
||||
|
||||
if [ -f /etc/rc.subr ]; then
|
||||
. /etc/rc.subr
|
||||
fi
|
||||
|
||||
name="pleroma"
|
||||
rcvar=${name}
|
||||
command="/usr/pkg/bin/elixir"
|
||||
command_args="/usr/pkg/bin/mix phx.server &"
|
||||
start_cmd=pleroma_start
|
||||
start_precmd="ulimit -n unlimited"
|
||||
pidfile="${pleroma_home}/pleroma/pid"
|
||||
|
||||
pleroma_chdir="${pleroma_home}/pleroma"
|
||||
pleroma_env="HOME=${pleroma_home} MIX_ENV=prod"
|
||||
pleroma_user="pleroma"
|
||||
|
||||
pleroma_start()
|
||||
{
|
||||
echo "Starting ${name}."
|
||||
${start_precmd}
|
||||
su -m ${pleroma_user} -c "cd ${pleroma_chdir} && \
|
||||
${pleroma_env} ${command} ${command_args}"
|
||||
echo $! > ${pidfile}
|
||||
}
|
||||
|
||||
check_pidfile()
|
||||
{
|
||||
read _pid _junk < ${pidfile}
|
||||
echo -n "$(ps -axo pid | grep ${_pid})"
|
||||
}
|
||||
|
||||
if [ -f /etc/rc.subr -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then # newer NetBSD
|
||||
load_rc_config ${name}
|
||||
run_rc_command "$1"
|
||||
else # ancient NetBSD, Solaris and illumos, Linux, etc...
|
||||
cmd=${1:-start}
|
||||
|
||||
case ${cmd} in
|
||||
start)
|
||||
echo "Starting ${name}."
|
||||
${start_cmd}
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo "Stopping ${name}."
|
||||
kill `cat ${pidfile}`
|
||||
rm ${pidfile}
|
||||
;;
|
||||
|
||||
restart)
|
||||
( $0 stop )
|
||||
sleep 5
|
||||
$0 start
|
||||
;;
|
||||
|
||||
*)
|
||||
echo 1>&2 "Usage: $0 [start|stop|restart]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
exit 0
|
||||
fi
|
Loading…
Reference in New Issue