On 4/17/25 10:14 AM, Eric Blake wrote: > On Thu, Apr 17, 2025 at 02:28:36PM +0200, Bruno Haible via Bug reports for > autoconf wrote: >> Jeffrey Walton wrote: >>> Awk is a standard Posix utility: >>> <https://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html>. >> >> The newest POSIX is POSIX:2024. Update your URLs: >> <https://pubs.opengroup.org/onlinepubs/9799919799/idx/utilities.html>. > > Just because it is a POSIX utility doesn't matter - in the modern > world of container images, the goal is to start as bare-bones as > possible (intentionally NOT a full POSIX environment) and then > explicitly document what additional tools are needed for whatever task > your container will be doing. If your container will be running a > configure script, it appears that the distros now want it to be your > responsibility, as a prerequisite of preparing that container, to pull > in additional POSIX utilities that the configure script will rely on, > rather than assuming that the distro has provided them out-of-the-box.
I very much understand and sympathize with the desire to have a barebones environment. But a real barebones environment is an empty root containing exactly two packages: - the one providing /bin/sh - the one providing Alpine's `apk`, so that the person entering the container can explicitly apk add the things they need ... In general, the autoconf design of depending on shell invites itself to needing "POSIX utilities" to do that work, and it is very reasonable that it do so using utilities that are: - simple or already solved to bootstrap - available everywhere on a desktop install - available everywhere as an optional package awk fills this need admirably. The next packages to be trimmed down as "unneeded in containers" will surely be grep and sed. Maybe distros could or should provide virtual / meta packages for installing a POSIX environment, or at least a "gnuconfigure-runtime", so that people can easily install what they need to build packages in CI/CD. As above: > Maybe Autoconf should be changed so that 'configure' fails quickly if > there's no awk. That shouldn't be much work. Probably it is worth having 'configure' fail quickly if any of the basic prerequisites Paul added to the manual are missing. awk isn't special here. -- Eli Schwartz
OpenPGP_signature.asc
Description: OpenPGP digital signature