Downloads, verifies, and installs the pinned Firecracker release (v1.16.0) for the current CPU architecture.
mix firecracker.install [--prefix DIR]Steps performed:
- Detects the CPU architecture (
x86_64oraarch64). - Downloads the release tarball and verifies its SHA-256 checksum.
- Extracts the tarball, then copies the binaries to
<prefix>/firecrackerand<prefix>/jailerusing the bare basenamesfirecrackerandjailer. The setuid helper validates binaries viaSafeBin<"firecracker">andSafeBin<"jailer">, which match on basename only — version-stamped names such asfirecracker-v1.16.0-x86_64are rejected unconditionally. - Marks both binaries executable (
0o755). - Prints the
/etc/hyper/config.tomlsnippet the operator needs to paste.
This task installs unprivileged binaries and prints configuration.
Privilege at runtime is handled by hyper-suidhelper (the setuid helper).
This task does not setuid firecracker or jailer. Install and setuid
the helper separately with mix suidhelper.install.
Options
--prefix DIR— installation directory (default:/opt/firecracker).
Security requirements
After installing, ensure:
- The binaries are root-owned and not group- or world-writable. The suidhelper refuses binaries with loose permissions.
/etc/hyper/config.tomlis root-owned with mode0644.