# 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 = "ouch" version = "0.8.0" license = "MIT" [source] repo = "https://github.com/ouch-org/ouch" commit = "d6e80634b63d53a18cb32dd1cbd613b6a3b61e45" # GUETO gcc: ouch vendorea bzip2/zstd-sys (C); cc-rs los compila y zig-cc falla. compiler="gcc" # usa el musl gcc de Alpine. (MSRV 1.93 ⇒ rootfs edge rust 1.96.) # SIN unrar/bzip3 (default): son deps C++ (unrar-ng-sys/libbzip3-sys) y el link estático pide # -lstdc++, que la libc++ bundleada de zig-cc no satisface (ABI clash con los objetos g++). # Quedan los formatos comunes: gzip/zstd/bzip2/xz/zip/tar. (rar/bzip3 = frente C++ pendiente.) [build] compiler = "gcc" target = "x86_64-linux-musl" link = "static" flags = ["--bin", "ouch", "--no-default-features", "--features", "use_zlib,use_zstd_thin"] [build.phases] install = "mkdir -p /out/usr/bin && cp target/release/ouch /out/usr/bin/ouch" # 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): cmake, git, bzip2, bzip3, xz, zlib, zstd