transmission.initd 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/usr/bin/openrc-run
  2. # Copyright 1999-2016 Gentoo Foundation
  3. # Distributed under the terms of the GNU General Public License v2
  4. command="/usr/bin/transmission-daemon"
  5. extra_started_commands="reload"
  6. description="Transmission is a fast, easy and free bittorrent client"
  7. description_start="Start transmission-daemon server and web interface"
  8. description_stop="Stop transmission-daemon server and web interface"
  9. description_reload="Reload transmission-daemon settings"
  10. rundir=${rundir:-/run/transmission}
  11. pidfile=${pidfile:-${rundir}/transmission.pid}
  12. config_dir=${config_dir:-/var/lib/transmission/config}
  13. download_dir=${download_dir:-/var/lib/transmission/downloads}
  14. logfile=${logfile:-/var/log/transmission/transmission.log}
  15. runas_user=${runas_user:-transmission:transmission}
  16. retry="TERM/45/QUIT/15"
  17. start_pre() {
  18. command_args="--config-dir ${config_dir} --pid-file ${pidfile}"
  19. command_user="${runas_user}"
  20. # Call mkdir -p in case parent dirs are missing
  21. mkdir -p "${rundir}" "${config_dir}" "${download_dir}"
  22. # Call checkpath to fixup permissions
  23. checkpath -d -o "${runas_user}" "${rundir}" "${config_dir}" "${download_dir}" || return
  24. if [ ! -e "${config_dir}/settings.json" ]; then
  25. # Only set download dir if settings don't exist
  26. # https://bugs.gentoo.org/576640
  27. command_args="${command_args} --download-dir ${download_dir}"
  28. fi
  29. if [ "${logfile}" != syslog ]; then
  30. checkpath -d -o "${runas_user}" /var/log/transmission || return
  31. command_args="${command_args} --logfile ${logfile}"
  32. fi
  33. command_args="${command_args} ${TRANSMISSION_OPTIONS}"
  34. }
  35. reload() {
  36. ebegin "Reloading ${RC_SVCNAME}"
  37. start-stop-daemon --signal HUP --exec "${command}" --pidfile "${pidfile}"
  38. eend $?
  39. }