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>
30 lines
1.2 KiB
TOML
30 lines
1.2 KiB
TOML
# hammerd — daemon de hammer (bus de agente en /run/agent.sock + diario de mutaciones), como
|
|
# servicio del userland mínimo del Stage 1 (SDD 11 §3).
|
|
#
|
|
# Receta Cargo (ADR 0008 / BuildSys::Cargo): el lab construye el crate `hammerd` del workspace
|
|
# hammer a un commit fijado (ADR 0006), con las deps vendoreadas en el fetch para un build
|
|
# hermético `--offline`. Enlaza con `zig cc` cross al target. El init provisional (busybox) lo
|
|
# arranca por /etc/inittab; cuando entre `arje` (ADR 0007) pasará a ser un servicio supervisado.
|
|
|
|
name = "hammerd"
|
|
version = "0.0.1"
|
|
|
|
[source]
|
|
# El repo del propio hammer: el `commit` es el identificador inmutable (la URL es sólo locator y
|
|
# no entra al hash de la receta). Subir el commit cuando hammerd avance.
|
|
repo = "ssh://gitea@git.gioser.net:2345/sergio/hammer.git"
|
|
commit = "e9b055121322d3ef8aef8e75738052d5aff0693a"
|
|
|
|
[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
|
|
# Sólo el binario `hammerd` del workspace (no el resto de crates).
|
|
flags = ["-p", "hammerd"]
|
|
|
|
[deps]
|
|
build = ["binutils"]
|