Fleet logo
Menu An icon indicating that interacting with this button will open the navigation menu.
Fleet logo An 'X' icon indicating that this can be interacted with to close the navigation menu.
Multi platform
Device management   (+ MDM) Orchestration   (+ monitoring) Software management   (+ CVEs) Integrations

Docs
Stories
What people are saying News Ask around Meetups COMPANY
Origins   (Fleet & osquery) The handbook Logos & artwork Why open source?

Pricing Take a tour
Multi platform
Device management + MDM Orchestration + monitoring Software management + CVEs, usage, app library Integrations
Docs
Stories
What people are saying News Ask around Take a tour Meetups COMPANY Origins   (Fleet & osquery) The handbook Logos/artwork Why open source?
Pricing Try it yourself
Software/
TeamViewer
TeamViewer icon

TeamViewer

macOS | 15.65.6

TeamViewer is a versatile remote access and connectivity platform trusted for secure remote desktop control, support, and collaboration.

Self-service install

To install TeamViewer on your work computer:

  1. Navigate to the Fleet Desktop icon in the OS menu bar and select My device.
  2. From the Self-service tab, navigate to TeamViewer and click Install.

Don’t see TeamViewer or the Fleet Desktop icon? Send a link to this page to your IT team.

Uninstall TeamViewer

Run the following command in your terminal to uninstall TeamViewer:

LOGGED_IN_USER=$(scutil <<< "show State:/Users/ConsoleUser" | awk '/Name :/ { print $3 }') && quit_application() { local bundle_id="$1"; local timeout_duration=10; if ! osascript -e "application id \"$bundle_id\" is running" 2>/dev/null; then return fi; local console_user; console_user=$(stat -f "%Su" /dev/console); if [[ $EUID -eq 0 && "$console_user" == "root" ]]; then echo "Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'."; return fi; echo "Quitting application '$bundle_id'..."; local quit_success=false; SECONDS=0; while (( SECONDS < timeout_duration )); do if osascript -e "tell application id \"$bundle_id\" to quit" >/dev/null 2>&1; then if ! pgrep -f "$bundle_id" >/dev/null 2>&1; then echo "Application '$bundle_id' quit successfully."; quit_success=true; break; fi; fi; sleep 1; done if [[ "$quit_success" = false ]]; then echo "Application '$bundle_id' did not quit."; fi } && remove_launchctl_service() { local service="$1"; local booleans=("true" "false"); local plist_status; local paths; local should_sudo; echo "Removing launchctl service ${service}"; for should_sudo in "${booleans[@]}"; do plist_status=$(launchctl list "${service}" 2>/dev/null); if [[ $plist_status == \{* ]]; then if [[ $should_sudo == "true" ]]; then sudo launchctl remove "${service}"; else launchctl remove "${service}"; fi; sleep 1; fi; paths=(; "/Library/LaunchAgents/${service}.plist"; "/Library/LaunchDaemons/${service}.plist"; ); if [[ $should_sudo == "false" ]]; then for i in "${!paths[@]}"; do paths[i]="${HOME}${paths[i]}"; done fi; for path in "${paths[@]}"; do if [[ -e "$path" ]]; then if [[ $should_sudo == "true" ]]; then sudo rm -f -- "$path"; else rm -f -- "$path"; fi; fi; done done } && trash() { local logged_in_user="$1"; local target_file="$2"; local timestamp="$(date +%Y-%m-%d-%s)"; local rand="$(jot -r 1 0 99999)"; if [[ "$target_file" == ~* ]]; then target_file="/Users/$logged_in_user${target_file:1}"; fi; local trash="/Users/$logged_in_user/.Trash"; local file_name="$(basename "${target_file}")"; if [[ -e "$target_file" ]]; then echo "removing $target_file."; mv -f "$target_file" "$trash/${file_name}_${timestamp}_${rand}"; else echo "$target_file doesn't exist."; fi } && remove_launchctl_service 'com.teamviewer.desktop' && remove_launchctl_service 'com.teamviewer.Helper' && remove_launchctl_service 'com.teamviewer.service' && remove_launchctl_service 'com.teamviewer.teamviewer' && remove_launchctl_service 'com.teamviewer.teamviewer_desktop' && remove_launchctl_service 'com.teamviewer.teamviewer_service' && remove_launchctl_service 'com.teamviewer.UninstallerHelper' && remove_launchctl_service 'com.teamviewer.UninstallerWatcher' && quit_application 'com.teamviewer.TeamViewer' && quit_application 'com.teamviewer.TeamViewerUninstaller' && sudo pkgutil --forget 'com.teamviewer.AuthorizationPlugin' && sudo pkgutil --forget 'com.teamviewer.AuthorizationResources' && sudo pkgutil --forget 'com.teamviewer.remoteaudiodriver' && sudo pkgutil --forget 'com.teamviewer.teamviewer.*' && sudo pkgutil --forget 'TeamViewerUninstaller' && sudo rm -rf '/Applications/TeamViewer.app' && sudo rm -rf '/Library/Preferences/com.teamviewer*' && trash $LOGGED_IN_USER '~/Library/Application Support/TeamViewer' && trash $LOGGED_IN_USER '~/Library/Caches/com.teamviewer.TeamViewer' && trash $LOGGED_IN_USER '~/Library/Caches/TeamViewer' && trash $LOGGED_IN_USER '~/Library/Cookies/com.teamviewer.TeamViewer.binarycookies' && trash $LOGGED_IN_USER '~/Library/Logs/TeamViewer' && trash $LOGGED_IN_USER '~/Library/Preferences/com.teamviewer*' && trash $LOGGED_IN_USER '~/Library/Saved Application State/com.teamviewer.TeamViewer.savedState'

Is TeamViewer up to date?

Run this query in Fleet to find old versions of TeamViewer across all your computers:

SELECT 1 FROM apps WHERE bundle_identifier = 'com.teamviewer.TeamViewer' AND bundle_short_version <= '15.65.6';

Share

Share this article on Hacker News Share this article on LinkedIn Share this article on Twitter
Docs REST API Guides
Fleet logo
Multi platform Device management Orchestration Software management Integrations Pricing
Documentation Support Docs API Release notes Get your license
Company About News Jobs Logos/artwork Why open source?
ISO 27001 coming soon a small checkmarkSOC2 Type 2 Creative Commons Licence CC BY-SA 4.0
© 2025 Fleet Inc. Privacy
Slack logo GitHub logo LinkedIn logo X (Twitter) logo Youtube logo Mastadon logo
Tried Fleet yet?

Get started with Fleet

Start
continue
×