Skip to content

Instantly share code, notes, and snippets.

@dalisoft
Last active May 4, 2024 22:38
Show Gist options
  • Save dalisoft/2fff6f85bda7d019b4e5181c604e54c2 to your computer and use it in GitHub Desktop.
Save dalisoft/2fff6f85bda7d019b4e5181c604e54c2 to your computer and use it in GitHub Desktop.

Revisions

  1. dalisoft revised this gist May 4, 2024. 1 changed file with 60 additions and 65 deletions.
    125 changes: 60 additions & 65 deletions onedrive-cleanup.sh
    Original file line number Diff line number Diff line change
    @@ -2,91 +2,86 @@
    set -euo pipefail

    UNLOAD_EXTENSIONS=(
    "com.microsoft.OneDriveStandaloneUpdater.plist"
    "com.microsoft.OneDriveStandaloneUpdaterDaemon.plist"
    "com.microsoft.OneDriveUpdaterDaemon.plist"
    "com.microsoft.SyncReporter"
    com.microsoft.OneDriveStandaloneUpdater.plist
    com.microsoft.OneDriveStandaloneUpdaterDaemon.plist
    com.microsoft.OneDriveUpdaterDaemon.plist
    com.microsoft.SyncReporter
    )

    CLEAN_FILES=(
    # System library clean folders
    "/Library/LaunchAgents/com.microsoft.OneDriveStandaloneUpdater.plist"
    "/Library/LaunchDaemons/com.microsoft.OneDriveStandaloneUpdaterDaemon.plist"
    "/Library/LaunchDaemons/com.microsoft.OneDriveUpdaterDaemon.plist"
    "/Library/Logs/Microsoft/OneDrive"
    /Library/LaunchAgents/com.microsoft.OneDriveStandaloneUpdater.plist
    /Library/LaunchDaemons/com.microsoft.OneDriveStandaloneUpdaterDaemon.plist
    /Library/LaunchDaemons/com.microsoft.OneDriveUpdaterDaemon.plist
    /Library/Logs/Microsoft/OneDrive
    # User library clean folders
    "$HOME/Library/Application Scripts/*.OfficeOneDriveSyncIntegration"
    "$HOME/Library/Application Scripts/*.OneDriveStandaloneSuite"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive-mac"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive.FinderSync"
    "$HOME/Library/Application Scripts/com.microsoft.OneDriveLauncher"
    "$HOME/Library/Application Support/com.microsoft.OneDrive"
    "$HOME/Library/Application Support/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Application Support/FileProvider/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Application Support/OneDrive"
    "$HOME/Library/Application Support/OneDriveUpdater"
    "$HOME/Library/Caches/com.microsoft.OneDrive"
    "$HOME/Library/Caches/com.microsoft.OneDriveStandaloneUpdater"
    "$HOME/Library/Caches/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDrive"
    "$HOME/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Caches/OneDrive"
    "$HOME/Library/Containers/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Containers/com.microsoft.OneDrive.FinderSync"
    "$HOME/Library/Containers/com.microsoft.OneDriveLauncher"
    "$HOME/Library/Cookies/com.microsoft.OneDrive.binarycookies"
    "$HOME/Library/Cookies/com.microsoft.OneDriveUpdater.binarycookies"
    "$HOME/Library/Group Containers/*.OfficeOneDriveSyncIntegration"
    "$HOME/Library/Group Containers/*.OneDriveStandaloneSuite"
    "$HOME/Library/Group Containers/*.OneDriveSyncClientSuite"
    "$HOME/Library/Group Containers/*.Kfm"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDrive"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDrive.binarycookies"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater.binarycookies"
    "$HOME/Library/Logs/OneDrive"
    "$HOME/Library/Preferences/*.OneDriveStandaloneSuite.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDrive.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDriveStandaloneUpdater.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDriveUpdater.plist"
    "$HOME/Library/WebKit/com.microsoft.OneDrive"
    ~/Library/Application\ Scripts/*.OfficeOneDriveSyncIntegration
    ~/Library/Application\ Scripts/*.OneDriveStandaloneSuite
    ~/Library/Application\ Scripts/com.microsoft.OneDrive-mac
    ~/Library/Application\ Scripts/com.microsoft.OneDrive.FileProvider
    ~/Library/Application\ Scripts/com.microsoft.OneDrive.FinderSync
    ~/Library/Application\ Scripts/com.microsoft.OneDriveLauncher
    ~/Library/Application\ Support/com.microsoft.OneDrive
    ~/Library/Application\ Support/com.microsoft.OneDriveUpdater
    ~/Library/Application\ Support/FileProvider/com.microsoft.OneDrive.FileProvider
    ~/Library/Application\ Support/OneDrive
    ~/Library/Application\ Support/OneDriveUpdater
    ~/Library/Caches/com.microsoft.OneDrive
    ~/Library/Caches/com.microsoft.OneDriveStandaloneUpdater
    ~/Library/Caches/com.microsoft.OneDriveUpdater
    ~/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDrive
    ~/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDriveUpdater
    ~/Library/Caches/OneDrive
    ~/Library/Containers/com.microsoft.OneDrive.FileProvider
    ~/Library/Containers/com.microsoft.OneDrive.FinderSync
    ~/Library/Containers/com.microsoft.OneDriveLauncher
    ~/Library/Cookies/com.microsoft.OneDrive.binarycookies
    ~/Library/Cookies/com.microsoft.OneDriveUpdater.binarycookies
    ~/Library/Group\ Containers/*.OfficeOneDriveSyncIntegration
    ~/Library/Group\ Containers/*.OneDriveStandaloneSuite
    ~/Library/Group\ Containers/*.OneDriveSyncClientSuite
    ~/Library/Group\ Containers/*.com.microsoft.oneauth
    ~/Library/Group\ Containers/*.com.microsoft.rdc
    ~/Library/Group\ Containers/*.Kfm
    ~/Library/HTTPStorages/com.microsoft.OneDrive
    ~/Library/HTTPStorages/com.microsoft.OneDrive.binarycookies
    ~/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater
    ~/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater.binarycookies
    ~/Library/Logs/OneDrive
    ~/Library/Preferences/*.OneDriveStandaloneSuite.plist
    ~/Library/Preferences/com.microsoft.OneDrive.plist
    ~/Library/Preferences/com.microsoft.OneDriveStandaloneUpdater.plist
    ~/Library/Preferences/com.microsoft.OneDriveUpdater.plist
    ~/Library/WebKit/com.microsoft.OneDrive
    # Application itself
    "/Applications/OneDrive.app"
    /Applications/OneDrive.app
    # Location itself
    "$HOME/OneDrive"
    "$HOME/Library/CloudStorage/OneDrive"
    ~/OneDrive
    ~/OneDrive*
    ~/Library/CloudStorage/OneDrive
    ~/Library/CloudStorage/OneDrive*
    )

    # Kill all OneDrive prefixed processes
    killall OneDrive* 2>/dev/null || echo -n ""
    killall OneDrive* 2>/dev/null || echo -n

    if [ -f "/Applications/OneDrive.app/Contents/Resources/RemoveOneDriveCreds.command" ]; then
    if [ -f /Applications/OneDrive.app/Contents/Resources/RemoveOneDriveCreds.command ]; then
    # shellcheck source=/dev/null
    bash /Applications/OneDrive.app/Contents/Resources/RemoveOneDriveCreds.command
    fi
    if [ -f "/Applications/OneDrive.app/Contents/Resources/ResetOneDriveApp.command" ]; then
    if [ -f /Applications/OneDrive.app/Contents/Resources/ResetOneDriveApp.command ]; then
    # shellcheck source=/dev/null
    bash /Applications/OneDrive.app/Contents/Resources/ResetOneDriveApp.command
    fi

    if [ "$(command -v brew)" ]; then
    brew remove --zap --force --cask onedrive microsoft-auto-update
    else
    echo "Brew required for properly uninstalling"
    exit 1
    fi

    for extension in "${UNLOAD_EXTENSIONS[@]}"; do
    sudo launchctl remove "${extension}" 2>/dev/null || echo -n ""
    sudo launchctl remove ${extension} 2>/dev/null || echo -n

    sudo launchctl unload -w "/Library/LaunchAgents/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w "/Library/LaunchDaemons/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w /Library/LaunchAgents/${extension} 2>/dev/null || echo -n
    sudo launchctl unload -w /Library/LaunchDaemons/${extension} 2>/dev/null || echo -n

    sudo launchctl unload -w "$HOME/Library/LaunchAgents/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w "$HOME/Library/LaunchDaemons/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w ~/Library/LaunchAgents/${extension} 2>/dev/null || echo -n
    sudo launchctl unload -w ~/Library/LaunchDaemons/${extension} 2>/dev/null || echo -n
    done

    for clean_file in "${CLEAN_FILES[@]}"; do
    sudo rm -rf "${clean_file}"
    done
    sudo rm -rf "${CLEAN_FILES[@]}"
  2. dalisoft created this gist May 4, 2024.
    92 changes: 92 additions & 0 deletions onedrive-cleanup.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,92 @@
    #!/bin/bash
    set -euo pipefail

    UNLOAD_EXTENSIONS=(
    "com.microsoft.OneDriveStandaloneUpdater.plist"
    "com.microsoft.OneDriveStandaloneUpdaterDaemon.plist"
    "com.microsoft.OneDriveUpdaterDaemon.plist"
    "com.microsoft.SyncReporter"
    )

    CLEAN_FILES=(
    # System library clean folders
    "/Library/LaunchAgents/com.microsoft.OneDriveStandaloneUpdater.plist"
    "/Library/LaunchDaemons/com.microsoft.OneDriveStandaloneUpdaterDaemon.plist"
    "/Library/LaunchDaemons/com.microsoft.OneDriveUpdaterDaemon.plist"
    "/Library/Logs/Microsoft/OneDrive"
    # User library clean folders
    "$HOME/Library/Application Scripts/*.OfficeOneDriveSyncIntegration"
    "$HOME/Library/Application Scripts/*.OneDriveStandaloneSuite"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive-mac"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Application Scripts/com.microsoft.OneDrive.FinderSync"
    "$HOME/Library/Application Scripts/com.microsoft.OneDriveLauncher"
    "$HOME/Library/Application Support/com.microsoft.OneDrive"
    "$HOME/Library/Application Support/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Application Support/FileProvider/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Application Support/OneDrive"
    "$HOME/Library/Application Support/OneDriveUpdater"
    "$HOME/Library/Caches/com.microsoft.OneDrive"
    "$HOME/Library/Caches/com.microsoft.OneDriveStandaloneUpdater"
    "$HOME/Library/Caches/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDrive"
    "$HOME/Library/Caches/com.plausiblelabs.crashreporter.data/com.microsoft.OneDriveUpdater"
    "$HOME/Library/Caches/OneDrive"
    "$HOME/Library/Containers/com.microsoft.OneDrive.FileProvider"
    "$HOME/Library/Containers/com.microsoft.OneDrive.FinderSync"
    "$HOME/Library/Containers/com.microsoft.OneDriveLauncher"
    "$HOME/Library/Cookies/com.microsoft.OneDrive.binarycookies"
    "$HOME/Library/Cookies/com.microsoft.OneDriveUpdater.binarycookies"
    "$HOME/Library/Group Containers/*.OfficeOneDriveSyncIntegration"
    "$HOME/Library/Group Containers/*.OneDriveStandaloneSuite"
    "$HOME/Library/Group Containers/*.OneDriveSyncClientSuite"
    "$HOME/Library/Group Containers/*.Kfm"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDrive"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDrive.binarycookies"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater"
    "$HOME/Library/HTTPStorages/com.microsoft.OneDriveStandaloneUpdater.binarycookies"
    "$HOME/Library/Logs/OneDrive"
    "$HOME/Library/Preferences/*.OneDriveStandaloneSuite.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDrive.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDriveStandaloneUpdater.plist"
    "$HOME/Library/Preferences/com.microsoft.OneDriveUpdater.plist"
    "$HOME/Library/WebKit/com.microsoft.OneDrive"
    # Application itself
    "/Applications/OneDrive.app"
    # Location itself
    "$HOME/OneDrive"
    "$HOME/Library/CloudStorage/OneDrive"
    )

    # Kill all OneDrive prefixed processes
    killall OneDrive* 2>/dev/null || echo -n ""

    if [ -f "/Applications/OneDrive.app/Contents/Resources/RemoveOneDriveCreds.command" ]; then
    # shellcheck source=/dev/null
    bash /Applications/OneDrive.app/Contents/Resources/RemoveOneDriveCreds.command
    fi
    if [ -f "/Applications/OneDrive.app/Contents/Resources/ResetOneDriveApp.command" ]; then
    # shellcheck source=/dev/null
    bash /Applications/OneDrive.app/Contents/Resources/ResetOneDriveApp.command
    fi

    if [ "$(command -v brew)" ]; then
    brew remove --zap --force --cask onedrive microsoft-auto-update
    else
    echo "Brew required for properly uninstalling"
    exit 1
    fi

    for extension in "${UNLOAD_EXTENSIONS[@]}"; do
    sudo launchctl remove "${extension}" 2>/dev/null || echo -n ""

    sudo launchctl unload -w "/Library/LaunchAgents/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w "/Library/LaunchDaemons/${extension}" 2>/dev/null || echo -n ""

    sudo launchctl unload -w "$HOME/Library/LaunchAgents/${extension}" 2>/dev/null || echo -n ""
    sudo launchctl unload -w "$HOME/Library/LaunchDaemons/${extension}" 2>/dev/null || echo -n ""
    done

    for clean_file in "${CLEAN_FILES[@]}"; do
    sudo rm -rf "${clean_file}"
    done