mirror of
https://git.freebsd.org/ports.git
synced 2025-05-17 09:33:11 -04:00
79 lines
2.9 KiB
Bash
79 lines
2.9 KiB
Bash
#!/bin/sh
|
|
|
|
# PROVIDE: %%PORTNAME%%
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
#
|
|
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
|
|
# to enable this service:
|
|
#
|
|
# %%RC_NAME%%_enable: Set to yes to enable the %%PORTNAME%% service.
|
|
# Default: no
|
|
# %%RC_NAME%%_user: The user account used to run the %%PORTNAME%% 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: %%USER%%
|
|
# %%RC_NAME%%_group: The group account used to run the %%PORTNAME%% 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: %%GROUP%%
|
|
# %%RC_NAME%%_data_dir: Directory where %%PORTNAME%% configuration
|
|
# data is stored.
|
|
# Default: /var/db/%%PORTNAME%%
|
|
# %%RC_NAME%%_ffdetect: Path of the ffdetect binary.
|
|
# Default: %%PREFIX%%/lib/emby-server/bin/ffdetect
|
|
# %%RC_NAME%%_ffmpeg: Path of the ffmpeg binary.
|
|
# Default: %%PREFIX%%/lib/emby-server/bin/ffmpeg
|
|
# %%RC_NAME%%_ffprobe: Path of the ffprobe binary.
|
|
# Default: %%PREFIX%%/lib/emby-server/bin/ffprobe
|
|
# %%RC_NAME%%_pid: Name of the pid file.
|
|
# Default: %%PORTNAME%%.pid
|
|
# %%RC_NAME%%_pid_dir: Path of the pid file.
|
|
# Default: /var/run/emby-server
|
|
|
|
. /etc/rc.subr
|
|
name=%%RC_NAME%%
|
|
rcvar=${name}_enable
|
|
load_rc_config ${name}
|
|
|
|
: ${%%RC_NAME%%_enable:="no"}
|
|
: ${%%RC_NAME%%_user:="%%USER%%"}
|
|
: ${%%RC_NAME%%_group:="%%GROUP%%"}
|
|
: ${%%RC_NAME%%_data_dir:="/var/db/%%PORTNAME%%"}
|
|
: ${%%RC_NAME%%_ffdetect:="%%PREFIX%%/lib/emby-server/bin/ffdetect"}
|
|
: ${%%RC_NAME%%_ffmpeg:="%%PREFIX%%/lib/emby-server/bin/ffmpeg"}
|
|
: ${%%RC_NAME%%_ffprobe:="%%PREFIX%%/lib/emby-server/bin/ffprobe"}
|
|
: ${%%RC_NAME%%_pid:="%%PORTNAME%%.pid"}
|
|
: ${%%RC_NAME%%_pid_dir:="/var/run/emby-server"}
|
|
|
|
pidfile="${%%RC_NAME%%_pid_dir}/${%%RC_NAME%%_pid}"
|
|
command="/usr/sbin/daemon"
|
|
command_args="-r -f -P ${pidfile} %%LOCALBASE%%/bin/dotnet %%PREFIX%%/lib/emby-server/system/EmbyServer.dll \
|
|
-os freebsd \
|
|
-ffdetect ${%%RC_NAME%%_ffdetect} \
|
|
-ffmpeg ${%%RC_NAME%%_ffmpeg} \
|
|
-ffprobe ${%%RC_NAME%%_ffprobe} \
|
|
-programdata ${%%RC_NAME%%_data_dir}"
|
|
|
|
start_precmd=%%RC_NAME%%_start_precmd
|
|
%%RC_NAME%%_start_precmd()
|
|
{
|
|
[ -d ${%%RC_NAME%%_pid_dir} ] || install -d -g ${%%RC_NAME%%_group} -o ${%%RC_NAME%%_user} ${%%RC_NAME%%_pid_dir}
|
|
[ -d ${%%RC_NAME%%_data_dir} ] || install -d -g ${%%RC_NAME%%_group} -o ${%%RC_NAME%%_user} ${%%RC_NAME%%_data_dir}
|
|
|
|
# .NET 6+ use dual mode sockets to avoid the separate AF handling.
|
|
# disable .NET use of V6 if no ipv6 is configured.
|
|
# See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259194#c17
|
|
ifconfig -a -u -G lo | grep -q inet6
|
|
if [ $? == 1 ]; then
|
|
export DOTNET_SYSTEM_NET_DISABLEIPV6=1
|
|
fi
|
|
|
|
if [ `uname -K` -ge 1400092 ]; then
|
|
export CLR_OPENSSL_VERSION_OVERRIDE=30
|
|
fi
|
|
|
|
export LD_LIBRARY_PATH=%%PREFIX%%/lib/emby-server/lib:%%LOCALBASE%%/lib
|
|
}
|
|
|
|
run_rc_command "$1"
|