Parcourir la source

Make OSX install happier about running on non-default volume.

svn:r3777
Nick Mathewson il y a 20 ans
Parent
commit
e1e7ffcae7
3 fichiers modifiés avec 22 ajouts et 6 suppressions
  1. 14 4
      contrib/osx/Tor
  2. 7 1
      contrib/osx/TorPostflight
  3. 1 1
      contrib/osx/TorStartupInfo.plist

+ 14 - 4
contrib/osx/Tor

@@ -1,11 +1,21 @@
 #!/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
 
 ##
@@ -25,7 +35,7 @@ StartService ()
 # 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
 }

+ 7 - 1
contrib/osx/TorPostflight

@@ -56,4 +56,10 @@ if [ ! -e /var/log/tor -o -L /var/log/tor ]; then
   cd /var/log
   rm -f tor
   ln -sf $LOGDIR tor
-fi
+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

+ 1 - 1
contrib/osx/TorStartupInfo.plist

@@ -3,7 +3,7 @@
 <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>