FMA - Chrome remote desktop (#46484)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Chrome Remote Desktop is now supported on Windows with integrated
package management. Users can discover, install, and manage the
application directly through the platform with full tracking and
automatic update capabilities. The application includes proper UI
branding and Windows installation integration.

<!-- review_stack_entry_start -->

[![Review Change
Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/fleetdm/fleet/pull/46484?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack)

<!-- review_stack_entry_end -->

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Allen Houchins <32207388+allenhouchins@users.noreply.github.com>
This commit is contained in:
Harrison Ravazzolo
2026-05-29 16:59:04 -05:00
committed by GitHub
co-authored by Allen Houchins
parent fbfcf5fd98
commit cf4d869906
6 changed files with 56 additions and 0 deletions
@@ -0,0 +1,10 @@
{
"name": "Chrome Remote Desktop",
"slug": "chrome-remote-desktop/windows",
"package_identifier": "Google.ChromeRemoteDesktopHost",
"unique_identifier": "Chrome Remote Desktop Host",
"installer_arch": "x86",
"installer_type": "msi",
"installer_scope": "machine",
"default_categories": ["Productivity"]
}
+7
View File
@@ -477,6 +477,13 @@
"unique_identifier": "com.openai.chat",
"description": "ChatGPT Desktop is OpenAI's official ChatGPT desktop app for macOS, providing seamless access to AI-powered conversations and assistance."
},
{
"name": "Chrome Remote Desktop",
"slug": "chrome-remote-desktop/windows",
"platform": "windows",
"unique_identifier": "Chrome Remote Desktop Host",
"description": "Chrome Remote Desktop is an app that allows admins to help troubleshoot through the Google Chrome browser."
},
{
"name": "Cisco Jabber",
"slug": "cisco-jabber/darwin",
@@ -0,0 +1,23 @@
{
"versions": [
{
"version": "148.0.7778.23",
"queries": {
"exists": "SELECT 1 FROM programs WHERE name = 'Chrome Remote Desktop Host' AND publisher = 'Google LLC';",
"patched": "SELECT 1 WHERE NOT EXISTS (SELECT 1 FROM programs WHERE name = 'Chrome Remote Desktop Host' AND publisher = 'Google LLC' AND version_compare(version, '148.0.7778.23') < 0);"
},
"installer_url": "https://dl.google.com/release2/misc/acrsfvl3wyga6uijvhfjjoxbji3a_148.0.7778.23/remoting-host.msi",
"install_script_ref": "8959087b",
"uninstall_script_ref": "44518c74",
"sha256": "9ff875846f3fc5889f195d7b523e6fb6d4c2a0ecfbac9551284d95c62a9342f7",
"default_categories": [
"Productivity"
],
"upgrade_code": "{2B21F767-E157-4FA6-963C-55834C1433A6}"
}
],
"refs": {
"44518c74": "# Fleet uninstalls app by finding all related product codes for the specified upgrade code\n$inst = New-Object -ComObject \"WindowsInstaller.Installer\"\n$timeoutSeconds = 300 # 5 minute timeout per product\n\nforeach ($product_code in $inst.RelatedProducts('{2B21F767-E157-4FA6-963C-55834C1433A6}')) {\n $process = Start-Process msiexec -ArgumentList @(\"/quiet\", \"/x\", $product_code, \"/norestart\") -PassThru\n \n # Wait for process with timeout\n $completed = $process.WaitForExit($timeoutSeconds * 1000)\n \n if (-not $completed) {\n Stop-Process -Id $process.Id -Force -ErrorAction SilentlyContinue\n Exit 1603 # ERROR_UNINSTALL_FAILURE\n }\n \n # If the uninstall failed, bail\n if ($process.ExitCode -ne 0) {\n Write-Output \"Uninstall for $($product_code) exited $($process.ExitCode)\"\n Exit $process.ExitCode\n }\n}\n\n# All uninstalls succeeded; exit success\nExit 0\n",
"8959087b": "$logFile = \"${env:TEMP}/fleet-install-software.log\"\n\ntry {\n\n$installProcess = Start-Process msiexec.exe `\n -ArgumentList \"/quiet /norestart /lv ${logFile} /i `\"${env:INSTALLER_PATH}`\"\" `\n -PassThru -Verb RunAs -Wait\n\nGet-Content $logFile -Tail 500\n\nExit $installProcess.ExitCode\n\n} catch {\n Write-Host \"Error: $_\"\n Exit 1\n}\n"
}
}
File diff suppressed because one or more lines are too long
@@ -14,6 +14,7 @@ import Bluej from "./Bluej";
import BurpSuiteCommunity from "./BurpSuiteCommunity";
import Cavalry from "./Cavalry";
import Charles from "./Charles";
import ChromeRemoteDesktop from "./ChromeRemoteDesktop";
import ConnectFonts from "./ConnectFonts";
import CrashPlan from "./CrashPlan";
import DruvaInSync from "./DruvaInSync";
@@ -332,6 +333,7 @@ export const SOFTWARE_NAME_TO_ICON_MAP = {
charles: Charles,
"chatgpt atlas": ChatGptAtlas,
chatgpt: ChatGpt,
"chrome remote desktop": ChromeRemoteDesktop,
"cisco jabber": CiscoJabber,
"citrix workspace": CitrixWorkspace,
claude: Claude,
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB