Etapa G: primera tanda a escala — 11 CLI Rust construyen+corren (corpus 34→45)

Arranca el escalado del catálogo con la tanda tier-1 (tandas/cli-rust.txt) por el
pipeline completo: import-batch (escalera) → pin (tag→SHA) → build (medir) → promover.

BUILD-YIELD MEDIDO (no especulación): 11/12 de la tanda construyen+corren como ELF
estático musl en el lab. Los 11 promovidos al corpus:
  bat 0.26.1, bottom 0.12.3, dust, fd 10.4.2, hexyl, hyperfine, procs, sd, tokei,
  xh 0.25.3 (rustls, no openssl), zoxide.
(ripgrep ya estaba en el corpus con su patch jemalloc; no se duplica.)

El primer corte dio 8/12: los 4 con deps fallaban por buildInputs espurias de nix
(bat→zlib, fd→jemalloc, ripgrep→pcre2, xh→openssl) — backends C que el build Rust por
defecto NO usa. Arreglado en el importador (commit anterior): re-importados bat/fd/xh
SIN [deps] → los 3 construyen (bat 372s, fd 251s, xh 413s). Sube 8/12 → 11/12.

Verificado: los binarios CORREN (fd/bat/xh --version), estáticos musl stripped.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-21 09:47:52 -04:00
co-authored by Claude Opus 4.8
parent 8913eae26b
commit e83542a4a9
11 changed files with 218 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "bat"
version = "0.26.1"
[source]
repo = "https://github.com/sharkdp/bat"
commit = "979ba22628bc9d8171f2cffca2bd5c90c9fc0a9e"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "bat"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/bat /out/usr/bin/bat"
# buildInputs de nix (NO deps de hammer — cargo vendorea; backend Rust por
# defecto). Si algún sys-crate C falla, adaptá per-paquete (patch/feature): zlib
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "bottom"
version = "0.12.3"
[source]
repo = "https://github.com/ClementTsang/bottom"
commit = "2f0e9dea99232f0cb116dd1011d9ff1ba9495594"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "btm"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/btm /out/usr/bin/btm"
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "du-dust"
version = "1.2.4"
[source]
repo = "https://github.com/bootandy/dust"
commit = "fabe19b8de4d1d36ad55dfa28b00698bc55297e6"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "dust"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/dust /out/usr/bin/dust"
+22
View File
@@ -0,0 +1,22 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "fd"
version = "10.4.2"
[source]
repo = "https://github.com/sharkdp/fd"
commit = "7027d45303b412be6fa9c09d689cc6276748fb38"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "fd"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/fd /out/usr/bin/fd"
# buildInputs de nix (NO deps de hammer — cargo vendorea; backend Rust por
# defecto). Si algún sys-crate C falla, adaptá per-paquete (patch/feature): jemalloc
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "hexyl"
version = "0.17.0"
[source]
repo = "https://github.com/sharkdp/hexyl"
commit = "8eb6d4771ce1ec7af65d06bd335457783b77d557"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "hexyl"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/hexyl /out/usr/bin/hexyl"
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "hyperfine"
version = "1.20.0"
[source]
repo = "https://github.com/sharkdp/hyperfine"
commit = "975fe108c4ee7bd2600d10758207b44ca3dae738"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "hyperfine"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/hyperfine /out/usr/bin/hyperfine"
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "procs"
version = "0.14.11"
[source]
repo = "https://github.com/dalance/procs"
commit = "079fa764eeb9716ca58c47e2ca2c72535c02e2b9"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "procs"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/procs /out/usr/bin/procs"
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "sd"
version = "1.1.0"
[source]
repo = "https://github.com/chmln/sd"
commit = "4a7b216552d64134c0fa17a59b9d557d89019f0f"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "sd"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/sd /out/usr/bin/sd"
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "tokei"
version = "14.0.0"
[source]
repo = "https://github.com/XAMPPRocky/tokei"
commit = "8cdd6fa3a54f8cd69442d2f00effb29aa3110353"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "tokei"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/tokei /out/usr/bin/tokei"
+22
View File
@@ -0,0 +1,22 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "xh"
version = "0.25.3"
[source]
repo = "https://github.com/ducaale/xh"
commit = "5b49261d216af88e81fe0a2616b4f4d543c47c1f"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "xh"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/xh /out/usr/bin/xh"
# buildInputs de nix (NO deps de hammer — cargo vendorea; backend Rust por
# defecto). Si algún sys-crate C falla, adaptá per-paquete (patch/feature): openssl
+19
View File
@@ -0,0 +1,19 @@
# Importada de nixpkgs por `hammer import-nix` (Etapa G). PUNTO DE PARTIDA, no final:
# - el build usa el lab de hammer (zig-cc / musl estático), NO el stdenv de nix ⇒ revisá
# compiler/link/phases y adaptá hasta que compile.
# - las deps van con su nombre NIX; remapealas a las recetas del corpus si difieren.
name = "zoxide"
version = "0.9.9"
[source]
repo = "https://github.com/ajeetdsouza/zoxide"
commit = "9cdc6aa3740b4d8a9d62406c99e84c5de49645e9"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["--bin", "zoxide"]
[build.phases]
install = "mkdir -p /out/usr/bin && cp target/release/zoxide /out/usr/bin/zoxide"