<!-- Add the related story/sub-task/bug number, like Resolves #123, or remove if NA --> **Related issue:** Resolves #49736 Adds **Airtable** (`Formagrid.Airtable`) as a Fleet-maintained app for Windows, grouped with the existing macOS Airtable FMA under the shared name `Airtable`. ## What changed - `ee/maintained-apps/inputs/winget/airtable.json` — winget input (`neutral` arch, `exe`, `user` scope). - `ee/maintained-apps/inputs/winget/scripts/airtable_install.ps1` — install script. - `ee/maintained-apps/inputs/winget/scripts/airtable_uninstall.ps1` — uninstall script. - `ee/maintained-apps/outputs/airtable/windows.json` — generated output. - `ee/maintained-apps/outputs/apps.json` — catalog entry + description. ## Reviewer notes - **Identity verified against the real installer, not the catalog.** Downloaded `AirtableSetup1.4.5.exe` (SHA256 matched the winget manifest exactly) and extracted the embedded Squirrel nuspec: `<title>Airtable</title>` → registry DisplayName `Airtable` (`unique_identifier`); `<authors>Airtable</authors>` → registry Publisher `Airtable`. Publisher matches the winget locale, so no `program_publisher` override is needed. exists query: `... WHERE name = 'Airtable' AND publisher = 'Airtable'`. - **Per-user Squirrel installer.** Manifest is `InstallerType: exe`, `Scope: user`, `Silent: --silent` (Squirrel signature). Run directly as Local System it would install into the SYSTEM profile and lock its own `.exe`, so the install uses the **Figma/Postman scheduled-task pattern** — it runs `--silent` in the logged-on user's session. Uninstall does a defensive HKLM+HKCU registry lookup and runs Squirrel's `Update.exe --silent`. - `installer_arch: neutral` matches the manifest (Dynalist precedent). The binary is x86; it runs on x64 and ARM64 via emulation and routes to `windows-latest`. - Installer URL is version-pinned (`AirtableSetup1.4.5.exe`), not a "latest" redirect, so the pinned SHA won't silently drift. - Icon already exists (frontend `airtable` key + website PNG). No shared Go code changed; no validator rebuild needed. # Checklist for submitter - [x] QA'd all new/changed functionality manually (winget manifest + installer identity verified; output regenerated via `go run cmd/maintained-apps/main.go --slug="airtable/windows"`; `apps.json` valid JSON, additions-only diff) <!-- FMA-only content change: no changes/ entry, DB migration, config setting, or fleetd change. -->
13 lines
452 B
JSON
13 lines
452 B
JSON
{
|
|
"name": "Airtable",
|
|
"slug": "airtable/windows",
|
|
"package_identifier": "Formagrid.Airtable",
|
|
"unique_identifier": "Airtable",
|
|
"install_script_path": "ee/maintained-apps/inputs/winget/scripts/airtable_install.ps1",
|
|
"uninstall_script_path": "ee/maintained-apps/inputs/winget/scripts/airtable_uninstall.ps1",
|
|
"installer_arch": "neutral",
|
|
"installer_type": "exe",
|
|
"installer_scope": "user",
|
|
"default_categories": ["Developer tools"]
|
|
}
|