From a07e73c7dd739ed916160d437c11e811e042be1f Mon Sep 17 00:00:00 2001 From: allenhouchins <32207388+allenhouchins@users.noreply.github.com> Date: Tue, 9 Jun 2026 14:30:48 +0000 Subject: [PATCH] Update Fleet-maintained apps. Generated automatically with cmd/maintained-apps. --- .../outputs/amazon-workspaces/windows.json | 6 +++--- ee/maintained-apps/outputs/aws-cli/windows.json | 8 ++++---- ee/maintained-apps/outputs/clion/darwin.json | 8 ++++---- ee/maintained-apps/outputs/clockify/darwin.json | 4 ++-- .../outputs/connect-fonts/darwin.json | 8 ++++---- ee/maintained-apps/outputs/cursor/darwin.json | 8 ++++---- .../outputs/dbeaver-enterprise/windows.json | 8 ++++---- .../outputs/dbeaverlite/windows.json | 8 ++++---- ee/maintained-apps/outputs/discord/darwin.json | 8 ++++---- ee/maintained-apps/outputs/discord/windows.json | 8 ++++---- .../outputs/docker-desktop/darwin.json | 14 +++++++------- ee/maintained-apps/outputs/docker/windows.json | 6 +++--- .../outputs/google-chrome/darwin.json | 4 ++-- .../outputs/google-chrome/windows.json | 4 ++-- .../outputs/grammarly-desktop/darwin.json | 8 ++++---- ee/maintained-apps/outputs/granola/darwin.json | 8 ++++---- ee/maintained-apps/outputs/granola/windows.json | 8 ++++---- ee/maintained-apps/outputs/imazing/windows.json | 6 +++--- .../outputs/libreoffice/windows.json | 8 ++++---- ee/maintained-apps/outputs/ollama/darwin.json | 8 ++++---- .../outputs/openvpn-connect/windows.json | 8 ++++---- ee/maintained-apps/outputs/postman/darwin.json | 8 ++++---- ee/maintained-apps/outputs/postman/windows.json | 8 ++++---- ee/maintained-apps/outputs/proxyman/darwin.json | 8 ++++---- ee/maintained-apps/outputs/reaper/darwin.json | 8 ++++---- ee/maintained-apps/outputs/reaper/windows.json | 8 ++++---- ee/maintained-apps/outputs/slack/windows.json | 8 ++++---- ee/maintained-apps/outputs/warp/darwin.json | 6 +++--- 28 files changed, 105 insertions(+), 105 deletions(-) diff --git a/ee/maintained-apps/outputs/amazon-workspaces/windows.json b/ee/maintained-apps/outputs/amazon-workspaces/windows.json index 59d1ceefebf..6d222ff97bc 100644 --- a/ee/maintained-apps/outputs/amazon-workspaces/windows.json +++ b/ee/maintained-apps/outputs/amazon-workspaces/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "5.32.2.5905", + "version": "5.33.0.5939", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'Amazon WorkSpaces' AND publisher = 'Amazon Web Services, Inc';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Amazon WorkSpaces' AND publisher = 'Amazon Web Services, Inc' AND version_compare(version, '5.32.2.5905') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Amazon WorkSpaces' AND publisher = 'Amazon Web Services, Inc' AND version_compare(version, '5.33.0.5939') < 0);" }, "installer_url": "https://d2td7dqidlhjx7.cloudfront.net/prod/global/windows/Amazon+WorkSpaces.msi", "install_script_ref": "8959087b", "uninstall_script_ref": "24059738", - "sha256": "d92852c27efd33f349da727f6a7d2c5622441bf7fdb1a00a3132e4a4988f3f96", + "sha256": "b2d463cd6d0124a6ea887d4d1f3c3457fa32ade448b6eb3e29db1ecd07a356c9", "default_categories": [ "Productivity" ], diff --git a/ee/maintained-apps/outputs/aws-cli/windows.json b/ee/maintained-apps/outputs/aws-cli/windows.json index 55c0f5745df..9b312db788b 100644 --- a/ee/maintained-apps/outputs/aws-cli/windows.json +++ b/ee/maintained-apps/outputs/aws-cli/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "2.34.63", + "version": "2.34.64", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services' AND version_compare(version, '2.34.63') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'AWS Command Line Interface v2 %' AND publisher = 'Amazon Web Services' AND version_compare(version, '2.34.64') < 0);" }, - "installer_url": "https://awscli.amazonaws.com/AWSCLIV2-2.34.63.msi", + "installer_url": "https://awscli.amazonaws.com/AWSCLIV2-2.34.64.msi", "install_script_ref": "8959087b", "uninstall_script_ref": "58bcd016", - "sha256": "6c3a583a96cf92905c5b01ede3456e7a4a5c90f4a77a3058140952bf956f2ccf", + "sha256": "a45be95e0b5ce8f42c3334dd2e7a001805a467ed4e7df4a6a336a5e4c01051d8", "default_categories": [ "Developer tools" ], diff --git a/ee/maintained-apps/outputs/clion/darwin.json b/ee/maintained-apps/outputs/clion/darwin.json index 9c95e638063..4844dbe6756 100644 --- a/ee/maintained-apps/outputs/clion/darwin.json +++ b/ee/maintained-apps/outputs/clion/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "2026.1.2", + "version": "2026.1.3", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.jetbrains.CLion';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.jetbrains.CLion' AND version_compare(bundle_short_version, '2026.1.2') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.jetbrains.CLion' AND version_compare(bundle_short_version, '2026.1.3') < 0);" }, - "installer_url": "https://download.jetbrains.com/cpp/CLion-2026.1.2-aarch64.dmg", + "installer_url": "https://download.jetbrains.com/cpp/CLion-2026.1.3-aarch64.dmg", "install_script_ref": "0eea3e67", "uninstall_script_ref": "efb3480e", - "sha256": "b1c3300c5fa621fc7feba701aef771a7e814dfea80dac516aa81821213c8b631", + "sha256": "4073f514213ffcaf785dd6036d07f740feaadfd6a0efcb57c862ac54fbe7953f", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/clockify/darwin.json b/ee/maintained-apps/outputs/clockify/darwin.json index eaccb1ba4e5..f63da5efba9 100644 --- a/ee/maintained-apps/outputs/clockify/darwin.json +++ b/ee/maintained-apps/outputs/clockify/darwin.json @@ -1,10 +1,10 @@ { "versions": [ { - "version": "2.12.4", + "version": "2.12.5", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'coing.ClockifyDesktop';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'coing.ClockifyDesktop' AND version_compare(bundle_short_version, '2.12.4') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'coing.ClockifyDesktop' AND version_compare(bundle_short_version, '2.12.5') < 0);" }, "installer_url": "https://clockify.me/downloads/ClockifyDesktop.zip", "install_script_ref": "de01ae28", diff --git a/ee/maintained-apps/outputs/connect-fonts/darwin.json b/ee/maintained-apps/outputs/connect-fonts/darwin.json index b90ce20eea8..5c18eaea6d9 100644 --- a/ee/maintained-apps/outputs/connect-fonts/darwin.json +++ b/ee/maintained-apps/outputs/connect-fonts/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "28.1.4", + "version": "28.1.5", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.extensis.SuitcaseFusion';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.extensis.SuitcaseFusion' AND version_compare(bundle_short_version, '28.1.4') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.extensis.SuitcaseFusion' AND version_compare(bundle_short_version, '28.1.5') < 0);" }, - "installer_url": "https://bin.extensis.com/ConnectFonts-M-28-1-4.dmg", + "installer_url": "https://bin.extensis.com/ConnectFonts-M-28-1-5.dmg", "install_script_ref": "2f23cef8", "uninstall_script_ref": "4a5a730b", - "sha256": "3bce1e36faad24aa42f4ededb132c78439a3ed69d56bf0ac61e70f2c3b341c91", + "sha256": "8e8b35781729855397922fe7742a84d47dbb2a559a56c49eaef85fd8c8026fbc", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/cursor/darwin.json b/ee/maintained-apps/outputs/cursor/darwin.json index bc92b7c0b23..8fe6d9df6f5 100644 --- a/ee/maintained-apps/outputs/cursor/darwin.json +++ b/ee/maintained-apps/outputs/cursor/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "3.7.19", + "version": "3.7.21", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.todesktop.230313mzl4w4u92';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.todesktop.230313mzl4w4u92' AND version_compare(bundle_short_version, '3.7.19') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.todesktop.230313mzl4w4u92' AND version_compare(bundle_short_version, '3.7.21') < 0);" }, - "installer_url": "https://downloads.cursor.com/production/80c653c2c3528e65016a0d304b54486084b470bb/darwin/arm64/Cursor-darwin-arm64.zip", + "installer_url": "https://downloads.cursor.com/production/517f696d8ab6c53eb04fbfdaae705cd146bf346e/darwin/arm64/Cursor-darwin-arm64.zip", "install_script_ref": "5147ff0b", "uninstall_script_ref": "9d80ae1c", - "sha256": "6afb577260c9ede66c0ad7e1a023cabc5eae86b9b53691b52e2bbf5ee16c82c2", + "sha256": "260331dd3d601b82f7900f05e44ba895a2ee69d456783a401285cd6a07976507", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/dbeaver-enterprise/windows.json b/ee/maintained-apps/outputs/dbeaver-enterprise/windows.json index d9de3588897..e8b75c22e80 100644 --- a/ee/maintained-apps/outputs/dbeaver-enterprise/windows.json +++ b/ee/maintained-apps/outputs/dbeaver-enterprise/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "26.0.0", + "version": "26.1.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'DBeaverEE %' AND publisher = 'DBeaver Corp';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'DBeaverEE %' AND publisher = 'DBeaver Corp' AND version_compare(version, '26.0.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'DBeaverEE %' AND publisher = 'DBeaver Corp' AND version_compare(version, '26.1.0') < 0);" }, - "installer_url": "https://downloads.dbeaver.net/enterprise/26.0.0/dbeaver-ee-26.0.0-windows-x86_64.exe", + "installer_url": "https://downloads.dbeaver.net/enterprise/26.1.0/dbeaver-ee-26.1.0-windows-x86_64.exe", "install_script_ref": "d217c97c", "uninstall_script_ref": "bbffac6a", - "sha256": "5ad29a11b254045b124364e1d335403faae1f6b420c036d77b23999e334765d0", + "sha256": "ba8e816a065564b7abcf2487ea0b1f28ec9e2427ba4d8aef9da3dfe15e1ba99e", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/dbeaverlite/windows.json b/ee/maintained-apps/outputs/dbeaverlite/windows.json index f60c5d5ea87..c9f3b6a8442 100644 --- a/ee/maintained-apps/outputs/dbeaverlite/windows.json +++ b/ee/maintained-apps/outputs/dbeaverlite/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "26.0.0", + "version": "26.1.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'DBeaverLite %' AND publisher = 'DBeaver Corp';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'DBeaverLite %' AND publisher = 'DBeaver Corp' AND version_compare(version, '26.0.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'DBeaverLite %' AND publisher = 'DBeaver Corp' AND version_compare(version, '26.1.0') < 0);" }, - "installer_url": "https://downloads.dbeaver.net/lite/26.0.0/dbeaver-le-26.0.0-windows-x86_64.exe", + "installer_url": "https://downloads.dbeaver.net/lite/26.1.0/dbeaver-le-26.1.0-windows-x86_64.exe", "install_script_ref": "f305c446", "uninstall_script_ref": "6763cb51", - "sha256": "11b33c8d282e1e4ccd304da4d1c5c8677d380312c104e509cc5e5ded5367852d", + "sha256": "a95241f4f482f8fd552c018f29166ff5f2329102c848eb2787264e88991def41", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/discord/darwin.json b/ee/maintained-apps/outputs/discord/darwin.json index cc45ebef701..c3f8d3ca467 100644 --- a/ee/maintained-apps/outputs/discord/darwin.json +++ b/ee/maintained-apps/outputs/discord/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "0.0.393", + "version": "0.0.394", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.hnc.Discord';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.hnc.Discord' AND version_compare(bundle_short_version, '0.0.393') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.hnc.Discord' AND version_compare(bundle_short_version, '0.0.394') < 0);" }, - "installer_url": "https://dl.discordapp.net/apps/osx/0.0.393/Discord.dmg", + "installer_url": "https://dl.discordapp.net/apps/osx/0.0.394/Discord.dmg", "install_script_ref": "de3e67db", "uninstall_script_ref": "46a242eb", - "sha256": "84cb4560a6f46034780d6c534c396591fe4f0550646b83e853d5d76df5438cf2", + "sha256": "0a899264f7862be99977ad747c646162d6eb139d3ec342d36fbfd0b721f099bc", "default_categories": [ "Communication" ] diff --git a/ee/maintained-apps/outputs/discord/windows.json b/ee/maintained-apps/outputs/discord/windows.json index 8e0819f2988..61f29e953ce 100644 --- a/ee/maintained-apps/outputs/discord/windows.json +++ b/ee/maintained-apps/outputs/discord/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "1.0.9240", + "version": "1.0.9241", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'Discord' AND publisher = 'Discord Inc.';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Discord' AND publisher = 'Discord Inc.' AND version_compare(version, '1.0.9240') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Discord' AND publisher = 'Discord Inc.' AND version_compare(version, '1.0.9241') < 0);" }, - "installer_url": "https://stable.dl2.discordapp.net/distro/app/stable/win/x64/1.0.9240/DiscordSetup.exe", + "installer_url": "https://stable.dl2.discordapp.net/distro/app/stable/win/x64/1.0.9241/DiscordSetup.exe", "install_script_ref": "fd04e860", "uninstall_script_ref": "73fc6eff", - "sha256": "851ef42f56604c5b0998a683ac603b986898ddc1d06246e4e6ef8990a0fef005", + "sha256": "99909799082c39500bd6abe13ec7752fbe13ee659a75ddab585ff727d1d8b2bb", "default_categories": [ "Communication" ] diff --git a/ee/maintained-apps/outputs/docker-desktop/darwin.json b/ee/maintained-apps/outputs/docker-desktop/darwin.json index 928c8b83735..f3c9bf533c4 100644 --- a/ee/maintained-apps/outputs/docker-desktop/darwin.json +++ b/ee/maintained-apps/outputs/docker-desktop/darwin.json @@ -1,22 +1,22 @@ { "versions": [ { - "version": "4.76.0", + "version": "4.77.0", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.dockerdesktop';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.dockerdesktop' AND path NOT LIKE '%.back' AND version_compare(bundle_short_version, '4.76.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.dockerdesktop' AND path NOT LIKE '%.back' AND version_compare(bundle_short_version, '4.77.0') < 0);" }, - "installer_url": "https://desktop.docker.com/mac/main/arm64/228118/Docker.dmg", + "installer_url": "https://desktop.docker.com/mac/main/arm64/228796/Docker.dmg", "install_script_ref": "2c3a200a", - "uninstall_script_ref": "1ff5f767", - "sha256": "665ee778a5967fe3b0a6173e0c46657e71e090ff33d7f4dfd89dddbddf2981c4", + "uninstall_script_ref": "dd14c72d", + "sha256": "94fcfeb9f29035b600bf98ea799bdec8a3fb656eea7894bf6549a1a56a8f8213", "default_categories": [ "Developer tools" ] } ], "refs": { - "1ff5f767": "#!/bin/bash\n\n# variables\nAPPDIR=\"/Applications/\"\nLOGGED_IN_USER=$(scutil <<< \"show State:/Users/ConsoleUser\" | awk '/Name :/ { print $3 }')\n# functions\n\nquit_application() {\n local bundle_id=\"$1\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null)\n if [[ \"$app_running\" != \"true\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit.\"\n fi\n}\n\n\nremove_launchctl_service() {\n local service=\"$1\"\n local booleans=(\"true\" \"false\")\n local plist_status\n local paths\n local should_sudo\n\n echo \"Removing launchctl service ${service}\"\n\n for should_sudo in \"${booleans[@]}\"; do\n plist_status=$(launchctl list \"${service}\" 2>/dev/null)\n\n if [[ $plist_status == \\{* ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo launchctl remove \"${service}\"\n else\n launchctl remove \"${service}\"\n fi\n sleep 1\n fi\n\n paths=(\n \"/Library/LaunchAgents/${service}.plist\"\n \"/Library/LaunchDaemons/${service}.plist\"\n )\n\n # if not using sudo, prepend the home directory to the paths\n if [[ $should_sudo == \"false\" ]]; then\n for i in \"${!paths[@]}\"; do\n paths[i]=\"${HOME}${paths[i]}\"\n done\n fi\n\n for path in \"${paths[@]}\"; do\n if [[ -e \"$path\" ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo rm -f -- \"$path\"\n else\n rm -f -- \"$path\"\n fi\n fi\n done\n done\n}\n\ntrash() {\n local logged_in_user=\"$1\"\n local target_file=\"$2\"\n local timestamp=\"$(date +%Y-%m-%d-%s)\"\n local rand=\"$(jot -r 1 0 99999)\"\n\n # replace ~ with /Users/$logged_in_user\n if [[ \"$target_file\" == ~* ]]; then\n target_file=\"/Users/$logged_in_user${target_file:1}\"\n fi\n\n local trash=\"/Users/$logged_in_user/.Trash\"\n\n # If the target contains glob characters, expand it and move each match.\n if [[ \"$target_file\" == *[*?[]* ]]; then\n local file file_name\n local matched=false\n local i=0\n # compgen -G expands the (quoted) pattern itself, so paths containing\n # spaces glob correctly; reading line by line keeps each match intact.\n while IFS= read -r file; do\n [[ -n \"$file\" ]] || continue\n [[ -e \"$file\" || -L \"$file\" ]] || continue\n matched=true\n i=$((i + 1))\n file_name=\"$(basename \"$file\")\"\n echo \"removing $file.\"\n # The per-match counter keeps matches that share a basename from\n # overwriting each other in the trash.\n mv -f \"$file\" \"$trash/${file_name}_${timestamp}_${rand}_${i}\"\n done < <(compgen -G \"$target_file\" 2>/dev/null)\n if [[ \"$matched\" == false ]]; then\n echo \"$target_file doesn't exist.\"\n fi\n return\n fi\n\n local file_name=\"$(basename \"${target_file}\")\"\n\n if [[ -e \"$target_file\" ]]; then\n echo \"removing $target_file.\"\n mv -f \"$target_file\" \"$trash/${file_name}_${timestamp}_${rand}\"\n else\n echo \"$target_file doesn't exist.\"\n fi\n}\n\nremove_launchctl_service 'com.docker.helper'\nremove_launchctl_service 'com.docker.socket'\nremove_launchctl_service 'com.docker.vmnetd'\nquit_application 'com.docker.docker'\nquit_application 'com.electron.dockerdesktop'\nsudo rm -rf '/Library/PrivilegedHelperTools/com.docker.socket'\nsudo rm -rf '/Library/PrivilegedHelperTools/com.docker.vmnetd'\nsudo rmdir '~/.docker/bin'\nsudo rm -rf \"$APPDIR/Docker.app\"\nsudo rm -rf '/usr/local/cli-plugins/docker-compose'\nsudo rm -rf '/usr/local/bin/hub-tool'\nsudo rm -rf '/usr/local/bin/kubectl.docker'\nsudo rm -rf '/usr/local/bin/docker'\nsudo rm -rf '/usr/local/bin/docker-credential-desktop'\nsudo rm -rf '/usr/local/bin/docker-credential-ecr-login'\nsudo rm -rf '/usr/local/bin/docker-credential-osxkeychain'\nsudo rmdir '~/Library/Caches/com.plausiblelabs.crashreporter.data'\nsudo rmdir '~/Library/Caches/KSCrashReports'\ntrash $LOGGED_IN_USER '/usr/local/bin/docker-compose.backup'\ntrash $LOGGED_IN_USER '/usr/local/bin/docker.backup'\ntrash $LOGGED_IN_USER '~/.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/com.docker.helper'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/group.com.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.docker.helper.sfl*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.electron.dockerdesktop.sfl*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.bugsnag.Bugsnag/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Docker Desktop'\ntrash $LOGGED_IN_USER '~/Library/Caches/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Caches/com.plausiblelabs.crashreporter.data/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Caches/KSCrashReports/Docker'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.docker.helper'\ntrash $LOGGED_IN_USER '~/Library/Group Containers/group.com.docker'\ntrash $LOGGED_IN_USER '~/Library/HTTPStorages/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/HTTPStorages/com.docker.docker.binarycookies'\ntrash $LOGGED_IN_USER '~/Library/Logs/Docker Desktop'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.docker.docker.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.electron.docker-frontend.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.electron.dockerdesktop.plist'\ntrash $LOGGED_IN_USER '~/Library/Saved Application State/com.electron.docker-frontend.savedState'\ntrash $LOGGED_IN_USER '~/Library/Saved Application State/com.electron.dockerdesktop.savedState'\n", - "2c3a200a": "#!/bin/bash\n\nset -euo pipefail\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath \"$INSTALLER_PATH\")\")\nMOUNT_POINT=\"\"\n\ncleanup() {\n local mp=\"${MOUNT_POINT:-}\"\n if [[ -n \"$mp\" ]]; then\n if mount | grep -q \" on $mp \"; then\n hdiutil detach \"$mp\" >/dev/null 2>&1 || true\n fi\n rmdir \"$mp\" >/dev/null 2>&1 || true\n fi\n}\ntrap cleanup EXIT\n\n# functions\n\nquit_and_track_application() {\n local bundle_id=\"$1\"\n local var_name\n var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null || echo \"false\")\n if [[ \"$app_running\" != \"true\" ]]; then\n eval \"export $var_name=0\"\n return 0\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console 2>/dev/null || echo \"\")\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n eval \"export $var_name=0\"\n return 0\n fi\n\n # App was running, mark it for relaunch\n eval \"export $var_name=1\"\n echo \"Application '$bundle_id' was running; will relaunch after installation.\"\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit within ${timeout_duration}s; aborting install.\" >&2\n return 1\n fi\n}\n\n\nrelaunch_application() {\n local bundle_id=\"$1\"\n local var_name\n var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local was_running\n\n # Check if the app was running before installation\n eval \"was_running=\\${$var_name:-0}\"\n if [[ \"$was_running\" != \"1\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console 2>/dev/null || echo \"\")\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping relaunching application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Relaunching application '$bundle_id'...\"\n\n # Launch the app in the logged-in user's GUI session. Apps launched by root\n # won't register with the user's Dock/GUI, so run 'open' as the console user.\n # Use 'launchctl asuser' to bootstrap into the console user's Mach namespace\n # and GUI session — 'sudo -u' alone doesn't do this, which can cause\n # LSOpenURLsWithRole() failures even when 'open' exits 0.\n local open_status=0\n if [[ $EUID -eq 0 ]]; then\n local console_uid\n console_uid=$(id -u \"$console_user\")\n /bin/launchctl asuser \"$console_uid\" sudo -u \"$console_user\" open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n else\n open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n fi\n\n if [[ $open_status -eq 0 ]]; then\n echo \"Application '$bundle_id' relaunched successfully.\"\n else\n echo \"Failed to relaunch application '$bundle_id'.\"\n fi\n}\n\n\n# extract contents\nMOUNT_POINT=$(mktemp -d /tmp/dmg_mount_XXXXXX)\nif ! hdiutil attach -plist -nobrowse -readonly -mountpoint \"$MOUNT_POINT\" \"$INSTALLER_PATH\"; then\n echo \"Failed to mount DMG '$INSTALLER_PATH'.\" >&2\n exit 1\nfi\nsudo cp -R \"$MOUNT_POINT\"/* \"$TMPDIR\"\nhdiutil detach \"$MOUNT_POINT\"\nMOUNT_POINT=\"\"\n# copy to the applications folder\nquit_and_track_application 'com.electron.dockerdesktop'\nif [ -d \"$APPDIR/Docker.app\" ]; then\n\tsudo mv \"$APPDIR/Docker.app\" \"$TMPDIR/Docker.app.bkp\"\nfi\n# Docker Desktop's own in-app updater leaves a Docker.app.back bundle alongside\n# Docker.app when it self-updates. osquery's apps table still picks up the\n# stale bundle by its bundle_identifier, which causes Fleet patch policies to\n# report Docker as out of date even after a successful upgrade.\nsudo rm -rf \"$APPDIR/Docker.app.back\"\nsudo cp -R \"$TMPDIR/Docker.app\" \"$APPDIR\"\nrelaunch_application 'com.electron.dockerdesktop'\nmkdir -p /usr/local/cli-plugins\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/cli-plugins/docker-compose\" \"/usr/local/cli-plugins/docker-compose\"\nmkdir -p /usr/local/bin\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/hub-tool\" \"/usr/local/bin/hub-tool\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/kubectl\" \"/usr/local/bin/kubectl.docker\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker\" \"/usr/local/bin/docker\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-desktop\" \"/usr/local/bin/docker-credential-desktop\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-ecr-login\" \"/usr/local/bin/docker-credential-ecr-login\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-osxkeychain\" \"/usr/local/bin/docker-credential-osxkeychain\"\n" + "2c3a200a": "#!/bin/bash\n\nset -euo pipefail\n\n# variables\nAPPDIR=\"/Applications/\"\nTMPDIR=$(dirname \"$(realpath \"$INSTALLER_PATH\")\")\nMOUNT_POINT=\"\"\n\ncleanup() {\n local mp=\"${MOUNT_POINT:-}\"\n if [[ -n \"$mp\" ]]; then\n if mount | grep -q \" on $mp \"; then\n hdiutil detach \"$mp\" >/dev/null 2>&1 || true\n fi\n rmdir \"$mp\" >/dev/null 2>&1 || true\n fi\n}\ntrap cleanup EXIT\n\n# functions\n\nquit_and_track_application() {\n local bundle_id=\"$1\"\n local var_name\n var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null || echo \"false\")\n if [[ \"$app_running\" != \"true\" ]]; then\n eval \"export $var_name=0\"\n return 0\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console 2>/dev/null || echo \"\")\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n eval \"export $var_name=0\"\n return 0\n fi\n\n # App was running, mark it for relaunch\n eval \"export $var_name=1\"\n echo \"Application '$bundle_id' was running; will relaunch after installation.\"\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit within ${timeout_duration}s; aborting install.\" >&2\n return 1\n fi\n}\n\n\nrelaunch_application() {\n local bundle_id=\"$1\"\n local var_name\n var_name=\"APP_WAS_RUNNING_$(echo \"$bundle_id\" | tr '.-' '__')\"\n local was_running\n\n # Check if the app was running before installation\n eval \"was_running=\\${$var_name:-0}\"\n if [[ \"$was_running\" != \"1\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console 2>/dev/null || echo \"\")\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping relaunching application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Relaunching application '$bundle_id'...\"\n\n # Launch the app in the logged-in user's GUI session. Apps launched by root\n # won't register with the user's Dock/GUI, so run 'open' as the console user.\n # Use 'launchctl asuser' to bootstrap into the console user's Mach namespace\n # and GUI session — 'sudo -u' alone doesn't do this, which can cause\n # LSOpenURLsWithRole() failures even when 'open' exits 0.\n local open_status=0\n if [[ $EUID -eq 0 ]]; then\n local console_uid\n console_uid=$(id -u \"$console_user\")\n /bin/launchctl asuser \"$console_uid\" sudo -u \"$console_user\" open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n else\n open -b \"$bundle_id\" >/dev/null 2>&1 || open_status=$?\n fi\n\n if [[ $open_status -eq 0 ]]; then\n echo \"Application '$bundle_id' relaunched successfully.\"\n else\n echo \"Failed to relaunch application '$bundle_id'.\"\n fi\n}\n\n\n# extract contents\nMOUNT_POINT=$(mktemp -d /tmp/dmg_mount_XXXXXX)\nif ! hdiutil attach -plist -nobrowse -readonly -mountpoint \"$MOUNT_POINT\" \"$INSTALLER_PATH\"; then\n echo \"Failed to mount DMG '$INSTALLER_PATH'.\" >&2\n exit 1\nfi\nsudo cp -R \"$MOUNT_POINT\"/* \"$TMPDIR\"\nhdiutil detach \"$MOUNT_POINT\"\nMOUNT_POINT=\"\"\n# copy to the applications folder\nquit_and_track_application 'com.electron.dockerdesktop'\nif [ -d \"$APPDIR/Docker.app\" ]; then\n\tsudo mv \"$APPDIR/Docker.app\" \"$TMPDIR/Docker.app.bkp\"\nfi\n# Docker Desktop's own in-app updater leaves a Docker.app.back bundle alongside\n# Docker.app when it self-updates. osquery's apps table still picks up the\n# stale bundle by its bundle_identifier, which causes Fleet patch policies to\n# report Docker as out of date even after a successful upgrade.\nsudo rm -rf \"$APPDIR/Docker.app.back\"\nsudo cp -R \"$TMPDIR/Docker.app\" \"$APPDIR\"\nrelaunch_application 'com.electron.dockerdesktop'\nmkdir -p /usr/local/cli-plugins\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/cli-plugins/docker-compose\" \"/usr/local/cli-plugins/docker-compose\"\nmkdir -p /usr/local/bin\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/hub-tool\" \"/usr/local/bin/hub-tool\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/kubectl\" \"/usr/local/bin/kubectl.docker\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker\" \"/usr/local/bin/docker\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-desktop\" \"/usr/local/bin/docker-credential-desktop\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-ecr-login\" \"/usr/local/bin/docker-credential-ecr-login\"\n/bin/ln -h -f -s -- \"$APPDIR/Docker.app/Contents/Resources/bin/docker-credential-osxkeychain\" \"/usr/local/bin/docker-credential-osxkeychain\"\n", + "dd14c72d": "#!/bin/bash\n\n# variables\nAPPDIR=\"/Applications/\"\nLOGGED_IN_USER=$(scutil <<< \"show State:/Users/ConsoleUser\" | awk '/Name :/ { print $3 }')\n# functions\n\nquit_application() {\n local bundle_id=\"$1\"\n local timeout_duration=10\n\n # check if the application is running\n local app_running\n app_running=$(osascript -e \"application id \\\"$bundle_id\\\" is running\" 2>/dev/null)\n if [[ \"$app_running\" != \"true\" ]]; then\n return\n fi\n\n local console_user\n console_user=$(stat -f \"%Su\" /dev/console)\n if [[ -z \"$console_user\" || \"$console_user\" == \"root\" || \"$console_user\" == \"loginwindow\" ]]; then\n echo \"Not logged into a non-root GUI; skipping quitting application ID '$bundle_id'.\"\n return\n fi\n\n echo \"Quitting application '$bundle_id'...\"\n\n # try to quit the application within the timeout period\n local quit_success=false\n SECONDS=0\n while (( SECONDS < timeout_duration )); do\n if osascript -e \"tell application id \\\"$bundle_id\\\" to quit\" >/dev/null 2>&1; then\n if ! pgrep -f \"$bundle_id\" >/dev/null 2>&1; then\n echo \"Application '$bundle_id' quit successfully.\"\n quit_success=true\n break\n fi\n fi\n sleep 1\n done\n\n if [[ \"$quit_success\" = false ]]; then\n echo \"Application '$bundle_id' did not quit.\"\n fi\n}\n\n\nremove_launchctl_service() {\n local service=\"$1\"\n local booleans=(\"true\" \"false\")\n local plist_status\n local paths\n local should_sudo\n\n echo \"Removing launchctl service ${service}\"\n\n for should_sudo in \"${booleans[@]}\"; do\n plist_status=$(launchctl list \"${service}\" 2>/dev/null)\n\n if [[ $plist_status == \\{* ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo launchctl remove \"${service}\"\n else\n launchctl remove \"${service}\"\n fi\n sleep 1\n fi\n\n paths=(\n \"/Library/LaunchAgents/${service}.plist\"\n \"/Library/LaunchDaemons/${service}.plist\"\n )\n\n # if not using sudo, prepend the home directory to the paths\n if [[ $should_sudo == \"false\" ]]; then\n for i in \"${!paths[@]}\"; do\n paths[i]=\"${HOME}${paths[i]}\"\n done\n fi\n\n for path in \"${paths[@]}\"; do\n if [[ -e \"$path\" ]]; then\n if [[ $should_sudo == \"true\" ]]; then\n sudo rm -f -- \"$path\"\n else\n rm -f -- \"$path\"\n fi\n fi\n done\n done\n}\n\ntrash() {\n local logged_in_user=\"$1\"\n local target_file=\"$2\"\n local timestamp=\"$(date +%Y-%m-%d-%s)\"\n local rand=\"$(jot -r 1 0 99999)\"\n\n # replace ~ with /Users/$logged_in_user\n if [[ \"$target_file\" == ~* ]]; then\n target_file=\"/Users/$logged_in_user${target_file:1}\"\n fi\n\n local trash=\"/Users/$logged_in_user/.Trash\"\n\n # If the target contains glob characters, expand it and move each match.\n if [[ \"$target_file\" == *[*?[]* ]]; then\n local file file_name\n local matched=false\n local i=0\n # compgen -G expands the (quoted) pattern itself, so paths containing\n # spaces glob correctly; reading line by line keeps each match intact.\n while IFS= read -r file; do\n [[ -n \"$file\" ]] || continue\n [[ -e \"$file\" || -L \"$file\" ]] || continue\n matched=true\n i=$((i + 1))\n file_name=\"$(basename \"$file\")\"\n echo \"removing $file.\"\n # The per-match counter keeps matches that share a basename from\n # overwriting each other in the trash.\n mv -f \"$file\" \"$trash/${file_name}_${timestamp}_${rand}_${i}\"\n done < <(compgen -G \"$target_file\" 2>/dev/null)\n if [[ \"$matched\" == false ]]; then\n echo \"$target_file doesn't exist.\"\n fi\n return\n fi\n\n local file_name=\"$(basename \"${target_file}\")\"\n\n if [[ -e \"$target_file\" ]]; then\n echo \"removing $target_file.\"\n mv -f \"$target_file\" \"$trash/${file_name}_${timestamp}_${rand}\"\n else\n echo \"$target_file doesn't exist.\"\n fi\n}\n\nremove_launchctl_service 'com.docker.helper'\nremove_launchctl_service 'com.docker.socket'\nremove_launchctl_service 'com.docker.vmnetd'\nquit_application 'com.docker.docker'\nquit_application 'com.electron.dockerdesktop'\nsudo rm -rf '/Library/PrivilegedHelperTools/com.docker.socket'\nsudo rm -rf '/Library/PrivilegedHelperTools/com.docker.vmnetd'\nsudo rmdir '~/.docker/bin'\nsudo rm -rf \"$APPDIR/Docker.app\"\nsudo rm -rf '/usr/local/bin/docker'\nsudo rm -rf '/usr/local/bin/docker-credential-osxkeychain'\nsudo rm -rf '/usr/local/bin/kubectl.docker'\nsudo rm -rf '/usr/local/cli-plugins/docker-compose'\nsudo rm -rf '/usr/local/bin/docker-credential-desktop'\nsudo rm -rf '/usr/local/bin/docker-credential-ecr-login'\nsudo rmdir '~/Library/Caches/com.plausiblelabs.crashreporter.data'\nsudo rmdir '~/Library/Caches/KSCrashReports'\ntrash $LOGGED_IN_USER '/usr/local/bin/docker-compose.backup'\ntrash $LOGGED_IN_USER '/usr/local/bin/docker.backup'\ntrash $LOGGED_IN_USER '~/.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/com.docker.helper'\ntrash $LOGGED_IN_USER '~/Library/Application Scripts/group.com.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.docker.helper.sfl*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.electron.dockerdesktop.sfl*'\ntrash $LOGGED_IN_USER '~/Library/Application Support/com.bugsnag.Bugsnag/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Application Support/Docker Desktop'\ntrash $LOGGED_IN_USER '~/Library/Caches/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Caches/com.plausiblelabs.crashreporter.data/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Caches/KSCrashReports/Docker'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/Containers/com.docker.helper'\ntrash $LOGGED_IN_USER '~/Library/Group Containers/group.com.docker'\ntrash $LOGGED_IN_USER '~/Library/HTTPStorages/com.docker.docker'\ntrash $LOGGED_IN_USER '~/Library/HTTPStorages/com.docker.docker.binarycookies'\ntrash $LOGGED_IN_USER '~/Library/Logs/Docker Desktop'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.docker.docker.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.electron.docker-frontend.plist'\ntrash $LOGGED_IN_USER '~/Library/Preferences/com.electron.dockerdesktop.plist'\ntrash $LOGGED_IN_USER '~/Library/Saved Application State/com.electron.docker-frontend.savedState'\ntrash $LOGGED_IN_USER '~/Library/Saved Application State/com.electron.dockerdesktop.savedState'\n" } } diff --git a/ee/maintained-apps/outputs/docker/windows.json b/ee/maintained-apps/outputs/docker/windows.json index 17d3c353426..c5b436c1a78 100644 --- a/ee/maintained-apps/outputs/docker/windows.json +++ b/ee/maintained-apps/outputs/docker/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "4.76.0", + "version": "4.77.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'Docker Desktop' AND publisher = 'Docker Inc.';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Docker Desktop' AND publisher = 'Docker Inc.' AND version_compare(version, '4.76.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Docker Desktop' AND publisher = 'Docker Inc.' AND version_compare(version, '4.77.0') < 0);" }, "installer_url": "https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe", "install_script_ref": "b06042dd", "uninstall_script_ref": "0b74af50", - "sha256": "42978fa07e50e3beb6923448e970d03aadd9abf5ea52230cf8a28ff81d2815e0", + "sha256": "5b866599f0de9208f4594d64aa33658fa55cbdd64e0db13648cffe12c91795d2", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/google-chrome/darwin.json b/ee/maintained-apps/outputs/google-chrome/darwin.json index b10d557005d..e115b4d8711 100644 --- a/ee/maintained-apps/outputs/google-chrome/darwin.json +++ b/ee/maintained-apps/outputs/google-chrome/darwin.json @@ -1,10 +1,10 @@ { "versions": [ { - "version": "149.0.7827.54", + "version": "149.0.7827.103", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.google.Chrome';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.google.Chrome' AND version_compare(bundle_short_version, '149.0.7827.54') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.google.Chrome' AND version_compare(bundle_short_version, '149.0.7827.103') < 0);" }, "installer_url": "https://dl.google.com/dl/chrome/mac/universal/stable/gcem/GoogleChrome.pkg", "install_script_ref": "6981ff84", diff --git a/ee/maintained-apps/outputs/google-chrome/windows.json b/ee/maintained-apps/outputs/google-chrome/windows.json index d9a5b0f1c19..095735812b2 100644 --- a/ee/maintained-apps/outputs/google-chrome/windows.json +++ b/ee/maintained-apps/outputs/google-chrome/windows.json @@ -1,10 +1,10 @@ { "versions": [ { - "version": "149.0.7827.54", + "version": "149.0.7827.103", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC' AND version_compare(version, '149.0.7827.54') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Google Chrome' AND publisher = 'Google LLC' AND version_compare(version, '149.0.7827.103') < 0);" }, "installer_url": "https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi", "install_script_ref": "8959087b", diff --git a/ee/maintained-apps/outputs/grammarly-desktop/darwin.json b/ee/maintained-apps/outputs/grammarly-desktop/darwin.json index a76f14398d5..676d4ea7aa4 100644 --- a/ee/maintained-apps/outputs/grammarly-desktop/darwin.json +++ b/ee/maintained-apps/outputs/grammarly-desktop/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "1.168.0", + "version": "1.169.1", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.grammarly.ProjectLlama';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.grammarly.ProjectLlama' AND version_compare(bundle_short_version, '1.168.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.grammarly.ProjectLlama' AND version_compare(bundle_short_version, '1.169.1') < 0);" }, - "installer_url": "https://download-mac.grammarly.com/versions/1.168.0.0/Grammarly.dmg", + "installer_url": "https://download-mac.grammarly.com/versions/1.169.1.0/Grammarly.dmg", "install_script_ref": "20d5bd8f", "uninstall_script_ref": "e14b2d61", - "sha256": "858906acf4bdb42395a0ecb301312a52e4f595ae88d14c99c21d25acd16f186e", + "sha256": "e486fb425b7a2b631e56190273517518ad137705475e0be84aed247173b30b75", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/granola/darwin.json b/ee/maintained-apps/outputs/granola/darwin.json index 1da4d99c0a2..e64b970698e 100644 --- a/ee/maintained-apps/outputs/granola/darwin.json +++ b/ee/maintained-apps/outputs/granola/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "7.303.0", + "version": "7.309.0", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.granola.app';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.granola.app' AND version_compare(bundle_short_version, '7.303.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.granola.app' AND version_compare(bundle_short_version, '7.309.0') < 0);" }, - "installer_url": "https://dr2v7l5emb758.cloudfront.net/7.303.0/Granola-7.303.0-mac-universal.dmg", + "installer_url": "https://dr2v7l5emb758.cloudfront.net/7.309.0/Granola-7.309.0-mac-universal.dmg", "install_script_ref": "89a55638", "uninstall_script_ref": "7b9b9d06", - "sha256": "038c7dd6b1a8013f0bf956f31d0d8dee1b9b641b756a8ff2fb11d41421b698b7", + "sha256": "3dd76897395f981f8f4bfef52b75bb88e09b7948d73a1e253dbd99713df86b0f", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/granola/windows.json b/ee/maintained-apps/outputs/granola/windows.json index 48549c4babf..61bbc4fa5a8 100644 --- a/ee/maintained-apps/outputs/granola/windows.json +++ b/ee/maintained-apps/outputs/granola/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "7.303.0", + "version": "7.309.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'Granola %' AND publisher = 'Granola';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Granola %' AND publisher = 'Granola' AND version_compare(version, '7.303.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Granola %' AND publisher = 'Granola' AND version_compare(version, '7.309.0') < 0);" }, - "installer_url": "https://dr2v7l5emb758.cloudfront.net/7.303.0/Granola-7.303.0-win-x64.exe", + "installer_url": "https://dr2v7l5emb758.cloudfront.net/7.309.0/Granola-7.309.0-win-x64.exe", "install_script_ref": "3f66ac53", "uninstall_script_ref": "a4fab3f5", - "sha256": "5381b059899caf0a6b6f7b7d6506db4b7d7b408afe8eec05ea42535dc3628da8", + "sha256": "6854bcd0fe746ff547f5ea5414ae84cb8c4a06d50bc037a81da6e81ac57e1200", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/imazing/windows.json b/ee/maintained-apps/outputs/imazing/windows.json index e89c7bb52a4..5181fb33287 100644 --- a/ee/maintained-apps/outputs/imazing/windows.json +++ b/ee/maintained-apps/outputs/imazing/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "3.5.3.0", + "version": "3.5.4.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA' AND version_compare(version, '3.5.3.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'iMazing' AND publisher = 'DigiDNA' AND version_compare(version, '3.5.4.0') < 0);" }, "installer_url": "https://downloads.imazing.com/windows/iMazing/iMazing3forWindows.exe", "install_script_ref": "145b29b1", "uninstall_script_ref": "a8fdf759", - "sha256": "d167f1900190738d850c5ec41ad3838fd12818374b7681170d32af8adb50ef20", + "sha256": "0686128d3d53956beb8409d7812acbc4f6531ab9d0a515e284f227d6533ce8c6", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/libreoffice/windows.json b/ee/maintained-apps/outputs/libreoffice/windows.json index dcd483ad159..dffd289d061 100644 --- a/ee/maintained-apps/outputs/libreoffice/windows.json +++ b/ee/maintained-apps/outputs/libreoffice/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "26.2.3.2", + "version": "26.2.4.2", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'LibreOffice %' AND publisher = 'The Document Foundation';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'LibreOffice %' AND publisher = 'The Document Foundation' AND version_compare(version, '26.2.3.2') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'LibreOffice %' AND publisher = 'The Document Foundation' AND version_compare(version, '26.2.4.2') < 0);" }, - "installer_url": "https://download.documentfoundation.org/libreoffice/stable/26.2.3/win/x86_64/LibreOffice_26.2.3_Win_x86-64.msi", + "installer_url": "https://download.documentfoundation.org/libreoffice/stable/26.2.4/win/x86_64/LibreOffice_26.2.4_Win_x86-64.msi", "install_script_ref": "8959087b", "uninstall_script_ref": "731830d4", - "sha256": "468d1fb3880af3bcddac002e9054155912c70b45d105bfa1c82036f33456133d", + "sha256": "202f26cda071c5aa4996a5a28412fddceb3891dceb0366982c62650456c0730f", "default_categories": [ "Productivity" ], diff --git a/ee/maintained-apps/outputs/ollama/darwin.json b/ee/maintained-apps/outputs/ollama/darwin.json index 557436654c9..540fd168faf 100644 --- a/ee/maintained-apps/outputs/ollama/darwin.json +++ b/ee/maintained-apps/outputs/ollama/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "0.30.6", + "version": "0.30.7", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.ollama';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.ollama' AND version_compare(bundle_short_version, '0.30.6') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.electron.ollama' AND version_compare(bundle_short_version, '0.30.7') < 0);" }, - "installer_url": "https://github.com/ollama/ollama/releases/download/v0.30.6/Ollama-darwin.zip", + "installer_url": "https://github.com/ollama/ollama/releases/download/v0.30.7/Ollama-darwin.zip", "install_script_ref": "9f174559", "uninstall_script_ref": "bf40e2d5", - "sha256": "5b95c6c35595f668309a0c10de3cb059ddbf8fa06b548e4c4c4b3c7733dfbdec", + "sha256": "54f754d638e61f0aca6a1420e3f61c6bce2a640a4f736661adcdabd79f98a742", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/openvpn-connect/windows.json b/ee/maintained-apps/outputs/openvpn-connect/windows.json index 37c5de0687e..c64c3cebf3c 100644 --- a/ee/maintained-apps/outputs/openvpn-connect/windows.json +++ b/ee/maintained-apps/outputs/openvpn-connect/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "3.8.0", + "version": "3.9.0", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'OpenVPN Connect %' AND publisher = 'OpenVPN Inc.';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'OpenVPN Connect %' AND publisher = 'OpenVPN Inc.' AND version_compare(version, '3.8.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'OpenVPN Connect %' AND publisher = 'OpenVPN Inc.' AND version_compare(version, '3.9.0') < 0);" }, - "installer_url": "https://packages.openvpn.net/connect/v3/openvpn-connect-3.8.0.4528_signed.msi", + "installer_url": "https://packages.openvpn.net/connect/v3/openvpn-connect-3.9.0.5008_signed.msi", "install_script_ref": "8959087b", "uninstall_script_ref": "9f994a0b", - "sha256": "cc741664d07fd4eedc98103edb86b791d290640a969c288c3d1cb2d0b6de98ce", + "sha256": "31347812dd37dbbb69bc47de842eb179827266e9dfb45e7f6ce10c5d71a5bad6", "default_categories": [ "Productivity" ], diff --git a/ee/maintained-apps/outputs/postman/darwin.json b/ee/maintained-apps/outputs/postman/darwin.json index 65108d14093..ca02ccff95a 100644 --- a/ee/maintained-apps/outputs/postman/darwin.json +++ b/ee/maintained-apps/outputs/postman/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "12.14.0", + "version": "12.14.2", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.postmanlabs.mac';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.postmanlabs.mac' AND version_compare(bundle_short_version, '12.14.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.postmanlabs.mac' AND version_compare(bundle_short_version, '12.14.2') < 0);" }, - "installer_url": "https://dl.pstmn.io/download/version/12.14.0/osx_arm64", + "installer_url": "https://dl.pstmn.io/download/version/12.14.2/osx_arm64", "install_script_ref": "96d73870", "uninstall_script_ref": "966b2fa5", - "sha256": "0435aa4b9479b923a0ff32eb7c1bfac921be3eb4803f8120967c6cb844a81bfc", + "sha256": "7f52fd4255bcc0601cfa7fc5acc4c8faaeb74ec3680b00e589700d55c83c2c1c", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/postman/windows.json b/ee/maintained-apps/outputs/postman/windows.json index 1decaf368f3..7d7749710de 100644 --- a/ee/maintained-apps/outputs/postman/windows.json +++ b/ee/maintained-apps/outputs/postman/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "12.14.0", + "version": "12.14.2", "queries": { "exists": "SELECT 1 FROM programs WHERE name LIKE 'Postman x64 %' AND publisher = 'Postman';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Postman x64 %' AND publisher = 'Postman' AND version_compare(version, '12.14.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name LIKE 'Postman x64 %' AND publisher = 'Postman' AND version_compare(version, '12.14.2') < 0);" }, - "installer_url": "https://dl.pstmn.io/download/version/12.14.0/windows_64", + "installer_url": "https://dl.pstmn.io/download/version/12.14.2/windows_64", "install_script_ref": "538f63bf", "uninstall_script_ref": "cd01b68f", - "sha256": "855e62162c4518e6d96aed4b70f246b7e532eecd82896fbd97fc939450f06a4f", + "sha256": "20d6b29bc22e11f2248fcc4a069a137db1650d92f64e4d88019340b4b16545ec", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/proxyman/darwin.json b/ee/maintained-apps/outputs/proxyman/darwin.json index 7b0bf9b4783..45211bf6efb 100644 --- a/ee/maintained-apps/outputs/proxyman/darwin.json +++ b/ee/maintained-apps/outputs/proxyman/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "6.10.0", + "version": "6.11.0", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.proxyman.NSProxy';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.proxyman.NSProxy' AND version_compare(bundle_short_version, '6.10.0') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.proxyman.NSProxy' AND version_compare(bundle_short_version, '6.11.0') < 0);" }, - "installer_url": "https://download.proxyman.com/61000/Proxyman_6.10.0.dmg", + "installer_url": "https://download.proxyman.com/61100/Proxyman_6.11.0.dmg", "install_script_ref": "1e7b20cd", "uninstall_script_ref": "3dd0b5dd", - "sha256": "7175e835eec424daff05a73037f373b54538cb4b1bc79ad46476d2f18d4e30f9", + "sha256": "adc9e992c22f8cf2b0686194ef355490a45702075cbec31be99af6c9eeb96273", "default_categories": [ "Developer tools" ] diff --git a/ee/maintained-apps/outputs/reaper/darwin.json b/ee/maintained-apps/outputs/reaper/darwin.json index 7346db8e2bc..dd327dbff96 100644 --- a/ee/maintained-apps/outputs/reaper/darwin.json +++ b/ee/maintained-apps/outputs/reaper/darwin.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "7.73", + "version": "7.74", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'com.cockos.reaper';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.cockos.reaper' AND version_compare(bundle_short_version, '7.73') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'com.cockos.reaper' AND version_compare(bundle_short_version, '7.74') < 0);" }, - "installer_url": "https://dlcf.reaper.fm/7.x/reaper773_universal.dmg", + "installer_url": "https://dlcf.reaper.fm/7.x/reaper774_universal.dmg", "install_script_ref": "812a1a26", "uninstall_script_ref": "544a54e5", - "sha256": "884b259b98269240b009fc229605e046bc298fa0fa94dca90d99cd22fd593cac", + "sha256": "4319806a0d6d3c1ddb8f3ebc945b314a53229b4e887e35944dafbeac4e1fb9d1", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/reaper/windows.json b/ee/maintained-apps/outputs/reaper/windows.json index 2925c404118..97761d7e683 100644 --- a/ee/maintained-apps/outputs/reaper/windows.json +++ b/ee/maintained-apps/outputs/reaper/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "7.73", + "version": "7.74", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'REAPER' AND publisher = 'Cockos Incorporated';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'REAPER' AND publisher = 'Cockos Incorporated' AND version_compare(version, '7.73') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'REAPER' AND publisher = 'Cockos Incorporated' AND version_compare(version, '7.74') < 0);" }, - "installer_url": "https://www.reaper.fm/files/7.x/reaper773_x64-install.exe", + "installer_url": "https://www.reaper.fm/files/7.x/reaper774_x64-install.exe", "install_script_ref": "8fd3787f", "uninstall_script_ref": "c67e0453", - "sha256": "1a96f1aaf2c8fec04f92753078582ff577ad666f267965303daa12511db8752b", + "sha256": "14f53556f147105ddcd55190fe3bbae8fe6ade996db84c119f24e2b9e85861e6", "default_categories": [ "Productivity" ] diff --git a/ee/maintained-apps/outputs/slack/windows.json b/ee/maintained-apps/outputs/slack/windows.json index 6c5ae7676ba..ee3b39e633c 100644 --- a/ee/maintained-apps/outputs/slack/windows.json +++ b/ee/maintained-apps/outputs/slack/windows.json @@ -1,15 +1,15 @@ { "versions": [ { - "version": "4.50.128", + "version": "4.50.136", "queries": { "exists": "SELECT 1 FROM programs WHERE name = 'Slack' AND publisher = 'Slack Technologies Inc.';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Slack' AND publisher = 'Slack Technologies Inc.' AND version_compare(version, '4.50.128') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Slack' AND publisher = 'Slack Technologies Inc.' AND version_compare(version, '4.50.136') < 0);" }, - "installer_url": "https://downloads.slack-edge.com/desktop-releases/windows/x64/4.50.128/Slack.msix", + "installer_url": "https://downloads.slack-edge.com/desktop-releases/windows/x64/4.50.136/Slack.msix", "install_script_ref": "8b41f934", "uninstall_script_ref": "034eae14", - "sha256": "418297aa7ee085b72194eac0c5b4aff8e30740b81498e15f4b7603aaf335477b", + "sha256": "da15dc60c979b4c278278ac0b00e754716fc2163d2b1144a1a570dd82bb7b13d", "default_categories": [ "Communication" ] diff --git a/ee/maintained-apps/outputs/warp/darwin.json b/ee/maintained-apps/outputs/warp/darwin.json index 6fc584f23d0..15f1a3ee479 100644 --- a/ee/maintained-apps/outputs/warp/darwin.json +++ b/ee/maintained-apps/outputs/warp/darwin.json @@ -1,12 +1,12 @@ { "versions": [ { - "version": "0.2026.06.03.09.49.01", + "version": "0.2026.06.03.09.49.02", "queries": { "exists": "SELECT 1 FROM apps WHERE bundle_identifier = 'dev.warp.Warp-Stable';", - "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'dev.warp.Warp-Stable' AND version_compare(bundle_short_version, '0.2026.06.03.09.49.01') < 0);" + "patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM apps WHERE bundle_identifier = 'dev.warp.Warp-Stable' AND version_compare(bundle_short_version, '0.2026.06.03.09.49.02') < 0);" }, - "installer_url": "https://releases.warp.dev/stable/v0.2026.06.03.09.49.stable_01/Warp.dmg", + "installer_url": "https://releases.warp.dev/stable/v0.2026.06.03.09.49.stable_02/Warp.dmg", "install_script_ref": "007bc795", "uninstall_script_ref": "932356de", "sha256": "no_check",