# Build the toolchain image: # podman build -f Dockerfile.build -t mfctl-build . # Build the mounted project (output: target/bookworm/release/mfctl): # podman run --rm --userns=keep-id -v "$PWD:/work:Z" mfctl-build # Optional persistent dependency cache: # add -v mfctl-cargo:/tmp/cargo:U to the run command. FROM docker.io/library/rust:bookworm RUN apt-get update \ && apt-get install -y --no-install-recommends cmake libasound2-dev libclang-dev pkg-config \ && rm -rf /var/lib/apt/lists/* # Writable for the host user with --userns=keep-id. ENV CARGO_HOME=/tmp/cargo WORKDIR /work # Keep container-built artifacts separate from native host builds. CMD ["cargo", "build", "--release", "--locked", "--target-dir", "target/bookworm"]