Browse Source

Uninstall scripts.

Adam Ierymenko 11 years ago
parent
commit
bdc0ed8065
3 changed files with 39 additions and 14 deletions
  1. 12 6
      buildinstaller.sh
  2. 2 0
      installer/linux/uninstall.sh
  3. 25 8
      installer/mac/uninstall.sh

+ 12 - 6
buildinstaller.sh

@@ -1,14 +1,16 @@
 #!/bin/bash
 
-make file2lz4c
+# This script builds the installer for *nix systems. Windows must do everything
+# completely differently, as usual.
 
-if [ ! -f file2lz4c ]; then
-	echo "Build of file2lz4c utility failed, aborting installer build."
+if [ ! -f zerotier-one ]; then
+	echo "Could not find 'zerotier-one' binary, please build before running this script."
 	exit 2
 fi
 
-if [ ! -f zerotier-one ]; then
-	echo "Could not find 'zerotier-one' binary, please build before running this script."
+make -j 2 file2lz4c
+if [ ! -f file2lz4c ]; then
+	echo "Build of file2lz4c utility failed, aborting installer build."
 	exit 2
 fi
 
@@ -34,6 +36,9 @@ mkdir installer-build
 case "$system" in
 
 	Linux)
+		# Canonicalize $machine for some architectures... we use x86
+		# and x64 for Intel stuff. ARM and others should be fine if
+		# we ever ship officially for those.
 		case "$machine" in
 			i386|i486|i586|i686)
 				machine="x86"
@@ -42,9 +47,10 @@ case "$system" in
 				machine="x64"
 				;;
 			*)
-				echo "Unknonwn machine type: $machine"
+				echo "Unsupported machine type: $machine"
 				exit 2
 		esac
+
 		echo "Assembling Linux installer for $machine and ZT1 version $vmajor.$vminor.$revision"
 
 		./file2lz4c installer/linux/uninstall.sh uninstall_sh >installer-build/uninstall_sh.h

+ 2 - 0
installer/linux/uninstall.sh

@@ -37,3 +37,5 @@ echo "as identity.secret and can be manually deleted if you wish. Save it if"
 echo "you wish to re-use the address of this node, as it cannot be regenerated."
 
 echo
+
+exit 0

+ 25 - 8
installer/mac/uninstall.sh

@@ -1,21 +1,38 @@
 #!/bin/bash
 
+export PATH=/bin:/usr/bin:/sbin:/usr/sbin
+
 if [ "$UID" -ne 0 ]; then
-	echo "Must be run as root; try: sudo ./uninstall.sh"
+	echo "Must be run as root; try: sudo $0"
 	exit 1
 fi
 
+echo
+
+echo "This will uninstall ZeroTier One, hit CTRL+C to abort."
+echo "Waiting 5 seconds..."
+sleep 5
+
 ztpath="/Library/Application Support/ZeroTier/One"
 
 echo "Killing any running zerotier-one service..."
-killall zerotier-one
-sleep 5
+killall -TERM zerotier-one >>/dev/null 2>&1
+sleep 3
+killall -KILL zerotier-one >>/dev/null 2>&1
+
+echo "Unloading kernel extension..."
+kextunload "$ztpath/tap.kext"
 
 echo "Erasing binary and support files..."
 cd $ztpath
-rm -fv zerotier-one
-rm -rfv updates.d
-rm -fv *.persist
-rm -rfv networks.d
-rm -fv authtoken.secret
+rm -rfv zerotier-one *.persist authtoken.secret identity.public *.log *.pid *.kext
+
+echo "Done."
+echo
+echo "Your ZeroTier One identity is still preserved in $ztpath"
+echo "as identity.secret and can be manually deleted if you wish. Save it if"
+echo "you wish to re-use the address of this node, as it cannot be regenerated."
+
+echo
 
+exit 0