By: Tom Sydney Kerckhove <syd@cs-syd.eu>
build: force gnu ABI for vendored zig build under Nix sandbox `nix flake check` failed compiling the vendored Zig `simdutf` library with `'bits/alltypes.h' file not found`, preceded by Zig's `Encountered error: FileNotFound, falling back to default ABI and dynamic linker.` `build.rs` only passes `-Dtarget` to `zig build` when cross-compiling; for native builds it relies on Zig's host detection. That detection probes the host dynamic linker, which the Nix sandbox hides, so Zig falls back to a libc whose headers are not on the include path and the C++ compile fails. The build works on a developer machine (no sandbox) but never inside a sandboxed Nix builder, which is what NixCI runs. Add an optional `LIBGHOSTTY_VT_SYS_ZIG_TARGET` override that, when set, is passed straight through as `-Dtarget`, bypassing native detection. Outside Nix the variable is unset and native auto-detection is unchanged. The flake sets it to `native-native-gnu` for Linux builds (keeping native arch/os/cpu while forcing the gnu ABI).