Files
hammer/recipes/htop.toml
T
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

37 lines
1.7 KiB
TOML

# htop 3.5.1 — monitor de procesos interactivo. Etapa G, tier-2 C. Consumidor TUI canónico de
# ncurses: valida la capa CURSES real (ventanas/teclado/colores), no sólo el lookup de terminfo de less.
#
# Importada de Alpine aports (release tarball, trae configure). Ajustes:
# - deps.build = ["ncurses", "linux-headers"]: htop usa la API de curses widec (-lncursesw) y headers
# de Linux (taskstats/cgroup). Quito lm-sensors del makedepends de Alpine: el soporte de sensores
# es OPCIONAL (libsensors auto-detectado) y no está en el corpus ⇒ `--disable-sensors` explícito.
# - compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16) (gueto, igual que ncurses/less): zig-cc miscompila estos C clásicos.
# - link=static + sin libtool en el link del binario ⇒ LDFLAGS=-static del lab basta (htop static-pie).
# htop auto-detecta ncursesw (widec) para soporte unicode — la ncurses del corpus es widec.
#
# $CBUILD/$CHOST los da el lab (build==host ⇒ nativo).
name = "htop"
version = "3.5.1"
license = "GPL-2.0-or-later"
[source]
tarball = "https://github.com/htop-dev/htop/releases/download/3.5.1/htop-3.5.1.tar.xz"
sha256 = "526cecd62870aa8d14d2a79a35ea197e4e2b5317d275b567cee0574b2ddb2e9a"
[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
[build.phases]
configure = "./configure --build=$CBUILD --host=$CHOST --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man --enable-cgroup --enable-taskstats --disable-sensors"
compile = "make -j\"$(nproc)\""
install = "make DESTDIR=/out install"
[deps]
build = ["binutils", "ncurses", "linux-headers", "make"]