diff --git a/SparkleShare/sparkleshare.in b/SparkleShare/sparkleshare.in index ea373c17..251b65ee 100644 --- a/SparkleShare/sparkleshare.in +++ b/SparkleShare/sparkleshare.in @@ -2,76 +2,59 @@ pidfile=/tmp/sparkleshare/sparkleshare.pid -# Create a directory to save the pid to +start() { + if [ -e "${pidfile}" ]; then + sparklepid=`cat ${pidfile}` + if [ -n "`ps -p ${sparklepid} | grep ${sparklepid}`" ]; then + echo "SparkleShare is already running." + exit 0 + else + echo "SparkleShare stale pid file found, starting a new instance." + rm -f $pidfile + fi + fi + + echo -n "Starting SparkleShare... " + mkdir -p /tmp/sparkleshare/ + # Start SparkleShare in the background and save the pid + mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" $2 & + echo $! > ${pidfile} + echo "Done." +} + +stop() { + if [ -e "${pidfile}" ]; then + sparklepid=`cat ${pidfile}` + if [ -n "`ps -p ${sparklepid} | grep ${sparklepid}`" ]; then + echo -n "Stopping SparkleShare... " + kill ${sparklepid} + rm -f ${pidfile} + echo "Done." + else + echo "SparkleShare is not running, removing stale pid file." + rm -f ${pidfile} + fi + else + echo "SparkleShare is not running." + fi +} + case $1 in - start) - if [ -e "${pidfile}" ]; then - sparklepid=`cat ${pidfile}` - if [ -n "`ps -p ${sparklepid} | grep ${sparklepid}`" ] - then - echo "SparkleShare is already running" - exit 0 - else - echo "SparkleShare stale pid file found, starting a new instance" - rm -f $pidfile - fi - fi - - echo -n "Starting SparkleShare..." - mkdir -p /tmp/sparkleshare/ - # Start SparkleShare in the background and save the pid - mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" $2 & - PID=$! - echo $PID > /tmp/sparkleshare/sparkleshare.pid - echo " Done." - ;; - - stop) - if [ -e "${pidfile}" ]; then - sparklepid=`cat ${pidfile}` - if [ -n "`ps -p ${sparklepid} | grep ${sparklepid}`" ]; then - echo -n "Stopping SparkleShare..." - kill ${sparklepid} - rm -f ${pidfile} - echo " Done." - else - echo "SparkleShare isn't running, removing stale pid file" - rm -f ${pidfile} - fi - else - echo "SparkleShare isn't running." - fi - ;; - - restart) - if [ -e "/tmp/sparkleshare/sparkleshare.pid" ]; then - echo -n "Stopping SparkleShare..." - kill `cat /tmp/sparkleshare/sparkleshare.pid` - rm -f /tmp/sparkleshare/sparkleshare.pid - echo " Done." - else - echo "SparkleShare isn't running." - fi - - if [ -e "/tmp/sparkleshare/sparkleshare.pid" ]; then - echo "SparkleShare is already running." - else - echo -n "Starting SparkleShare..." - - # Start SparkleShare in the background and save the pid - mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" $2 & - PID=$! - echo $PID > /tmp/sparkleshare/sparkleshare.pid - echo " Done." - fi - ;; - - --help | help) - mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" --help - ;; - + start|--start) + start + ;; + stop|--stop) + stop + ;; + restart|--restart) + stop + start + ;; + help|--help) + mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" --help + ;; *) - echo "Usage: sparkleshare {start|stop|restart|help}" - ;; - + echo "Usage: sparkleshare {start|stop|restart|help}" + ;; esac +