This repository contains utilities for running integration tests for Linux guests under Machina.
First install rust (follow the instructions of the rustup tool):
$ curl https://sh.rustup.rs -sSf | sh $ source ~/.cargo/env
Next we add some new targets for cross-compiling and static linking. Rust supports statically linking libc by replacing the usual gnu libc with musl (see The Rust Book: Advanced Linking).
$ rustup target add x86_64-unknown-linux-musl $ rustup target add aarch64-unknown-linux-musl
Lastly, run the build script for your desired architecture. This will invoke cargo for you as well as create an ext2 image in out/.
$ ./build.sh {arm64|x64}