aboutsummaryrefslogtreecommitdiff
path: root/net-p2p/readarr/files/readarr.in
blob: 75ec18a1dd3b36f23f31cd2b86b31099872a9ff8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/bin/sh

# PROVIDE: %%PORTNAME%%
# REQUIRE: LOGIN network
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf or use sysrc to enable %%PORTNAME%%
# ${%%PORTNAME%%_enable="YES"}
# Optionaly there are some other parameters
# ${%%PORTNAME%%_user="%%USERS%%"}
# ${%%PORTNAME%%_group="%%GROUPS%%"}
# This stores %%PORTNAME%% data (e.g., databases, configs, logs)
# ${%%PORTNAME%%_data_dir="%%PREFIX%%/%%PORTNAME%%"}
# This stores the PID files that daemon will use
# ${%%PORTNAME%%_pid_dir:="/var/run/%%PORTNAME%%"}

. /etc/rc.subr
name=%%PORTNAME%%
rcvar=%%PORTNAME%%_enable
load_rc_config $name

: ${%%PORTNAME%%_enable:=NO}
: ${%%PORTNAME%%_user:="%%USERS%%"}
: ${%%PORTNAME%%_group:="%%GROUPS%%"}
: ${%%PORTNAME%%_exec_dir:="%%DATADIR%%/bin"}
: ${%%PORTNAME%%_data_dir:="%%PREFIX%%/%%PORTNAME%%"}
: ${%%PORTNAME%%_pid_dir:="/var/run/%%PORTNAME%%"}

pidfile="${%%PORTNAME%%_pid_dir}/${name}_daemon.pid"
pidfile_child="${%%PORTNAME%%_pid_dir}/${name}_child.pid"
command="/usr/sbin/daemon"


start_precmd=${name}_precmd
%%PORTNAME%%_precmd() {
    if [ ! -d ${%%PORTNAME%%_data_dir} ]; then
        install -d -o ${%%PORTNAME%%_user} -g ${%%PORTNAME%%_group} ${%%PORTNAME%%_data_dir}
    fi
    if [ ! -d ${%%PORTNAME%%_pid_dir} ]; then
        install -d -o ${%%PORTNAME%%_user} -g ${%%PORTNAME%%_group} ${%%PORTNAME%%_pid_dir}
    fi

    # .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
    # Later version by Keith Chiem through email
    ifconfig -a -u -G lo | grep -q inet6
    if [ $? == 1 ]; then
        export DOTNET_SYSTEM_NET_DISABLEIPV6=1
    fi

    rc_flags="-r -f -p ${pidfile_child} -P ${pidfile} ${%%PORTNAME%%_exec_dir}/Readarr --data=${%%PORTNAME%%_data_dir} --nobrowser >> /dev/null 2>&1 ${rc_flags}"
}

run_rc_command "$1"