#!/bin/sh

# $FreeBSD: head/multimedia/emby-server/files/emby-server.in 483303 2018-10-28 14:57:52Z woodsb02 $
#
# PROVIDE: emby-server
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
# to enable this service:
#
# emby_server_enable: Set to yes to enable the emby-server service.
#			Default: no
# emby_server_user: The user account used to run the emby-server daemon.
#			This is optional, however do not specifically set this to an
#			empty string as this will cause the daemon to run as root.
#			Default: emby
# emby_server_group: The group account used to run the emby-server daemon.
#			This is optional, however do not specifically set this to an
#			empty string as this will cause the daemon to run with group wheel.
#			Default: emby
# emby_server_data_dir: Directory where emby-server configuration
#			data is stored.
#			Default: /var/db/emby-server
# emby_server_ffmpeg: Path of the ffmpeg binary.
#			Default: %%PEFIX%%/lib/emby-server/bin/ffmpeg
# emby_server_ffprobe: Path of the ffprobe binary.
#			Default: %%PEFIX%%/lib/emby-server/bin/ffprobe

. /etc/rc.subr
name=emby_server
rcvar=${name}_enable
load_rc_config ${name}

[ -z "${emby_server_user}" ] && emby_server_user=emby
[ -z "${emby_server_group}" ] && emby_server_group=emby
[ -z "${emby_server_data_dir}" ] && emby_server_data_dir=/var/db/emby-server
[ -z "${emby_server_ffmpeg}" ] && emby_server_ffmpeg=/usr/local/lib/emby-server/bin/ffmpeg
[ -z "${emby_server_ffprobe}" ] && emby_server_ffprobe=/usr/local/lib/emby-server/bin/ffprobe

: ${emby_server_enable:="no"}
: ${emby_server_user:="emby"}
: ${emby_server_group:="emby"}
: ${emby_server_data_dir:="/var/db/emby-server"}
: ${emby_server_ffmpeg:="/usr/local/lib/emby-server/bin/ffmpeg"}
: ${emby_server_ffprobe:="/usr/local/lib/emby-server/bin/ffprobe"}

export LD_LIBRARY_PATH=/usr/local/lib/emby-server/lib

pidfile="/var/run/emby-server.pid"
procname="/usr/local/bin/mono"
command="/usr/sbin/daemon"
command_args="-f -p ${pidfile} ${procname} /usr/local/lib/emby-server/system/EmbyServer.exe \
	-os freebsd \
	-ffmpeg ${emby_server_ffmpeg} \
	-ffprobe ${emby_server_ffprobe} \
	-programdata ${emby_server_data_dir} \
	-updatepackage emby-server-freebsd_{version}_amd64.txz"

start_precmd=emby_server_precmd
emby_server_precmd()
{
	[ -f ${pidfile} ] || install -g ${emby_server_group} -o ${emby_server_user} -- /dev/null ${pidfile}
	[ -d ${emby_server_data_dir} ] || install -d -g ${emby_server_group} -o ${emby_server_user} -- ${emby_server_data_dir}
}

stop_postcmd=emby_server_postcmd
emby_server_postcmd()
{
	rm -f ${pidfile}
}

run_rc_command "$1"

