mirror of
https://github.com/AppImage/type2-runtime.git
synced 2026-11-10 18:37:45 +00:00
The runtime is the executable part of every AppImage. It mounts the payload via FUSE and executes the entrypoint.
- C 83.5%
- Shell 13%
- Linker Script 2.2%
- Dockerfile 0.7%
- Makefile 0.6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
libfuse is built with debug info, so the random mktemp path ends up in libfuse3.a and, through static linking, in the runtime's debug info, build ID and .gnu_debuglink CRC. Two builds of the same build environment therefore yield different runtime binaries. Map the path to a fixed one using -ffile-prefix-map. With this change, separate builds produce bit-identical runtime and .debug files (tested for x86_64 and i686). Refs #133 |
||
| .github | ||
| patches/libfuse | ||
| scripts | ||
| src/runtime | ||
| .gitignore | ||
| BUILD.md | ||
| LICENSE | ||
| README.md | ||
| signing-pubkey.asc | ||
| Vagrantfile | ||
type2-runtime 
The runtime is the executable part of every AppImage. It mounts the payload via FUSE and executes the entrypoint.
This repository builds a statically linked runtime for type-2 AppImages in a Alpine Linux chroot with musl libc.
Since the runtime is linked statically, libfuse2 is no longer required on the target system.
Notes for users
As an AppImage user, you do not need this repository, as the AppImage runtime is embedded into every AppImage.
Notes for developers
Please note: This repository is meant to be extremely simple.
- Do NOT add additional external dependencies or files. Everything shall be implemented in one file.
runtime.c - Do NOT add a complicated "build system" (like autotools, CMake,...) other than the existing simple Makefile and bash
Binaries are provided on GitHub Releases.
Please see BUILD.md if you want to build the runtime yourself.
Signing
Release builds are signed automatically using GnuPG. The corresponding public key can be found in the file signing-pubkey.asc.