Add Twingate as a macOS FMA (#36260)
This commit is contained in:
@@ -17,6 +17,7 @@ var Funcs = map[string][]func(*maintained_apps.FMAManifestApp) (*maintained_apps
|
||||
"cisco-jabber/darwin": {CiscoJabberVersionTransformer},
|
||||
"parallels/darwin": {ParallelsVersionShortener},
|
||||
"github/darwin": {GitHubDesktopVersionShortener},
|
||||
"twingate/darwin": {TwingateVersionShortener},
|
||||
"citrix-workspace/darwin": {CitrixWorkspaceVersionShortener},
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package externalrefs
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
maintained_apps "github.com/fleetdm/fleet/v4/ee/maintained-apps"
|
||||
)
|
||||
|
||||
// TwingateVersionShortener extracts the bundle_short_version from Homebrew's version format.
|
||||
// Homebrew version format: "2025.288.20108"
|
||||
// osquery bundle_short_version: "2025.288"
|
||||
// osquery bundle_version: "120108"
|
||||
// This extracts the first two parts (before the last dot) to match osquery's bundle_short_version.
|
||||
func TwingateVersionShortener(app *maintained_apps.FMAManifestApp) (*maintained_apps.FMAManifestApp, error) {
|
||||
homebrewVersion := app.Version
|
||||
|
||||
// Split on dots and take the first two parts (bundle_short_version)
|
||||
parts := strings.Split(homebrewVersion, ".")
|
||||
if len(parts) >= 2 {
|
||||
app.Version = strings.Join(parts[:2], ".")
|
||||
} else {
|
||||
return app, fmt.Errorf("Expected Twingate version to have format X.Y.Z but found '%s'", homebrewVersion)
|
||||
}
|
||||
|
||||
return app, nil
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "Twingate",
|
||||
"unique_identifier": "com.twingate.macos",
|
||||
"token": "twingate",
|
||||
"installer_format": "pkg",
|
||||
"slug": "twingate/darwin",
|
||||
"default_categories": ["Productivity"]
|
||||
}
|
||||
@@ -764,6 +764,13 @@
|
||||
"unique_identifier": "net.tunnelblick.tunnelblick",
|
||||
"description": "Tunnelblick is a free and open-source OpenVPN client."
|
||||
},
|
||||
{
|
||||
"name": "Twingate",
|
||||
"slug": "twingate/darwin",
|
||||
"platform": "darwin",
|
||||
"unique_identifier": "com.twingate.macos",
|
||||
"description": "Twingate is a zero trust network access platform."
|
||||
},
|
||||
{
|
||||
"name": "Microsoft Visual Studio Code",
|
||||
"slug": "visual-studio-code/darwin",
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
|
After Width: | Height: | Size: 4.4 KiB |
Reference in New Issue
Block a user