summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Lewman <andrew@torproject.org>2006-07-27 00:19:36 +0000
committerAndrew Lewman <andrew@torproject.org>2006-07-27 00:19:36 +0000
commita89bc088387c92a49967d0e68ee4b5a89c36d904 (patch)
treeea475bb4d80ea499d9a6d2dfa11cffcf172a3a02
parent99fc0aba61ff800b9b7d2fdcd33da6a87e268872 (diff)
downloadtor-a89bc088387c92a49967d0e68ee4b5a89c36d904.tar.gz
tor-a89bc088387c92a49967d0e68ee4b5a89c36d904.zip
Be better at finding the Tor install path, backup all of Tor just in
case, then blow Tor away svn:r6912
-rw-r--r--contrib/osx/TorPreFlight22
1 files changed, 17 insertions, 5 deletions
diff --git a/contrib/osx/TorPreFlight b/contrib/osx/TorPreFlight
index 8cfb53bca8..01da769269 100644
--- a/contrib/osx/TorPreFlight
+++ b/contrib/osx/TorPreFlight
@@ -1,13 +1,25 @@
#!/bin/sh
# TorPreFlight is invoked before the install begins
-# Find the server keys, if they exist and save them, just in case
-if [ -d /Library/Tor/var/lib/tor/keys ]; then
- tar zcf ~/`date "+%Y-%m-%d"`-Tor-ServerKeys.backup.tar.gz /Library/Tor/var/lib/tor/keys
+# Figure out where Tor is installed
+if [ -f /Library/StartupItems/Tor/Tor.loc ]; then
+ TORPATH=`cat /Library/StartupItems/Tor/Tor.loc`
+else if [ -f /System/Library/LaunchDaemons/net.freehaven.tor ]; then
+ TORPATH=/`grep -A1 "<key>Program</key>" /System/Library/LaunchDaemons/net.freehaven.tor.plist | grep string | cut -d"/" -f2,3`
+else
+ TORPATH="/Library/Tor/"
+fi
+
+# Backup all of Tor, just in case
+if [ -d $TORPATH ]; then
+ tar zcf ~/`date "+%Y-%m-%d"`-Tor.backup.tar.gz $TORPATH
fi
# Remove Tor and everything to do with it
-if [ -f /Library/Tor/uninstall_tor_bundle.sh ]; then
- /Library/Tor/uninstall_tor_bundle.sh
+if [ -f $TORPATH/uninstall_tor_bundle.sh ]; then
+ $TORPATH/uninstall_tor_bundle.sh
+else
+ $PACKAGE_PATH/Contents/Resources/uninstall_tor_bundle.sh
fi
+# This is complete, we have a fresh system on which to install Tor