Skip to content

Add 12 Windows FMAs - #47558

Merged
allenhouchins merged 5 commits into
mainfrom
windows-fma-parity-msi
Jun 13, 2026
Merged

Add 12 Windows FMAs#47558
allenhouchins merged 5 commits into
mainfrom
windows-fma-parity-msi

Conversation

@allenhouchins

@allenhouchins allenhouchins commented Jun 13, 2026

Copy link
Copy Markdown
Member

Adds Windows Fleet-maintained apps for apps that already exist as macOS FMAs and ship in winget as a machine-scope MSI/WiX installer:

Bitwig Studio, Clockify, CMake, eM Client, Epic Games Launcher, Mixxx, NAPS2, PDFsam Basic, Topaz Gigapixel AI, Topaz Photo AI, Transmission, Zulip.

Identity fields verified against the real MSI (msiinfo) per new-fma rules:

  • fuzzy_match_name for version-bearing DisplayNames (Bitwig, Transmission)
  • program_publisher overrides where registry Publisher != winget locale (Clockify -> CAKE.com Inc., eM Client -> eM Client s.r.o.)
  • eM Client is x86-only (no x64 in winget)

Summary by CodeRabbit

Release Notes

  • New Features
    • Added 12 new applications to the Windows package catalog: Bitwig Studio, Clockify, CMake, eM Client, Epic Games Launcher, Mixxx, NAPS2, PDFsam Basic, Topaz Gigapixel AI, Topaz Photo AI, Transmission, and Zulip.
    • Configured Windows installer metadata and automated installation/uninstallation support for each application.

Adds Windows Fleet-maintained apps for apps that already exist as macOS
FMAs and ship in winget as a machine-scope MSI/WiX installer:

Bitwig Studio, Clockify, CMake, eM Client, Epic Games Launcher, Mixxx,
NAPS2, PDFsam Basic, Topaz Gigapixel AI, Topaz Photo AI, Transmission, Zulip.

Identity fields verified against the real MSI (msiinfo) per new-fma rules:
- fuzzy_match_name for version-bearing DisplayNames (Bitwig, Transmission)
- program_publisher overrides where registry Publisher != winget locale
  (Clockify -> CAKE.com Inc., eM Client -> eM Client s.r.o.)
- eM Client is x86-only (no x64 in winget)
fleet-release
fleet-release previously approved these changes Jun 13, 2026
Adds Windows Fleet-maintained apps for apps that already exist as macOS
FMAs and ship in winget as a machine-scope MSI/WiX installer:

Bitwig Studio, Clockify, CMake, eM Client, Epic Games Launcher, Mixxx,
NAPS2, PDFsam Basic, Topaz Gigapixel AI, Topaz Photo AI, Transmission, Zulip.

Identity fields verified against the real MSI (msiinfo) per new-fma rules:
- fuzzy_match_name for version-bearing DisplayNames (Bitwig, Transmission)
- program_publisher overrides where registry Publisher != winget locale
  (Clockify -> CAKE.com Inc., eM Client -> eM Client s.r.o.)
- eM Client is x86-only (no x64 in winget)
fleet-release
fleet-release previously approved these changes Jun 13, 2026
@allenhouchins
allenhouchins marked this pull request as ready for review June 13, 2026 03:25
Copilot AI review requested due to automatic review settings June 13, 2026 03:25
@allenhouchins
allenhouchins merged commit 268c918 into main Jun 13, 2026
13 of 14 checks passed
@allenhouchins
allenhouchins deleted the windows-fma-parity-msi branch June 13, 2026 03:25
@coderabbitai

coderabbitai Bot commented Jun 13, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 4a456a50-fe3e-4804-9f51-5376176cbbab

📥 Commits

Reviewing files that changed from the base of the PR and between 48b4557 and a4e945a.

📒 Files selected for processing (25)
  • ee/maintained-apps/inputs/winget/bitwig-studio.json
  • ee/maintained-apps/inputs/winget/clockify.json
  • ee/maintained-apps/inputs/winget/cmake-app.json
  • ee/maintained-apps/inputs/winget/emclient.json
  • ee/maintained-apps/inputs/winget/epic-games.json
  • ee/maintained-apps/inputs/winget/mixxx.json
  • ee/maintained-apps/inputs/winget/naps2.json
  • ee/maintained-apps/inputs/winget/pdfsam-basic.json
  • ee/maintained-apps/inputs/winget/topaz-gigapixel-ai.json
  • ee/maintained-apps/inputs/winget/topaz-photo-ai.json
  • ee/maintained-apps/inputs/winget/transmission.json
  • ee/maintained-apps/inputs/winget/zulip.json
  • ee/maintained-apps/outputs/apps.json
  • ee/maintained-apps/outputs/bitwig-studio/windows.json
  • ee/maintained-apps/outputs/clockify/windows.json
  • ee/maintained-apps/outputs/cmake-app/windows.json
  • ee/maintained-apps/outputs/emclient/windows.json
  • ee/maintained-apps/outputs/epic-games/windows.json
  • ee/maintained-apps/outputs/mixxx/windows.json
  • ee/maintained-apps/outputs/naps2/windows.json
  • ee/maintained-apps/outputs/pdfsam-basic/windows.json
  • ee/maintained-apps/outputs/topaz-gigapixel-ai/windows.json
  • ee/maintained-apps/outputs/topaz-photo-ai/windows.json
  • ee/maintained-apps/outputs/transmission/windows.json
  • ee/maintained-apps/outputs/zulip/windows.json

