#!/bin/sh
-TORCONF=/Library/Tor/torrc
-TORDIR=/Library/Tor/var/lib/tor
+TORLOC=/Library/StartupItems/Tor/Tor.loc
+
+if [ -f $TORLOC ]; then
+ TORDIR=`cat /Library/StartupItems/Tor/Tor.loc`
+ if [ "x$TORDIR" = "x" -o ! -d $TORDIR -o ! -x $TORDIR/tor ]; then
+ TORDIR=/Library/Tor
+ fi
+else
+ TORDIR=/Library/Tor
+fi
+TORCONF=$TORDIR/torrc
+TORDATA=$TORDIR/var/lib/tor
TORPID=/var/run/Tor.pid
TORUSER=_tor
TORGROUP=daemon
-TORCMD=/Library/Tor/tor
+TORCMD=$TORDIR/tor
TORLOG=/var/log/tor/tor.log
##
# Tentative
# Making sure it is not running (I know it is not a best approarch)
killall tor 2>/dev/null
- $TORCMD -f $TORCONF --runasdaemon 1 --pidfile $TORPID --datadirectory $TORDIR --user $TORUSER --group $TORGROUP --log "notice file $TORLOG" &
+ $TORCMD -f "$TORCONF" --runasdaemon 1 --pidfile "$TORPID" --datadirectory "$TORDATA" --user "$TORUSER" --group "$TORGROUP" --log "notice file $TORLOG" &
fi
fi
}
cd /var/log
rm -f tor
ln -sf $LOGDIR tor
-fi
\ No newline at end of file
+fi
+
+if [ ! -d /Library/StartupItems/Tor ]; then
+ mkdir -p /Library/StartupItems/Tor
+fi
+rm -f /Library/StartupItems/Tor/Tor.loc
+echo "$TARGET" > /Library/StartupItems/Tor/Tor.loc
<plist version="1.0">
<dict>
<key>CFBundleGetInfoString</key>
- <string>Tor Startup Script (experimental)</string>
+ <string>Tor Startup Script</string>
<key>CFBundleName</key>
<string>Tor Startup Script</string>
<key>CFBundleSortVersionString</key>