diff --git a/SparkleShare/sparkleshare.in b/SparkleShare/sparkleshare.in new file mode 100644 index 00000000..6a5e559d --- /dev/null +++ b/SparkleShare/sparkleshare.in @@ -0,0 +1,70 @@ +#!/bin/bash + +pidfile=/tmp/sparkleshare/sparkleshare.pid + +# Create a directory to save the pid to +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 "/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 + ;; + + 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 + ;; + + *) + echo "Usage: sparkleshare {start|stop|restart|help}" + ;; +esac