forked from Lainports/freebsd-ports
47 lines
1.4 KiB
Bash
47 lines
1.4 KiB
Bash
#!/bin/sh
|
|
|
|
# PROVIDE: v2ray
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
|
|
# Add these lines to /etc/rc.conf.local or /etc/rc.conf to enable `v2ray':
|
|
#
|
|
# v2ray_enable (bool): Set to "NO" by default.
|
|
# Set it to "YES" to enable v2ray
|
|
# v2ray_config (path): Set to "%%PREFIX%%/etc/v2ray/config.json" by default
|
|
# Set it to the v2ray server config
|
|
# v2ray_logdir (path): Set to "/var/log/v2ray" by default.
|
|
# Set it to the directory of v2ray log files
|
|
# v2ray_env (str): Set to "" by default.
|
|
# Set it to the desired environment variables
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="v2ray"
|
|
rcvar="${name}_enable"
|
|
|
|
: ${v2ray_enable="NO"}
|
|
: ${v2ray_config="%%PREFIX%%/etc/$name/config.json"}
|
|
: ${v2ray_logdir="/var/log/${name}"}
|
|
: ${v2ray_env=""}
|
|
: ${v2ray_user="%%USER%%"}
|
|
: ${v2ray_group="%%GROUP%%"}
|
|
|
|
asset_env="V2RAY_LOCATION_ASSET=%%PREFIX%%/share/$name"
|
|
pidfile="/var/run/$name.pid"
|
|
procname="%%PREFIX%%/bin/$name"
|
|
command="/usr/sbin/daemon"
|
|
command_args="-c -p ${pidfile} /usr/bin/env ${asset_env} ${v2ray_env} ${procname} -config ${v2ray_config}"
|
|
required_files="${v2ray_config}"
|
|
|
|
start_precmd="v2ray_startprecmd"
|
|
|
|
v2ray_startprecmd() {
|
|
touch "${pidfile}"
|
|
chown ${v2ray_user}:${v2ray_group} "${pidfile}"
|
|
mkdir -p "${v2ray_logdir}"
|
|
chown -R ${v2ray_user}:${v2ray_group} "${v2ray_logdir}"
|
|
}
|
|
|
|
load_rc_config "$name"
|
|
run_rc_command "$1"
|