Created
February 22, 2019 21:02
-
-
Save DarkCloud14/dc357876485d63bc1901eae8d2955be0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# This is a simple script to uninstall Visual Studio for Mac and the other Xamarin or .Net Core packages from your machine. | |
# Uninstall Visual Studio for Mac | |
read -p "Uninstalling Visual Studio for Mac (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf "/Applications/Visual Studio.app" | |
rm -rf ~/Library/Caches/VisualStudio | |
rm -rf ~/Library/Preferences/VisualStudio | |
rm -rf ~/Library/Preferences/Visual\ Studio | |
rm -rf ~/Library/Logs/VisualStudio | |
rm -rf ~/Library/VisualStudio | |
rm -rf ~/Library/Preferences/Xamarin/ | |
rm -rf ~/Library/Application\ Support/VisualStudio | |
rm -rf ~/Library/Application\ Support/VisualStudio/7.0/LocalInstall/Addins/ | |
;; | |
esac | |
# Uninstall Mono MDK | |
read -p "Uninstall Mono MDK (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf /Library/Frameworks/Mono.framework | |
sudo pkgutil --forget com.xamarin.mono-MDK.pkg | |
;; | |
esac | |
# Uninstall Xamarin.iOS | |
read -p "Uninstall Xamarin iOS (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
rm -rf ~/Library/MonoTouch | |
sudo rm -rf /Library/Frameworks/Xamarin.iOS.framework | |
sudo rm -rf /Developer/MonoTouch | |
sudo pkgutil --forget com.xamarin.xamarin.ios.pkg | |
sudo pkgutil --forget com.xamarin.xamarin-ios-build-host.pkg | |
;; | |
esac | |
# Uninstall Xamarin.Mac | |
read -p "Uninstall Xamarin Mac (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf /Library/Frameworks/Xamarin.Mac.framework | |
rm -rf ~/Library/Xamarin.Mac | |
for xamarinmacpkg in `pkgutil --pkgs=xamarin.mac*`; do | |
sudo pkgutil --force --forget $xamarinmacpkg | |
done | |
;; | |
esac | |
# Uninstall Xamarin.Android | |
read -p "Uninstall Xamarin Android (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf /Developer/MonoDroid | |
sudo rm -rf /Library/Frameworks/Xamarin.Android.framework | |
sudo pkgutil --forget com.xamarin.android.pkg | |
rm -rf ~/Library/MonoAndroid | |
rm -rf ~/Library/Developer/Xamarin/android-sdk-macosx | |
rm -rf ~/Library/Developer/Xamarin/jdk | |
if [ -d ~/Library/Developer/Xamarin ]; then | |
if [ -z "$(ls -A ~/Library/Developer/Xamarin)" ]; then | |
rm -rf ~/Library/Developer/Xamarin | |
fi | |
fi | |
;; | |
esac | |
# Uninstall the Visual Studio for Mac Installer | |
read -p "Uninstalling the Visual Studio for Mac Installer (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf ~/Library/Caches/XamarinInstaller/ | |
sudo rm -rf ~/Library/Caches/VisualStudioInstaller/ | |
sudo rm -rf ~/Library/Logs/XamarinInstaller/ | |
sudo rm -rf ~/Library/Logs/VisualStudioInstaller/ | |
;; | |
esac | |
# Uninstall the Xamarin Profiler | |
read -p "Uninstalling the Xamarin Profiler (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo rm -rf /Applications/Xamarin\ Profiler.app | |
sudo pkgutil --forget com.xamarin.profiler | |
;; | |
esac | |
# Uninstall Workbooks and Inspector | |
read -p "Uninstalling Workbooks and Inspector (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
sudo /Library/Frameworks/Xamarin.Interactive.framework/Versions/Current/uninstall | |
sudo pkgutil --forget --force com.xamarin.Inspector | |
sudo rm -rf /Applications/Xamarin\ Workbooks.app | |
sudo rm -rf /Applications/Xamarin\ Inspector.app | |
sudo rm -rf /Library/Frameworks/Xamarin.Interactive.framework | |
sudo rm -rf /Library/Frameworks/Xamarin.Inspector.framework | |
rm -rf ~/Library/Application\ Support/XamarinStudio-6.0/LocalInstall/Addins/Xamarin.Interactive | |
rm -rf ~/Library/Application\ Support/XamarinStudio-6.0/LocalInstall/Addins/Xamarin.Inspector | |
;; | |
esac | |
read -p "Uninstalling .Net Core (y/n)?" answer | |
case ${answer:0:1} in | |
y|Y ) | |
# this is the common suffix for all the dotnet pkgs | |
dotnet_pkg_name_suffix="com.microsoft.dotnet" | |
dotnet_install_root="/usr/local/share/dotnet" | |
dotnet_path_file="/etc/paths.d/dotnet" | |
dotnet_tool_path_file="/etc/paths.d/dotnet-cli-tools" | |
remove_dotnet_pkgs(){ | |
installed_pkgs=($(pkgutil --pkgs | grep $dotnet_pkg_name_suffix)) | |
for i in "${installed_pkgs[@]}" | |
do | |
echo "Removing dotnet component - \"$i\"" >&2 | |
sudo pkgutil --force --forget "$i" | |
done | |
} | |
remove_dotnet_pkgs | |
[ "$?" -ne 0 ] && echo "Failed to remove dotnet packages." >&2 && exit 1 | |
echo "Deleting install root - $dotnet_install_root" >&2 | |
sudo rm -rf "$dotnet_install_root" | |
sudo rm -f "$dotnet_path_file" | |
sudo rm -f "$dotnet_tool_path_file" | |
echo "dotnet packages removal succeeded." >&2 | |
;; | |
esac |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment