busybox sale de las 24 build-deps: ya no viaja en NINGUNA imagen
busybox → perfiles: NINGUNO Ése era el paso 6 del plan y el que de verdad lo saca del producto: busybox NO está declarado en targets.toml (cero menciones) — llegaba a los 7 perfiles por la CLAUSURA, porque 24 recetas lo pedían como dep de build. Y la dep era redundante, medido antes de tocar las 24: el sandbox monta el rootfs Alpine completo (.dev-fs/alpine) como base read-only, y ese rootfs YA trae su propio busybox — el shell y los coreutils del build salen de ahí, no de la dep. La prueba: zlib-ng sin la dep sella igual (b3:f2439671, construida y verificada). Ninguna de las 23 restantes menciona busybox en sus fases; las cuatro recetas que sí lo nombran (e2fsprogs, kbd, vim, networkmanager) lo hacen en COMENTARIOS. ⚠ Dos se resistieron al cambio mecánico y conviene saber por qué: mi regex con count=1 pegó en una línea de COMENTARIO que también dice `build = [` — jq.toml:5 y linux.toml:39 documentan sus deps en prosa—. Como ahí no había busybox, la sustitución no cambiaba nada y el fichero no se escribía: el efecto fue no tocar la dep real de la línea 48/77. Arregladas a mano, y comprobado con git diff que NINGÚN comentario quedó alterado en las otras 22. Las 24 quedan invalidadas por el cambio de hash y hay que reconstruirlas. Estado tras el cambio: sealed 924 · debt 23 (zlib-ng ya está). Las imágenes pierden el nodo busybox, que es exactamente lo que se buscaba. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Delta semántico
Ninguna definición cambió: el cambio es de texto, documentación o datos.
24 archivos · +24 −24
- recipes/abseil-cpp.toml +1 −1
- recipes/chrony.toml +1 −1
- recipes/cronie.toml +1 −1
- recipes/crun.toml +1 −1
- recipes/dwarves.toml +1 −1
- recipes/firmware-tigerlake.toml +1 −1
- recipes/ia-modelo-embeddings.toml +1 −1
- recipes/intel-ucode.toml +1 −1
- recipes/jq.toml +1 −1
- recipes/libmnl.toml +1 −1
- recipes/libnftnl.toml +1 −1
- recipes/linux-firmware.toml +1 −1
- recipes/linux.toml +1 −1
- recipes/llama-cpp.toml +1 −1
- recipes/logrotate.toml +1 −1
- recipes/nftables.toml +1 −1
- recipes/opensmtpd.toml +1 −1
- recipes/popt.toml +1 −1
- recipes/protobuf.toml +1 −1
- recipes/qdrant.toml +1 −1
- recipes/sof-firmware.toml +1 −1
- recipes/valkey.toml +1 −1
- recipes/wireless-regdb.toml +1 −1
- recipes/zlib-ng.toml +1 −1
diff --git a/recipes/abseil-cpp.toml b/recipes/abseil-cpp.toml
index c86caff6..dbf53580 100644
--- a/recipes/abseil-cpp.toml
+++ b/recipes/abseil-cpp.toml
@@ -68,4 +68,4 @@ compile = 'cmake --build build -j"$(nproc)"'
install = "DESTDIR=/out cmake --install build"
[deps]
-build = ["binutils", "busybox", "make", "cmake"]
+build = ["binutils", "make", "cmake"]
diff --git a/recipes/chrony.toml b/recipes/chrony.toml
index e520f6a1..42a8532b 100644
--- a/recipes/chrony.toml
+++ b/recipes/chrony.toml
@@ -67,7 +67,7 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "libcap"]
+build = ["binutils", "make", "pkgconf", "libcap"]
# ── EL SERVICIO QUE ESTE PAQUETE TRAE (SDD 30) ──────────────────────────────────────────────────
# Fuera de `hash_inputs`: declarar esto NO re-hashea chrony.
diff --git a/recipes/cronie.toml b/recipes/cronie.toml
index 3b946569..4b58ec83 100644
--- a/recipes/cronie.toml
+++ b/recipes/cronie.toml
@@ -51,7 +51,7 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf"]
+build = ["binutils", "make", "pkgconf"]
# ── EL SERVICIO QUE ESTE PAQUETE TRAE (SDD 30) ──────────────────────────────────────────────────
# Fuera de `hash_inputs`: declarar esto NO re-hashea cronie.
diff --git a/recipes/crun.toml b/recipes/crun.toml
index 5ff3bbf8..a381355a 100644
--- a/recipes/crun.toml
+++ b/recipes/crun.toml
@@ -73,4 +73,4 @@ compile = 'make -j"$(nproc)" LDFLAGS="-all-static -no-pie"'
install = 'make install DESTDIR=/out LDFLAGS="-all-static -no-pie" && find /out -name "*.la" -delete'
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "python3", "json-c", "libcap", "libseccomp", "argp-standalone"]
+build = ["binutils", "make", "pkgconf", "python3", "json-c", "libcap", "libseccomp", "argp-standalone"]
diff --git a/recipes/dwarves.toml b/recipes/dwarves.toml
index 691a2a99..ba5268d6 100644
--- a/recipes/dwarves.toml
+++ b/recipes/dwarves.toml
@@ -71,7 +71,7 @@ target = "x86_64-linux-musl"
link = "static"
[deps]
-build = ["busybox", "make", "cmake", "elfutils-libdw", "argp-standalone", "musl-obstack", "zlib", "xz", "bzip2"]
+build = ["make", "cmake", "elfutils-libdw", "argp-standalone", "musl-obstack", "zlib", "xz", "bzip2"]
# `DWARF_LIBRARY`/`ELF_LIBRARY` por ruta `.a` + `CMAKE_EXE_LINKER_FLAGS=-static` (audit 2026-08-31):
# la receta decía `link = "static"` y los DIEZ ejecutables salían DINÁMICOS contra cinco librerías.
diff --git a/recipes/firmware-tigerlake.toml b/recipes/firmware-tigerlake.toml
index 57d92ac1..89f0b728 100644
--- a/recipes/firmware-tigerlake.toml
+++ b/recipes/firmware-tigerlake.toml
@@ -126,4 +126,4 @@ echo "firmware-tigerlake: $n ficheros (wifi=$wifi i915=$gfx sof=$snd)"
# lo sacó, es un proyecto aparte de kernel.org— y esta receta cortaba con «falta regulatory.db».
# Como las deps se materializan en el mismo `/lib/firmware`, el bucle de copia lo encuentra sin
# tocar una línea del guion.
-build = ["linux-firmware", "sof-firmware", "wireless-regdb", "busybox"]
+build = ["linux-firmware", "sof-firmware", "wireless-regdb"]
diff --git a/recipes/ia-modelo-embeddings.toml b/recipes/ia-modelo-embeddings.toml
index 2a360766..3938cdd0 100644
--- a/recipes/ia-modelo-embeddings.toml
+++ b/recipes/ia-modelo-embeddings.toml
@@ -139,4 +139,4 @@ echo "guardián: GGUF válido, tokeniza español y el espacio distingue — $n b
'''
[deps]
-build = ["llama-cpp", "curl", "busybox"]
+build = ["llama-cpp", "curl"]
diff --git a/recipes/intel-ucode.toml b/recipes/intel-ucode.toml
index 5f3b03d2..d96efcc5 100644
--- a/recipes/intel-ucode.toml
+++ b/recipes/intel-ucode.toml
@@ -72,4 +72,4 @@ echo "intel-ucode: $n signatures + GenuineIntel.bin ($(wc -c < /out/usr/share/in
'''
[deps]
-build = ["busybox"]
+build = []
diff --git a/recipes/jq.toml b/recipes/jq.toml
index 9f569b6e..c243449c 100644
--- a/recipes/jq.toml
+++ b/recipes/jq.toml
@@ -45,4 +45,4 @@ compile = "make LDFLAGS=-all-static -j\"$(nproc)\""
install = "make DESTDIR=/out prefix=/usr LDFLAGS=-all-static install"
[deps]
-build = ["binutils", "oniguruma", "busybox", "make"]
+build = ["binutils", "oniguruma", "make"]
diff --git a/recipes/libmnl.toml b/recipes/libmnl.toml
index 805bfc2d..bc94c2ef 100644
--- a/recipes/libmnl.toml
+++ b/recipes/libmnl.toml
@@ -32,4 +32,4 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf"]
+build = ["binutils", "make", "pkgconf"]
diff --git a/recipes/libnftnl.toml b/recipes/libnftnl.toml
index 95660347..82724b05 100644
--- a/recipes/libnftnl.toml
+++ b/recipes/libnftnl.toml
@@ -26,4 +26,4 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "libmnl"]
+build = ["binutils", "make", "pkgconf", "libmnl"]
diff --git a/recipes/linux-firmware.toml b/recipes/linux-firmware.toml
index 7f37da2d..e394bc4a 100644
--- a/recipes/linux-firmware.toml
+++ b/recipes/linux-firmware.toml
@@ -119,4 +119,4 @@ echo "linux-firmware: $n ficheros instalados (WHENCE declara $decl)"
'''
[deps]
-build = ["busybox"]
+build = []
diff --git a/recipes/linux.toml b/recipes/linux.toml
index 8401da4a..79d44758 100644
--- a/recipes/linux.toml
+++ b/recipes/linux.toml
@@ -74,7 +74,7 @@ link = "dynamic"
# openssl + elfutils de-Alpinizan los build-deps que antes venían de `apk add openssl-dev elfutils-dev`.
# elfutils.toml construye SÓLO libelf (lo que objtool enlaza) con shims musl (argp/error/libintl/fts/
# obstack/rawmemchr); ver su cabecera. Todo el camino del kernel es ahora takana-from-source.
-build = ["flex", "bison", "m4", "openssl", "elfutils", "busybox", "make"]
+build = ["flex", "bison", "m4", "openssl", "elfutils", "make"]
[build.phases]
configure = """
diff --git a/recipes/llama-cpp.toml b/recipes/llama-cpp.toml
index bb3a32d7..b49afbbc 100644
--- a/recipes/llama-cpp.toml
+++ b/recipes/llama-cpp.toml
@@ -163,4 +163,4 @@ objdump -d build/ggml/src/libggml-cpu.a 2>/dev/null | grep -q 'vfmadd' || {
'''
[deps]
-build = ["cmake", "samurai", "busybox", "binutils", "pkgconf"]
+build = ["cmake", "samurai", "binutils", "pkgconf"]
diff --git a/recipes/logrotate.toml b/recipes/logrotate.toml
index 8b7e39c7..1e61d112 100644
--- a/recipes/logrotate.toml
+++ b/recipes/logrotate.toml
@@ -49,4 +49,4 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "popt"]
+build = ["binutils", "make", "pkgconf", "popt"]
diff --git a/recipes/nftables.toml b/recipes/nftables.toml
index 2240f5b9..5d1965af 100644
--- a/recipes/nftables.toml
+++ b/recipes/nftables.toml
@@ -58,7 +58,7 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "libmnl", "libnftnl", "gmp"]
+build = ["binutils", "make", "pkgconf", "libmnl", "libnftnl", "gmp"]
# ── EL SERVICIO QUE ESTE PAQUETE TRAE (SDD 30) ──────────────────────────────────────────────────
# Fuera de `hash_inputs`: declarar esto NO re-hashea nftables.
diff --git a/recipes/opensmtpd.toml b/recipes/opensmtpd.toml
index 4b4a4f18..06392663 100644
--- a/recipes/opensmtpd.toml
+++ b/recipes/opensmtpd.toml
@@ -79,4 +79,4 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "libevent", "openssl", "zlib", "musl-fts"]
+build = ["binutils", "make", "pkgconf", "libevent", "openssl", "zlib", "musl-fts"]
diff --git a/recipes/popt.toml b/recipes/popt.toml
index f7f1e8f7..c33f76e1 100644
--- a/recipes/popt.toml
+++ b/recipes/popt.toml
@@ -36,4 +36,4 @@ compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
-build = ["binutils", "busybox", "make", "pkgconf"]
+build = ["binutils", "make", "pkgconf"]
diff --git a/recipes/protobuf.toml b/recipes/protobuf.toml
index 54100830..6acf8281 100644
--- a/recipes/protobuf.toml
+++ b/recipes/protobuf.toml
@@ -90,4 +90,4 @@ compile = 'cmake --build build -j"$(nproc)"'
install = "DESTDIR=/out cmake --install build"
[deps]
-build = ["binutils", "busybox", "make", "cmake", "abseil-cpp", "zlib"]
+build = ["binutils", "make", "cmake", "abseil-cpp", "zlib"]
diff --git a/recipes/qdrant.toml b/recipes/qdrant.toml
index 0c699a9c..8517dc72 100644
--- a/recipes/qdrant.toml
+++ b/recipes/qdrant.toml
@@ -90,4 +90,4 @@ flags = ["--bin", "qdrant"]
install = 'rm -rf /out/src && mkdir -p /out/usr/bin && find target/release -maxdepth 1 -type f -perm -100 -exec cp {} /out/usr/bin/ \;'
[deps]
-build = ["binutils", "busybox", "make", "pkgconf", "protobuf"]
+build = ["binutils", "make", "pkgconf", "protobuf"]
diff --git a/recipes/sof-firmware.toml b/recipes/sof-firmware.toml
index 1f125868..00be30b9 100644
--- a/recipes/sof-firmware.toml
+++ b/recipes/sof-firmware.toml
@@ -94,4 +94,4 @@ echo "sof-firmware: $n firmware + $t topologías (serie IPC3 v2.2, TigerLake)"
'''
[deps]
-build = ["busybox"]
+build = []
diff --git a/recipes/valkey.toml b/recipes/valkey.toml
index 0ae14994..4930d482 100644
--- a/recipes/valkey.toml
+++ b/recipes/valkey.toml
@@ -88,4 +88,4 @@ compile = 'make -j"$(nproc)" MALLOC=libc PREFIX=/usr OPTIMIZATION=-O2'
install = 'make install MALLOC=libc PREFIX=/out/usr'
[deps]
-build = ["binutils", "busybox", "make", "pkgconf"]
+build = ["binutils", "make", "pkgconf"]
diff --git a/recipes/wireless-regdb.toml b/recipes/wireless-regdb.toml
index 26dd4e23..2d498475 100644
--- a/recipes/wireless-regdb.toml
+++ b/recipes/wireless-regdb.toml
@@ -46,4 +46,4 @@ echo "wireless-regdb: $(wc -c < /out/lib/firmware/regulatory.db) bytes de db + f
'''
[deps]
-build = ["busybox"]
+build = []
diff --git a/recipes/zlib-ng.toml b/recipes/zlib-ng.toml
index 9cf6ef56..b92afee8 100644
--- a/recipes/zlib-ng.toml
+++ b/recipes/zlib-ng.toml
@@ -29,7 +29,7 @@ target = "x86_64-linux-musl"
link = "static"
[deps]
-build = ["busybox", "make", "cmake"]
+build = ["make", "cmake"]
[build.phases]
# -fno-sanitize=undefined: mismo motivo que zlib/libarchive (UBSan de zig cc en el .a estático).