diff --git a/scripts/farm/vps-setup.sh b/scripts/farm/vps-setup.sh index 51edaac0..ddaced47 100755 --- a/scripts/farm/vps-setup.sh +++ b/scripts/farm/vps-setup.sh @@ -61,7 +61,16 @@ if [ "$PKG" = apt ]; then else # Equivalencias Fedora. `build-essential` no existe: gcc/g++/make sueltos. # uidmap → shadow-utils (trae newuidmap/newgidmap); xz-utils → xz; libssl-dev → openssl-devel. - $DNF install -y -q git gcc gcc-c++ make curl pkgconf-pkg-config openssl-devel \ + # + # ⚠ `patch` VA EXPLÍCITO Y NO ES OBVIO (2026-08-29). En Debian entra de regalo dentro de + # `build-essential`; al desglosar a gcc/g++/make sueltos se cayó sin que nadie lo notara. El + # campo `patches = [...]` de una receta lo aplica hammer DEL LADO DEL HOST, fuera del sandbox + # ⇒ no alcanza con que el rootfs lo traiga (lo trae: `/usr/bin/patch` está en el alpine). Sin + # él, `cairo-shared` muere con `spawn patch: No such file or directory` y detrás caen `pango` + # y `gtk4`, o sea el stack GUI entero de GNOME por un binario de 129 KB. + # Regla: toda herramienta que hammer invoque HOST-SIDE va en esta lista, no en `[deps]` de la + # receta — declararla en la receta re-hashearía cairo y todo GNOME debajo para nada. + $DNF install -y -q git gcc gcc-c++ make patch curl pkgconf-pkg-config openssl-devel \ bubblewrap rsync ca-certificates shadow-utils xz tar findutils fi