aboutsummaryrefslogtreecommitdiff
path: root/net/shadowsocks-libev
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2013-11-27 22:04:32 +0000
committerXin LI <delphij@FreeBSD.org>2013-11-27 22:04:32 +0000
commit6169af5396bd16b5205bf60d8b326a128fb8a973 (patch)
tree4daa5e902949bfeb40334ba579fda29494d73602 /net/shadowsocks-libev
parent197f88a8d63b79ef43e88e93c5acde61a2b7274c (diff)
downloadports-6169af5396bd16b5205bf60d8b326a128fb8a973.tar.gz
ports-6169af5396bd16b5205bf60d8b326a128fb8a973.zip
Notes
Diffstat (limited to 'net/shadowsocks-libev')
-rw-r--r--net/shadowsocks-libev/Makefile5
-rw-r--r--net/shadowsocks-libev/files/shadowsocks_libev.in28
-rw-r--r--net/shadowsocks-libev/pkg-plist4
3 files changed, 14 insertions, 23 deletions
diff --git a/net/shadowsocks-libev/Makefile b/net/shadowsocks-libev/Makefile
index 9db3728d39e7..954258730c9b 100644
--- a/net/shadowsocks-libev/Makefile
+++ b/net/shadowsocks-libev/Makefile
@@ -3,6 +3,7 @@
PORTNAME= shadowsocks-libev
PORTVERSION= 1.4.0
+PORTREVISION= 1
CATEGORIES= net
MASTER_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/archive/${GH_TAGNAME}.tar.gz?dummy=/
@@ -22,4 +23,8 @@ USES= gmake
USE_RC_SUBR= shadowsocks_libev
+post-install:
+ ${MKDIR} ${STAGEDIR}${ETCDIR}
+ ${CP} ${WRKSRC}/debian/config.json ${STAGEDIR}${ETCDIR}/config.json.sample
+
.include <bsd.port.mk>
diff --git a/net/shadowsocks-libev/files/shadowsocks_libev.in b/net/shadowsocks-libev/files/shadowsocks_libev.in
index 2b28789782a4..8a21f910cfa6 100644
--- a/net/shadowsocks-libev/files/shadowsocks_libev.in
+++ b/net/shadowsocks-libev/files/shadowsocks_libev.in
@@ -8,15 +8,8 @@
# Add the following lines to /etc/rc.conf to enable shadowsocks-libev:
# shadowsocks_libev_enable (bool): Set to "NO" by default.
# Set to "YES" to enable shadowsocks-libev.
-# shadowsocks_libev_host (ip addr/hostname): Set to "0.0.0.0" by default.
-# shadowsocks_libev_port (port number): Set to 8388 by default.
-# shadowsocks_libev_localport (local port): Set to 1080 by default.
-# shadowsocks_libev_password (password): Set to ""(null) by default.
-# shadowsocks_libev_encrypt_method (encrypt method): Set to rc4 by default.
-# Available methods: table, rc4, aes-128-cfb, aes-192-cfb, aes-256-cfb,
-# bf-cfb, camellia-128-cfb, camellia-192-cfb, camellia-256-cfb,
-# cast5-cfb, des-cfb, idea-cfb, rc2-cfb and seed-cfb
-# shadowsocks_libev_timeout (time): Set to "300" seconds by default.
+# shadowsocks_libev_config (path): Shadowsocks config file.
+# Defaults to "%%PREFIX%%/etc/shadowsocks-libev/config.json"
. /etc/rc.subr
@@ -28,23 +21,12 @@ rcvar=shadowsocks_libev_enable
load_rc_config $name
: ${shadowsocks_libev_enable:="NO"}
-: ${shadowsocks_libev_host="0.0.0.0"}
-: ${shadowsocks_libev_port=8388}
-: ${shadowsocks_libev_localport=1080}
-: ${shadowsocks_libev_password=""}
-: ${shadowsocks_libev_encrypt_method="rc4"}
-: ${shadowsocks_libev_timeout="300"}
+: ${shadowsocks_libev_config="%%PREFIX%%/etc/shadowsocks-libev/config.json"}
command="%%PREFIX%%/bin/ss-server"
pidfile="/var/run/shadowsocks-libev.pid"
+required_files="${shadowsocks_libev_config}"
-: ${shadowsocks_libev_flags:="-s ${shadowsocks_libev_host} \
- -p ${shadowsocks_libev_port} \
- -l ${shadowsocks_libev_localport} \
- -k ${shadowsocks_libev_password} \
- -m ${shadowsocks_libev_encrypt_method} \
- -f ${pidfile} \
- -t ${shadowsocks_libev_timeout}"}
-
+command_args="-f $pidfile -c $shadowsocks_libev_config"
run_rc_command "$1"
diff --git a/net/shadowsocks-libev/pkg-plist b/net/shadowsocks-libev/pkg-plist
index a72fa0ccf34c..1cedf172d8b1 100644
--- a/net/shadowsocks-libev/pkg-plist
+++ b/net/shadowsocks-libev/pkg-plist
@@ -1,3 +1,7 @@
bin/ss-local
bin/ss-server
man/man8/shadowsocks.8.gz
+@unexec if cmp -s %D/etc/shadowsocks-libev/config.json %D/etc/shadowsocks-libev/config.json.sample ; then rm -f %D/etc/shadowsocks-libev/config.json ; fi
+etc/shadowsocks-libev/config.json.sample
+@exec if [ ! -f %D/etc/shadowsocks-libev/config.json ]; then cp -p %D/%F %B/config.json ; fi
+@dirrm etc/shadowsocks-libev