Skip to content

Desktop packages

Terminal window
carbon bundle desktop --target osx-arm64
carbon bundle desktop --target osx-x64
carbon bundle desktop --target osx-universal

Carbon creates an .app and .dmg. Universal packages use a native universal launcher with architecture-specific self-contained .NET payloads, avoiding changes to appended single-file data.

Install WiX 4, then bundle:

Terminal window
dotnet tool install --global wix --version 4.*
carbon bundle desktop --target win-x64

The .msi can bootstrap WebView2, carry an offline installer, or skip WebView2 setup according to bundle.windows.webView2InstallMode.

Terminal window
carbon bundle desktop --target linux-x64

Configure one or more formats:

{
"bundle": {
"linux": {
"formats": ["appimage", "deb", "rpm"],
"maintainer": "Example <dev@example.com>",
"depends": ["libwebkit2gtk-4.1-0"]
}
}
}

Carbon writes desktop entries, hicolor icons, categories, MIME associations, and protocol handlers into Linux packages. Package dependencies remain distribution-specific and should be tested on each supported distribution.

bundle.resources copies additional files into the platform resource location. File associations and URL protocols are translated to Info.plist, MSI registry entries, and Linux desktop/MIME metadata.