Skip to content

Update Fleet-maintained apps - #50939

Merged
allenhouchins merged 2 commits into
mainfrom
fma-2608111213
Aug 11, 2026
Merged

Update Fleet-maintained apps#50939
allenhouchins merged 2 commits into
mainfrom
fma-2608111213

Conversation

@fleet-release

@fleet-release fleet-release commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Automated ingestion of latest Fleet-maintained app data.

Summary by CodeRabbit

  • Updates

    • Refreshed supported application packages across macOS and Windows, including Adobe Acrobat Reader, Android Studio, Docker, Firefox, Microsoft Edge, Notion, Postman, Slack, Teleport, and many others.
    • Updated installer downloads, version detection, and integrity checks to deliver the latest releases.
  • Bug Fixes

    • Improved Autopsy upgrade removal and Slack installation behavior.
  • Configuration

    • Marked Adobe Acrobat Pro, Cisco Jabber, Keeper Password Manager, and NVIDIA GeForce NOW as frozen.

Generated automatically with cmd/maintained-apps.
@github-actions

Copy link
Copy Markdown
Contributor

Script Diff Results

ee/maintained-apps/outputs/adobe-acrobat-pro/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/adobe-acrobat-reader/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/android-studio/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/apidog/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/autopsy/windows.json

=== Install Script (no changes) ===
=== Uninstall // e89e5716 -> 868c149c ===

--- /tmp/old.MerKya	2026-08-11 12:21:41.888381256 +0000
+++ /tmp/new.YwVJA8	2026-08-11 12:21:41.888381256 +0000
@@ -1,26 +1,28 @@
-$product_code = '{6BF79DCF-4641-4323-80A8-C43596518ECE}'
-$timeoutSeconds = 300  # 5 minute timeout
-
-# Fleet uninstalls app using product code that's extracted on upload
-$process = Start-Process msiexec -ArgumentList @("/quiet", "/x", $product_code, "/norestart") -PassThru
-
-# Wait for process with timeout
-$completed = $process.WaitForExit($timeoutSeconds * 1000)
-
-if (-not $completed) {
-    Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue
-    Exit 1603  # ERROR_UNINSTALL_FAILURE
-}
+# Fleet uninstalls app by finding all related product codes for the specified upgrade code
+$inst = New-Object -ComObject "WindowsInstaller.Installer"
+$timeoutSeconds = 300  # 5 minute timeout per product
 
 # MSI exit codes that indicate success. 3010 = ERROR_SUCCESS_REBOOT_REQUIRED,
 # 1641 = ERROR_SUCCESS_REBOOT_INITIATED. Treat these as success rather than failure.
 $successCodes = @(0, 3010, 1641)
 
