跳到内容
Tauri

AppImage

AppImage 是一种分发格式,它不依赖于系统已安装的软件包,而是将应用程序所需的所有依赖项和文件捆绑在一起。因此,输出文件较大,但更易于分发,因为它在许多 Linux 发行版上都受支持,并且无需安装即可执行。用户只需使文件可执行 (chmod a+x MyProject.AppImage),然后即可运行它 (./MyProject.AppImage)。

AppImage 非常方便,如果您无法制作针对发行版软件包管理器的软件包,则可以简化分发过程。但是,您应该谨慎使用它,因为文件大小会从 2-6 MB 范围增长到 70+ MB。

通过 GStreamer 提供多媒体支持

如果您的应用程序播放音频/视频,则需要启用 tauri.conf.json > bundle > linux > appimage > bundleMediaFramework。这将增加 AppImage 捆绑包的大小,以包含媒体播放所需的其他 gstreamer 文件。此标志目前仅在 Ubuntu 构建系统上完全受支持。确保您的构建系统具有您的应用程序在运行时可能需要的所有插件。

自定义文件

要在 AppImage 中包含您不想通过 Tauri 的 resources 功能 包含的自定义文件,您可以在 tauri.conf.json > bundle > linux > appimage > files 中提供文件或文件夹列表。配置对象将 AppImage 中的路径映射到文件系统上文件的路径,相对于 tauri.conf.json 文件。这是一个配置示例

tauri.conf.json
{
"bundle": {
"linux": {
"appimage": {
"files": {
"/usr/share/README.md": "../README.md", // copies the ../README.md file to <appimage>/usr/share/README.md
"/usr/assets": "../assets/" // copies the entire ../assets directory to <appimage>/usr/assets
}
}
}
}
}

用于 ARM 设备的 AppImage

linuxdeploy,Tauri 使用的 AppImage 工具,目前 不支持交叉编译 ARM AppImage。这意味着 ARM AppImage 只能在 ARM 设备或模拟器上构建。

请查看我们的 GitHub Action 指南,了解利用 QEMU 构建应用程序的工作流示例。请注意,这非常慢,仅建议在 Build Minutes 免费的公共存储库中使用。在私有存储库中,GitHub 的 ARM runners 应该更具成本效益,并且更易于设置。


© 2025 Tauri 贡献者。CC-BY / MIT