initscript.debian 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #!/bin/bash
  2. ### BEGIN INIT INFO
  3. # Provides: pie-time
  4. # Required-Start: $network
  5. # Required-Stop: $network
  6. # Should-Start: $local_fs
  7. # Should-Stop: $local_fs
  8. # Default-Start: 2 3 4 5
  9. # Default-Stop: 0 1 6
  10. # Short-Description: Desk clock application for the Raspberry Pi
  11. # Description: Desk clock application for the Raspberry Pi
  12. ### END INIT INFO
  13. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  14. DAEMON="/usr/bin/pie_time"
  15. NAME="pie-time"
  16. DESC="Desk clock application for the Raspberry Pi"
  17. RUNDIR="/var/run/pie-time"
  18. PIDFILE="/var/run/pie-time/pie-time.pid"
  19. WORKDIR="/var/lib/pie-time"
  20. CONFIG_PATH="/etc/pie-time.ini"
  21. USER="root"
  22. if [ -f "/etc/default/pie-time" ];then
  23. . "/etc/default/pie-time"
  24. fi
  25. . /lib/lsb/init-functions
  26. set -e
  27. case "$1" in
  28. start)
  29. echo -n "Starting $DESC: "
  30. mkdir -p $RUNDIR
  31. chmod 755 $RUNDIR
  32. chown $USER $RUNDIR
  33. if start-stop-daemon --start --quiet --pidfile $PIDFILE --chuid $USER --chdir $WORKDIR -b -m --exec $DAEMON -- $CONFIG_PATH;then
  34. echo "$NAME."
  35. else
  36. echo "failed"
  37. fi
  38. ;;
  39. stop)
  40. echo -n "Stopping $DESC: "
  41. if start-stop-daemon --stop --retry forever/TERM/1 --quiet --oknodo --pidfile $PIDFILE;then
  42. echo "$NAME."
  43. rm -f $PIDFILE
  44. else
  45. echo "failed"
  46. fi
  47. ;;
  48. restart|force-reload)
  49. ${0} stop
  50. ${0} start
  51. ;;
  52. status)
  53. STATUS="4"
  54. start-stop-daemon --status --pidfile $PIDFILE || STATUS="$?"
  55. case $STATUS in
  56. 0)
  57. echo "$NAME: running"
  58. ;;
  59. 1|3)
  60. echo "$NAME: not running"
  61. ;;
  62. *)
  63. echo "$NAME: unable to determine the status"
  64. ;;
  65. esac
  66. ;;
  67. *)
  68. echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload|status}" >&2
  69. exit 1
  70. ;;
  71. esac
  72. exit 0