diff options
author | Andrew Lewman <andrew@torproject.org> | 2006-07-27 00:19:36 +0000 |
---|---|---|
committer | Andrew Lewman <andrew@torproject.org> | 2006-07-27 00:19:36 +0000 |
commit | a89bc088387c92a49967d0e68ee4b5a89c36d904 (patch) | |
tree | ea475bb4d80ea499d9a6d2dfa11cffcf172a3a02 /contrib/osx/TorPreFlight | |
parent | 99fc0aba61ff800b9b7d2fdcd33da6a87e268872 (diff) | |
download | tor-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
Diffstat (limited to 'contrib/osx/TorPreFlight')
-rw-r--r-- | contrib/osx/TorPreFlight | 22 |
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 |