You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Flowey should consider using apt-get install --no-install-recommends on Ubuntu so required build packages must be explicitly declared rather than arriving incidentally through recommendations.
PR #4740 exposed a gap when switching to the prepped Linux image: the ARM64 cross-compiler was already present, so Flowey skipped package installation, but ARM64 glibc headers and startup objects were unavailable. The shared VMM-test artifact build failed on missing Scrt1.o/crti.o, and the ARM64 OpenVMM build failed on missing sys/types.h and bits/libc-header-start.h in SQLite/OpenSSL builds. See https://github.com/microsoft/openvmm/actions/runs/40040988856.
init_cross_build requested gcc-aarch64-linux-gnu, whose Ubuntu package only recommends libc6-dev-arm64-cross. A normal fresh apt install pulls that recommendation in and masks the incomplete declaration; a preinstalled compiler does not. The specific missing dependency is being addressed separately in #4740.
Suggested follow-up: add --no-install-recommends to the Ubuntu installation path in flowey/flowey_lib_common/src/install_dist_pkg.rs, audit and explicitly declare required packages in the requesting nodes, and validate on a minimal image without optional recommended packages already installed. Keep image provisioning consistent with this policy where appropriate. Existing prepped images alone will not expose every undeclared dependency, and this is not a request to remove packages from developer machines.
The goal is for explicitly declared packages and their hard dependencies to be sufficient, regardless of whether CI starts from a base or prepped image.
Activity
flowey: dont install recommended packages (#4793)