From 7127532c73869f96bd98604cf9cf895bcec75631 Mon Sep 17 00:00:00 2001 From: Dorian Date: Sun, 19 Apr 2026 08:54:53 -0400 Subject: [PATCH] fix(iso): build fips with --features gateway so fips-gateway binary exists MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Third time's the charm. The upstream fips Cargo.toml puts fips-gateway behind features.gateway = ["dep:rustables"], so the previous two attempts (--bins, --workspace --bins) never produced the binary — only the default feature set was compiled. cargo deb --no-build then panics looking for the missing binary. Inspected /tmp/fips-investigate (fresh clone of upstream main on 2026-04-19) to confirm — the feature flag is the gate, not a workspace layout issue. Co-Authored-By: Claude Opus 4.7 (1M context) --- image-recipe/build-auto-installer-iso.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/image-recipe/build-auto-installer-iso.sh b/image-recipe/build-auto-installer-iso.sh index a56124ca..b23bf633 100755 --- a/image-recipe/build-auto-installer-iso.sh +++ b/image-recipe/build-auto-installer-iso.sh @@ -260,10 +260,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \\ RUN cargo install --locked cargo-deb RUN git clone --depth 1 https://github.com/jmcorgan/fips.git /src/fips WORKDIR /src/fips -# fips-gateway is in a separate workspace crate; plain --bins on the -# root only builds root's bins. --workspace pulls every member crate's -# bin target so cargo deb finds them all. -RUN cargo build --release --workspace --bins +# fips-gateway is gated behind the `gateway` Cargo feature (depends on +# `rustables`). Without the feature, cargo doesn't build it, and +# cargo deb --no-build panics hunting for target/release/fips-gateway. +# Inspected upstream Cargo.toml 2026-04-19 — features.gateway = ["dep:rustables"]. +RUN cargo build --release --features gateway RUN cargo deb --no-build RUN cp target/debian/fips_*_amd64.deb /tmp/fips.deb