mirror of
https://github.com/flatpak/flatpak.git
synced 2026-03-14 21:18:11 -04:00
This adds a new "multiarch" feature which allows bundling e.g. 32-bit binaries to be run in a x86_64 environment. By default, the seccomp filter is configured to allow only the native architecture. When the "multiarch" feature is enabled, the filter will be configured to allow running binaries of additional architectures supported. For x86_64, this allows x86 32-bit binaries; and for Aarch64, allows 32-bit ARM binaries. Application bundles can use the feature e.g. in order to ship 32-bit binaries alongside with a mostly-64-bit application. This is particularly interesting when for applications that might launch themselves prebuilt programs for which 64-bit versions do not exist. For example, the Steam application is available as a 64-bit executable, but some of the games available are 32-bit only. A Flatpak bundle for the Steam application with "multiarch" enabled is able launch the 32-bit games -- without the feature enabled, the seccomp filter would prevent them from running. Multiple-architecture support is enabled by adding the "multiarch" value for the "features" key in the metadata file for a Flatpak: [Context] features=multiarch; The corresponding "--allow=multiarch" command line option is supported in "flatpak build-finish" as well.