Files
sergioandClaude Opus 5 c56fd373a1 etapa 4: tanda de 30 HOJAS — cero daño colateral, que era el punto
Primera tanda con el orden nuevo (por impacto en el grafo, no alfabético). 30 recetas C de
clase HOJA: bash, coreutils, git, gnupg, grep, gzip, jq, e2fsprogs, libarchive, htop…

LA MEDIDA QUE JUSTIFICA EL CAMBIO DE ORDEN: activar estas 30 dejó 41 recetas sin artefacto
vigente = las 12 que ya estaban en deuda + las 30 tocadas (una ya estaba entre las 12). **Cero
colateral.** Contra la tanda anterior, donde tocar TRES bibliotecas base (expat, zstd, ncurses)
dejó 54 sin artefacto y tumbó la cadena wlroots/sway entera.

Mismo esfuerzo de build, diez veces menos destrozo. El orden no era un detalle de comodidad.

Selección: clase `c` + `dependientes_total == 0` + estado sellado, excluyendo las de tawasuyu
(git privado ⇒ no construyen en el worker, que es sin secretos por diseño) y las Go/Rust, que
necesitan sus módulos y fallan ahí. Quedan 73 hojas C elegibles; van 30.

La tanda corre DESASIDA con nohup en el worker — la lección de ayer, cuando un drenaje murió a
las 14 de 54 al caerse la sesión ssh.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 11:14:37 -04:00

31 lines
1.1 KiB
TOML

# GNU grep — primer paquete real construido por el lab.
#
# Usamos el tarball release (no el árbol git) porque:
# - Trae `configure` ya generado: no necesitamos correr `./bootstrap` ni traer gnulib
# como submódulo en el fetch (que pediría red dentro del proceso de bootstrap).
# - Es como Alpine, Debian, etc. consumen grep en su pipeline de empaque.
# - El sha256 del tarball es identificador inmutable; pinned igual de fuerte que un
# commit git para reproducibilidad.
name = "grep"
version = "3.12"
license = "GPL-3.0-or-later"
[source]
tarball = "https://ftp.gnu.org/gnu/grep/grep-3.12.tar.gz"
sha256 = "badda546dfc4b9d97e992e2c35f3b5c7f20522ffcbe2f01ba1e9cdcbe7644cdc"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
# Split de la info de depuración (SDD 23 etapa 4, tanda de HOJAS). Entra en `hash_inputs`.
strip_debug = true
# Sin PCRE para el primer build — la receta de pcre2 vive en su propia .toml y se
# añadirá como dep cuando empezemos a construir el grafo.
flags = ["--disable-perl-regexp", "--disable-nls"]
[deps]
build = ["binutils"]