summaryrefslogtreecommitdiff
path: root/sysutils/linux-crashplan/files/crashplan.in
blob: f5d13c57f385ef29e95b5854ab92e5e9fe65b74d (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
#!/bin/sh
#
# $FreeBSD$

# PROVIDE: crashplan
# REQUIRE: DAEMON

. /etc/rc.subr

name="crashplan"
rcvar=${name}_enable

crashplan_bin="%%PREFIX%%/share/crashplan/bin"
command="${crashplan_bin}/CrashPlanEngine"
pidfile="/var/run/CrashPlanEngine.pid"

crashplan_start() {
    local crashplan_poll_selector
    crashplan_poll_selector="-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider"

    /usr/bin/install -d /var/log/crashplan || exit 1

    sed -E -e "s/-Djava.nio.channels.spi.SelectorProvider=[^[:blank:]]+//"      \
           -e "s/SRV_JAVA_OPTS=\"/SRV_JAVA_OPTS=\"${crashplan_poll_selector} /" \
           -e "s/GUI_JAVA_OPTS=\"/GUI_JAVA_OPTS=\"${crashplan_poll_selector} /" \
        -i bak "${crashplan_bin}/run.conf" || exit 1

    /usr/bin/cpuset -l 0 ${command} start
}

start_cmd="${name}_start"
stop_cmd="${command} stop"
status_cmd="${command} status"

load_rc_config ${name}
run_rc_command "$1"