From 14465d0b026716c1cf0951782fd2e255656adcbe Mon Sep 17 00:00:00 2001 From: Chris Rees Date: Sat, 8 Dec 2012 15:33:27 +0000 Subject: Various rc fixes; - Add transmission_web_home to use customised web interface Requested by: Hanson Wong - transmission should use a pidfile - Style fixes (mostly quoting) - Empty value in _user is clobbered with default, so remove warning Use USERS and GROUPS, and move home directory handling to rc script where it belongs; now users can be changed on the fly without issue Feature safe: yes --- net-p2p/transmission-cli/Makefile | 2 +- net-p2p/transmission-cli/files/transmission.in | 40 +++++++++++++++++++------- 2 files changed, 31 insertions(+), 11 deletions(-) (limited to 'net-p2p/transmission-cli') diff --git a/net-p2p/transmission-cli/Makefile b/net-p2p/transmission-cli/Makefile index 058da2ac8620..31e0c37151b4 100644 --- a/net-p2p/transmission-cli/Makefile +++ b/net-p2p/transmission-cli/Makefile @@ -82,7 +82,7 @@ general-patch: post-patch: general-patch general-install: -.ifndef (NOPORTDOCS) +.if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${DOCSDIR} .for i in ${DOCS} @${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR} diff --git a/net-p2p/transmission-cli/files/transmission.in b/net-p2p/transmission-cli/files/transmission.in index def430c8b88b..41a2d743d54a 100644 --- a/net-p2p/transmission-cli/files/transmission.in +++ b/net-p2p/transmission-cli/files/transmission.in @@ -4,6 +4,7 @@ # # PROVIDE: transmission # REQUIRE: DAEMON +# KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable this service: # @@ -18,28 +19,47 @@ # Default: %%PREFIX%%/etc/transmission/home/Downloads # transmission_user: The user account transmission daemon runs as what # you want it to be. It uses 'transmission' user by -# default. Do not sets it as empty or it will run -# as root. +# default. +# transmission_web_home: Use alternative directory for the web interface +# files, such as javascript, html and graphics. # . /etc/rc.subr -name="transmission" +name=transmission rcvar=transmission_enable -command=%%PREFIX%%/bin/transmission-daemon +load_rc_config $name -load_rc_config ${name} +: ${transmission_enable:=NO} +: ${transmission_conf_dir=%%PREFIX%%/etc/transmission/home} +: ${transmission_download_dir=%%PREFIX%%/etc/transmission/home/Downloads} +: ${transmission_user:=transmission} +transmission_group=${transmission_group:-$transmission_user} -: ${transmission_enable:="NO"} -: ${transmission_user:="transmission"} -: ${transmission_conf_dir="%%PREFIX%%/etc/transmission/home"} -: ${transmission_download_dir="%%PREFIX%%/etc/transmission/home/Downloads"} +command=%%PREFIX%%/bin/transmission-daemon +pidfile=/var/run/transmission/damon.pid +start_precmd=transmission_prestart transmission_flags=" \ ${transmission_watch_dir:+-c ${transmission_watch_dir}} \ ${transmission_conf_dir:+-g ${transmission_conf_dir}} \ ${transmission_download_dir:+-w ${transmission_download_dir}} \ + ${pidfile:+-x $pidfile} \ ${transmission_flags}" -run_rc_command "$1" +transmission_prestart() +{ + install -d -o $transmission_user ${pidfile%/*} + mkdir -p $transmission_conf_dir $transmission_download_dir + chown $transmission_user:$transmission_group $transmission_download_dir + chown -R $transmission_user:$transmission_group $transmission_conf_dir/* + chgrp $transmission_group $transmission_conf_dir + chmod 1770 $transmission_conf_dir + if [ -n "$transmission_web_home" ]; then + TRANSMISSION_WEB_HOME=$transmission_web_home + export TRANSMISSION_WEB_HOME + fi +} + +run_rc_command $1 -- cgit v1.2.3