-# Check exit code and output result
-if ($successCodes -contains $process.ExitCode) {
-    Write-Output "Exit 0"
-    Exit 0
-} else {
-    Write-Output "Exit $($process.ExitCode)"
-    Exit $process.ExitCode
+foreach ($product_code in $inst.RelatedProducts('{6AAD1A1D-40C1-4515-B4D6-EA5A167FFA77}')) {
+    $process = Start-Process msiexec -ArgumentList @("/quiet", "/x", $product_code, "/norestart") -PassThru
+
+    # Wait for process with timeout
+    $completed = $process.WaitForExit($timeoutSeconds * 1000)
+
+    if (-not $completed) {
+        Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue
+        Exit 1603  # ERROR_UNINSTALL_FAILURE
+    }
+
+    # If the uninstall failed, bail
+    if ($successCodes -notcontains $process.ExitCode) {
+        Write-Output "Uninstall for $($product_code) exited $($process.ExitCode)"
+        Exit $process.ExitCode
+    }
 }
+
+# All uninstalls succeeded; exit success
+Exit 0

ee/maintained-apps/outputs/box-drive/darwin.json

=== Install // 0282e69d -> 346485a2 ===

--- /tmp/old.lR2UUx	2026-08-11 12:21:41.951381491 +0000
+++ /tmp/new.TrhSDo	2026-08-11 12:21:41.951381491 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.box.desktop'
-sudo installer -pkg "$TMPDIR/BoxDrive-2.53.219.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/BoxDrive-2.53.223.pkg" -target / || exit $?
 relaunch_application 'com.box.desktop'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/chatgpt/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/cisco-jabber/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/citrix-workspace/darwin.json

=== Install // a78b38b6 -> 38dfe7fb ===

--- /tmp/old.zF6vT0	2026-08-11 12:21:42.064381913 +0000
+++ /tmp/new.ujzBf1	2026-08-11 12:21:42.064381913 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.citrix.receiver.nomas'
-sudo installer -pkg "$TMPDIR/CitrixWorkspaceAppUniversal26.07.0.71.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/CitrixWorkspaceAppUniversal26.07.0.75.pkg" -target / || exit $?
 relaunch_application 'com.citrix.receiver.nomas'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/cloudflare-warp/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/codexbar/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/cog-app/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/creative-force-kelvin/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/devin-desktop/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/docker/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/drawio/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/drofus/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/dropbox/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/firefox@developer-edition/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/firefox@nightly/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/framer/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/goland/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/hive-app/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/keeper-password-manager/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/lenovo-system-update/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/localsend/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/microsoft-edge/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/milanote/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/notion/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/notion/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/nvidia-geforce-now/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/obsidian/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ok-json/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ollama/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ollama/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/onedrive/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/phpstorm/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/phpstorm/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/postman/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/postman/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/purevpn/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/rocket-chat/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shapr3d/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shift/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shift/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/slack/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/surge/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/swiftbar/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-connect/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-connect/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-suite/darwin.json

=== Install // e996f404 -> 2b57ace9 ===

--- /tmp/old.kI5Lqx	2026-08-11 12:21:43.429387071 +0000
+++ /tmp/new.P6hVJN	2026-08-11 12:21:43.430387075 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.gravitational.teleport.tsh'
-sudo installer -pkg "$TMPDIR/teleport-18.10.3.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/teleport-18.10.4.pkg" -target / || exit $?
 relaunch_application 'com.gravitational.teleport.tsh'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/termius/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/tower/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/unity-hub/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/webex/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/zen/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 921ac6ec-7e80-4522-a56a-dc9be789fe61

📥 Commits

Reviewing files that changed from the base of the PR and between c1583a1 and 27760c4.

📒 Files selected for processing (4)
  • ee/maintained-apps/inputs/homebrew/adobe-acrobat-pro.json
  • ee/maintained-apps/inputs/homebrew/cisco-jabber.json
  • ee/maintained-apps/inputs/homebrew/keeper-password-manager.json
  • ee/maintained-apps/inputs/homebrew/nvidia-geforce-now.json

Walkthrough

Updated maintained application records to newer macOS and Windows releases, including version checks, installer URLs, and SHA-256 checksums. Updated installation script references for Box Drive, Citrix Workspace, and Teleport Suite. Reworked Autopsy uninstall handling to discover related products and process MSI results. Marked four Homebrew app definitions as frozen.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description contains only a one-line summary and omits the required issue, checklist, and testing information. Complete the repository template, or remove non-applicable items and document the issue and testing status.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the primary change to Fleet-maintained app data.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fma-2608111213

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ee/maintained-apps/outputs/cloudflare-warp/windows.json`:
- Around line 4-7: Align the Cloudflare version scheme across the Windows
manifests by confirming the MSI-reported version and using that exact value for
the manifest version, the patched query’s version_compare threshold, and the
installer URL. Apply the same update to both the Cloudflare WARP and 10-10
configurations, ensuring older releases cannot satisfy the patched query
incorrectly.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ec44b8f4-be81-46fd-9550-796a9bd82ae6

📥 Commits

Reviewing files that changed from the base of the PR and between 0b484b7 and c1583a1.

📒 Files selected for processing (56)
  • ee/maintained-apps/outputs/adobe-acrobat-pro/darwin.json
  • ee/maintained-apps/outputs/adobe-acrobat-reader/windows.json
  • ee/maintained-apps/outputs/android-studio/darwin.json
  • ee/maintained-apps/outputs/apidog/darwin.json
  • ee/maintained-apps/outputs/autopsy/windows.json
  • ee/maintained-apps/outputs/box-drive/darwin.json
  • ee/maintained-apps/outputs/chatgpt/darwin.json
  • ee/maintained-apps/outputs/cisco-jabber/darwin.json
  • ee/maintained-apps/outputs/citrix-workspace/darwin.json
  • ee/maintained-apps/outputs/cloudflare-warp/windows.json
  • ee/maintained-apps/outputs/codexbar/darwin.json
  • ee/maintained-apps/outputs/cog-app/darwin.json
  • ee/maintained-apps/outputs/creative-force-kelvin/windows.json
  • ee/maintained-apps/outputs/devin-desktop/darwin.json
  • ee/maintained-apps/outputs/docker/windows.json
  • ee/maintained-apps/outputs/drawio/windows.json
  • ee/maintained-apps/outputs/drofus/windows.json
  • ee/maintained-apps/outputs/dropbox/darwin.json
  • ee/maintained-apps/outputs/firefox@developer-edition/darwin.json
  • ee/maintained-apps/outputs/firefox@nightly/darwin.json
  • ee/maintained-apps/outputs/framer/darwin.json
  • ee/maintained-apps/outputs/goland/windows.json
  • ee/maintained-apps/outputs/hive-app/darwin.json
  • ee/maintained-apps/outputs/keeper-password-manager/darwin.json
  • ee/maintained-apps/outputs/lenovo-system-update/windows.json
  • ee/maintained-apps/outputs/localsend/darwin.json
  • ee/maintained-apps/outputs/microsoft-edge/windows.json
  • ee/maintained-apps/outputs/milanote/darwin.json
  • ee/maintained-apps/outputs/notion/darwin.json
  • ee/maintained-apps/outputs/notion/windows.json
  • ee/maintained-apps/outputs/nvidia-geforce-now/darwin.json
  • ee/maintained-apps/outputs/obsidian/darwin.json
  • ee/maintained-apps/outputs/ok-json/darwin.json
  • ee/maintained-apps/outputs/ollama/darwin.json
  • ee/maintained-apps/outputs/ollama/windows.json
  • ee/maintained-apps/outputs/onedrive/darwin.json
  • ee/maintained-apps/outputs/phpstorm/darwin.json
  • ee/maintained-apps/outputs/phpstorm/windows.json
  • ee/maintained-apps/outputs/postman/darwin.json
  • ee/maintained-apps/outputs/postman/windows.json
  • ee/maintained-apps/outputs/purevpn/darwin.json
  • ee/maintained-apps/outputs/rocket-chat/darwin.json
  • ee/maintained-apps/outputs/shapr3d/darwin.json
  • ee/maintained-apps/outputs/shift/darwin.json
  • ee/maintained-apps/outputs/shift/windows.json
  • ee/maintained-apps/outputs/slack/darwin.json
  • ee/maintained-apps/outputs/surge/darwin.json
  • ee/maintained-apps/outputs/swiftbar/darwin.json
  • ee/maintained-apps/outputs/teleport-connect/darwin.json
  • ee/maintained-apps/outputs/teleport-connect/windows.json
  • ee/maintained-apps/outputs/teleport-suite/darwin.json
  • ee/maintained-apps/outputs/termius/windows.json
  • ee/maintained-apps/outputs/tower/darwin.json
  • ee/maintained-apps/outputs/unity-hub/darwin.json
  • ee/maintained-apps/outputs/webex/windows.json
  • ee/maintained-apps/outputs/zen/darwin.json

Comment on lines +4 to +7
"version": "26.6.905.0",
"queries": {
"exists": "SELECT 1 FROM programs WHERE name = 'Cloudflare One Client' AND publisher = 'Cloudflare, Inc.';",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Cloudflare One Client' AND publisher = 'Cloudflare, Inc.' AND version_compare(version, '26.6.880.0') < 0);",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Cloudflare One Client' AND publisher = 'Cloudflare, Inc.' AND version_compare(version, '26.6.905.0') < 0);",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Use one Cloudflare version scheme across the manifest.

The manifest and version_compare use 26.6.905.0, while the installer URL uses 2026.6.905.0. An older release such as 2025.10.186.0 can compare greater than 26.6.905.0 and incorrectly satisfy the patched query. Confirm the MSI-reported version, then use that exact value in version, version_compare, and the installer URL. Apply the same correction to 10-10.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@ee/maintained-apps/outputs/cloudflare-warp/windows.json` around lines 4 - 7,
Align the Cloudflare version scheme across the Windows manifests by confirming
the MSI-reported version and using that exact value for the manifest version,
the patched query’s version_compare threshold, and the installer URL. Apply the
same update to both the Cloudflare WARP and 10-10 configurations, ensuring older
releases cannot satisfy the patched query incorrectly.

Adobe Acrobat Pro, Cisco Jabber, Keeper Password Manager, and NVIDIA
GeForce NOW all failed darwin validation with "App version was not found
by osquery". Revert their outputs to the versions currently on main and
set "frozen": true on the homebrew inputs so the validator skips them
and the ingester stops overwriting the pinned output.
@github-actions

Copy link
Copy Markdown
Contributor

Script Diff Results

ee/maintained-apps/outputs/adobe-acrobat-reader/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/android-studio/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/apidog/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/autopsy/windows.json

=== Install Script (no changes) ===
=== Uninstall // e89e5716 -> 868c149c ===

--- /tmp/old.qX4x5o	2026-08-11 13:45:49.727837848 +0000
+++ /tmp/new.3909cC	2026-08-11 13:45:49.727837848 +0000
@@ -1,26 +1,28 @@
-$product_code = '{6BF79DCF-4641-4323-80A8-C43596518ECE}'
-$timeoutSeconds = 300  # 5 minute timeout
-
-# Fleet uninstalls app using product code that's extracted on upload
-$process = Start-Process msiexec -ArgumentList @("/quiet", "/x", $product_code, "/norestart") -PassThru
-
-# Wait for process with timeout
-$completed = $process.WaitForExit($timeoutSeconds * 1000)
-
-if (-not $completed) {
-    Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue
-    Exit 1603  # ERROR_UNINSTALL_FAILURE
-}
+# Fleet uninstalls app by finding all related product codes for the specified upgrade code
+$inst = New-Object -ComObject "WindowsInstaller.Installer"
+$timeoutSeconds = 300  # 5 minute timeout per product
 
 # MSI exit codes that indicate success. 3010 = ERROR_SUCCESS_REBOOT_REQUIRED,
 # 1641 = ERROR_SUCCESS_REBOOT_INITIATED. Treat these as success rather than failure.
 $successCodes = @(0, 3010, 1641)
 
-# Check exit code and output result
-if ($successCodes -contains $process.ExitCode) {
-    Write-Output "Exit 0"
-    Exit 0
-} else {
-    Write-Output "Exit $($process.ExitCode)"
-    Exit $process.ExitCode
+foreach ($product_code in $inst.RelatedProducts('{6AAD1A1D-40C1-4515-B4D6-EA5A167FFA77}')) {
+    $process = Start-Process msiexec -ArgumentList @("/quiet", "/x", $product_code, "/norestart") -PassThru
+
+    # Wait for process with timeout
+    $completed = $process.WaitForExit($timeoutSeconds * 1000)
+
+    if (-not $completed) {
+        Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue
+        Exit 1603  # ERROR_UNINSTALL_FAILURE
+    }
+
+    # If the uninstall failed, bail
+    if ($successCodes -notcontains $process.ExitCode) {
+        Write-Output "Uninstall for $($product_code) exited $($process.ExitCode)"
+        Exit $process.ExitCode
+    }
 }
+
+# All uninstalls succeeded; exit success
+Exit 0

ee/maintained-apps/outputs/box-drive/darwin.json

=== Install // 0282e69d -> 346485a2 ===

--- /tmp/old.D8B5iG	2026-08-11 13:45:49.783838129 +0000
+++ /tmp/new.Ciz9Sn	2026-08-11 13:45:49.783838129 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.box.desktop'
-sudo installer -pkg "$TMPDIR/BoxDrive-2.53.219.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/BoxDrive-2.53.223.pkg" -target / || exit $?
 relaunch_application 'com.box.desktop'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/chatgpt/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/citrix-workspace/darwin.json

=== Install // a78b38b6 -> 38dfe7fb ===

--- /tmp/old.Pztf62	2026-08-11 13:45:49.863838531 +0000
+++ /tmp/new.U8bfP3	2026-08-11 13:45:49.863838531 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.citrix.receiver.nomas'
-sudo installer -pkg "$TMPDIR/CitrixWorkspaceAppUniversal26.07.0.71.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/CitrixWorkspaceAppUniversal26.07.0.75.pkg" -target / || exit $?
 relaunch_application 'com.citrix.receiver.nomas'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/cloudflare-warp/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/codexbar/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/cog-app/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/creative-force-kelvin/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/devin-desktop/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/docker/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/drawio/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/drofus/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/dropbox/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/firefox@developer-edition/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/firefox@nightly/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/framer/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/goland/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/hive-app/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/lenovo-system-update/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/localsend/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/microsoft-edge/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/milanote/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/notion/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/notion/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/obsidian/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ok-json/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ollama/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/ollama/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/onedrive/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/phpstorm/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/phpstorm/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/postman/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/postman/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/purevpn/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/rocket-chat/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shapr3d/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shift/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/shift/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/slack/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/surge/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/swiftbar/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-connect/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-connect/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/teleport-suite/darwin.json

=== Install // e996f404 -> 2b57ace9 ===

--- /tmp/old.gnrwyx	2026-08-11 13:45:51.177845130 +0000
+++ /tmp/new.H4Nzg5	2026-08-11 13:45:51.177845130 +0000
@@ -96,5 +96,5 @@
 
 # install pkg files
 quit_and_track_application 'com.gravitational.teleport.tsh'
-sudo installer -pkg "$TMPDIR/teleport-18.10.3.pkg" -target / || exit $?
+sudo installer -pkg "$TMPDIR/teleport-18.10.4.pkg" -target / || exit $?
 relaunch_application 'com.gravitational.teleport.tsh'

=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/termius/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/tower/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/unity-hub/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/webex/windows.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

ee/maintained-apps/outputs/zen/darwin.json

=== Install Script (no changes) ===
=== Uninstall Script (no changes) ===

@allenhouchins
allenhouchins merged commit 3e5fe9c into main Aug 11, 2026
19 checks passed
@allenhouchins
allenhouchins deleted the fma-2608111213 branch August 11, 2026 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants