mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-05 12:45:47 -07:00
Now that the Tautulli will run on both major versions of Python we can remove the specificity in the init scripts and make them simpler, with the added advantage that some OS's will now run Tautulli through Python 3 instead of Python 2.
81 lines
2.1 KiB
Bash
Executable file
81 lines
2.1 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# PROVIDE: tautulli
|
|
# REQUIRE: DAEMON tautulli
|
|
# KEYWORD: shutdown
|
|
#
|
|
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
|
|
# to enable this service:
|
|
#
|
|
# tautulli_enable (bool): Set to NO by default.
|
|
# Set it to YES to enable it.
|
|
# tautulli_user: The user account Tautulli daemon runs as what
|
|
# you want it to be. It uses 'tautulli' user by
|
|
# default. Do not sets it as empty or it will run
|
|
# as root.
|
|
# tautulli_dir: Directory where Tautulli lives.
|
|
# Default: /usr/local/share/Tautulli
|
|
# tautulli_chdir: Change to this directory before running Tautulli.
|
|
# Default is same as tautulli_dir.
|
|
# tautulli_pid: The name of the pidfile to create.
|
|
# Default is tautulli.pid in tautulli_dir.
|
|
PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="tautulli"
|
|
rcvar=${name}_enable
|
|
|
|
load_rc_config ${name}
|
|
|
|
: ${tautulli_enable:="NO"}
|
|
: ${tautulli_user:="tautulli"}
|
|
: ${tautulli_dir:="/usr/local/share/Tautulli"}
|
|
: ${tautulli_chdir:="${tautulli_dir}"}
|
|
: ${tautulli_pid:="${tautulli_dir}/tautulli.pid"}
|
|
: ${tautulli_flags:=""}
|
|
|
|
status_cmd="${name}_status"
|
|
stop_cmd="${name}_stop"
|
|
|
|
command="${tautulli_dir}/Tautulli.py"
|
|
command_args="--daemon --pidfile ${tautulli_pid} --quiet --nolaunch ${tautulli_flags}"
|
|
|
|
# Ensure user is root when running this script.
|
|
if [ `id -u` != "0" ]; then
|
|
echo "Oops, you should be root before running this!"
|
|
exit 1
|
|
fi
|
|
|
|
verify_tautulli_pid() {
|
|
# Make sure the pid corresponds to the Tautulli process.
|
|
if [ -f ${tautulli_pid} ]; then
|
|
pid=`cat ${tautulli_pid} 2>/dev/null`
|
|
ps -p ${pid} | grep -q "python ${tautulli_dir}/Tautulli.py"
|
|
return $?
|
|
else
|
|
return 0
|
|
fi
|
|
}
|
|
|
|
# Try to stop Tautulli cleanly by sending SIGTERM
|
|
tautulli_stop() {
|
|
echo "Stopping $name"
|
|
verify_tautulli_pid
|
|
if [ -n "${pid}" ]; then
|
|
kill ${pid}
|
|
wait_for_pids ${pid}
|
|
echo "Stopped."
|
|
fi
|
|
}
|
|
|
|
tautulli_status() {
|
|
verify_tautulli_pid
|
|
if [ -n "${pid}" ]; then
|
|
echo "$name is running as ${pid}."
|
|
else
|
|
echo "$name is not running."
|
|
fi
|
|
}
|
|
|
|
run_rc_command "$1"
|