Walkthrough

This pull request adds Windows platform support for 12 applications by introducing three complementary components. The Winget input manifests define package metadata and installer characteristics for each application. The app registry is updated with Windows-specific entries including platform identifiers and descriptions. Finally, Windows deployment configurations specify version metadata, product detection via SQL queries, MSI installer details with checksums and upgrade codes, and embedded PowerShell scripts that handle automated installation with logging and uninstallation with timeout and exit-code management for each application.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch windows-fma-parity-msi

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 and usage tips.

Copilot AI 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.

Pull request overview

This PR expands Fleet’s Fleet-maintained app (FMA) catalog by adding Windows variants (winget/MSI, machine scope) for 12 apps that already exist as macOS FMAs, wiring them into the maintained-apps index and providing install/uninstall scripts and detection queries for Windows.

Changes:

  • Added 12 new ee/maintained-apps/outputs/*/windows.json manifests with Windows programs-table detection queries, installer URLs, hashes, and MSI uninstall logic (mostly via upgrade_code).
  • Added 12 new ee/maintained-apps/inputs/winget/*.json definitions to drive/track winget sourcing and metadata (arch, scope, publisher overrides, fuzzy name matching).
  • Updated ee/maintained-apps/outputs/apps.json to include the new Windows entries so they show up in the catalog.

Reviewed changes

Copilot reviewed 25 out of 25 changed files in this pull request and generated no comments.

Show a summary per file
File Description
ee/maintained-apps/outputs/zulip/windows.json New Windows Zulip manifest (queries, installer URL/hash, MSI upgrade_code uninstall).
ee/maintained-apps/outputs/transmission/windows.json New Windows Transmission manifest using fuzzy name matching via LIKE + upgrade_code uninstall.
ee/maintained-apps/outputs/topaz-photo-ai/windows.json New Windows Topaz Photo AI manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/topaz-gigapixel-ai/windows.json New Windows Topaz Gigapixel AI manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/pdfsam-basic/windows.json New Windows PDFsam Basic manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/naps2/windows.json New Windows NAPS2 manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/mixxx/windows.json New Windows Mixxx manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/epic-games/windows.json New Windows Epic Games Launcher manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/emclient/windows.json New Windows eM Client manifest (x86-only) with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/cmake-app/windows.json New Windows CMake manifest with MSI upgrade_code uninstall.
ee/maintained-apps/outputs/clockify/windows.json New Windows Clockify manifest with publisher override and MSI upgrade_code uninstall.
ee/maintained-apps/outputs/bitwig-studio/windows.json New Windows Bitwig Studio manifest with product-code uninstall script.
ee/maintained-apps/outputs/apps.json Registers the 12 new Windows FMAs in the catalog list.
ee/maintained-apps/inputs/winget/zulip.json Winget input definition for Zulip (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/transmission.json Winget input definition for Transmission (x64 MSI, machine scope, fuzzy_match_name).
ee/maintained-apps/inputs/winget/topaz-photo-ai.json Winget input definition for Topaz Photo AI (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/topaz-gigapixel-ai.json Winget input definition for Topaz Gigapixel AI (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/pdfsam-basic.json Winget input definition for PDFsam Basic (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/naps2.json Winget input definition for NAPS2 (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/mixxx.json Winget input definition for Mixxx (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/epic-games.json Winget input definition for Epic Games Launcher (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/emclient.json Winget input definition for eM Client (x86 MSI, machine scope, publisher override).
ee/maintained-apps/inputs/winget/cmake-app.json Winget input definition for CMake (x64 MSI, machine scope).
ee/maintained-apps/inputs/winget/clockify.json Winget input definition for Clockify Desktop (x64 MSI, machine scope, publisher override).
ee/maintained-apps/inputs/winget/bitwig-studio.json Winget input definition for Bitwig Studio (x64 MSI, machine scope, fuzzy_match_name).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

3 participants