| Server IP : 82.208.35.60 / Your IP : 216.73.216.89 Web Server : Apache/2.4.55 (FreeBSD) OpenSSL/1.1.1q-freebsd PHP/7.3.31 System : FreeBSD server7.d2m.cz 12.4-RELEASE-p9 FreeBSD 12.4-RELEASE-p9 GENERIC amd64 User : studiokobylisy_cz ( 1008) PHP Version : 7.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/ports/www/pydio-cells/files/ |
Upload File : |
#!/bin/sh
# PROVIDE: cells
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable Pydio Cells:
#
# cells_enable (bool): Set to "NO" by default.
# Set to "YES" to enable Pydio Cells.
# cells_user (str): Default to "pydio".
# cells_group (str): Default to "pydio".
# User and group to run Pydio Cells with.
# cells_flags (str): Additional flags to append to "cells start" command.
# Read `cells help start` for more information.
# cells_workingdir (str): Default to "/var/pydio/.config/pydio/cells".
# Application directory.
# cells_logdir (str): Default to "${cells_workingdir}/logs".
# Directory for application logs.
. /etc/rc.subr
name=cells
rcvar=cells_enable
desc="Pydio Cells"
load_rc_config cells
: ${cells_enable:=NO}
: ${cells_user:=pydio}
: ${cells_group:=pydio}
: ${cells_workingdir=/var/pydio/.config/pydio/cells}
: ${cells_logdir="${cells_workingdir}/logs"}
_envvars="CELLS_WORKING_DIR=${cells_workingdir} CELLS_LOG_DIR=${cells_logdir}"
_sucmd=/usr/bin/su
extra_commands=cli
pidfile=/var/run/${name}/${name}.pid
cli_precmd=cells_precmd
cli_cmd="cells_cli $@"
start_precmd=cells_precmd
stop_cmd=cells_stop
procname="%%PREFIX%%/bin/cells"
command=/usr/sbin/daemon
command_args="-p ${pidfile} -o ${cells_logdir}/cells.log env ${_envvars} ${procname} start ${cells_flags}"
cells_precmd()
{
# Create PID file directory
install -d -o ${cells_user} -g ${cells_group} -m 0755 "$(dirname ${pidfile})"
# Remove default flags, they're added in `command_args` manually
rc_flags=""
}
cells_cli()
{
shift 1
${_sucmd} -l ${cells_user} -c "exec env ${_envvars} ${procname} $*"
}
cells_stop()
{
# Copy-paste from rc.subr
if [ -z "${rc_pid}" ]; then
[ -n "${rc_fast}" ] && return 0
_run_rc_notrunning
return 1
fi
_children_pids=$(pgrep -P ${rc_pid})
echo "Stopping ${name}."
_run_rc_doit "kill -TERM ${rc_pid}" || return 1
# Stopping children is unreliable, so re-send TERM to them
# and wait for both the parent and the children
for _pid in ${_children_pids}; do
kill -TERM ${_pid}
done
wait_for_pids ${rc_pid} ${_children_pids}
}
run_rc_command "$1"