these 5 derivations will be built: /nix/store/hvkjnjj90qhh7zw5fvar489ij7a8vbdk-vendor-registry.drv /nix/store/vmdmwq1p5vjg3xsxjpgbkfsbhzik1m8l-vendor-cargo-deps.drv /nix/store/z86lknncg4ndig66lvixdrmdyk8vqvc5-source.drv /nix/store/wm8h0lqy37a8sx2qa58cvyi8fnprjhkr-herdr-eternal-deps-0.1.0.drv /nix/store/67af613qwxy9xikp4bnlc8g45ss59lif-herdr-eternal-test-0.1.0.drv building '/nix/store/67af613qwxy9xikp4bnlc8g45ss59lif-herdr-eternal-test-0.1.0.drv' herdr-eternal-test-0.1.0> tribuchet: building on mac02 herdr-eternal-test-0.1.0> Running phase: unpackPhase herdr-eternal-test-0.1.0> unpacking source archive /nix/store/4pdj23v5r6bcxh50i6hlwasfqvn9i0n1-source herdr-eternal-test-0.1.0> source root is source herdr-eternal-test-0.1.0> Running phase: patchPhase herdr-eternal-test-0.1.0> Executing configureCargoCommonVars herdr-eternal-test-0.1.0> decompressing cargo artifacts from /nix/store/qxmf01j4cckb58i4k4aqkss0c9c4r9p0-herdr-eternal-deps-0.1.0/target.tar.zst to target herdr-eternal-test-0.1.0> Running phase: updateAutotoolsGnuConfigScriptsPhase herdr-eternal-test-0.1.0> Running phase: configurePhase herdr-eternal-test-0.1.0> will append /private/var/tb/8/scratch/cbc2415b689937a1/build/source/.cargo-home/config.toml with contents of /nix/store/czdg2k7mk1nhlppga1fxg7p4kjrzvz70-vendor-cargo-deps/config.toml herdr-eternal-test-0.1.0> default configurePhase, nothing to do herdr-eternal-test-0.1.0> Running phase: buildPhase herdr-eternal-test-0.1.0> +++ command cargo --version herdr-eternal-test-0.1.0> cargo 1.99.0 (5f94df478 2026-08-27) herdr-eternal-test-0.1.0> Running phase: checkPhase herdr-eternal-test-0.1.0> +++ command cargo test --release --locked herdr-eternal-test-0.1.0> Compiling herdr-eternal-proto v0.1.0 (/private/var/tb/8/scratch/cbc2415b689937a1/build/source/proto) herdr-eternal-test-0.1.0> Compiling herdr-eternal-server v0.1.0 (/private/var/tb/8/scratch/cbc2415b689937a1/build/source/server) herdr-eternal-test-0.1.0> Compiling herdr-eternal-ssh v0.1.0 (/private/var/tb/8/scratch/cbc2415b689937a1/build/source/client) herdr-eternal-test-0.1.0> error[E0277]: the trait bound `i32: AsFd` is not satisfied herdr-eternal-test-0.1.0> --> server/src/lib.rs:742:31 herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> 742 | nix::unistd::dup2(exit_fd, 3) herdr-eternal-test-0.1.0> | ----------------- ^^^^^^^ the trait `AsFd` is not implemented for `i32` herdr-eternal-test-0.1.0> | | herdr-eternal-test-0.1.0> | required by a bound introduced by this call herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> = help: the following other types implement trait `AsFd`: herdr-eternal-test-0.1.0> &T herdr-eternal-test-0.1.0> &mut T herdr-eternal-test-0.1.0> Arc herdr-eternal-test-0.1.0> AsyncFd herdr-eternal-test-0.1.0> BorrowedFd<'_> herdr-eternal-test-0.1.0> Box herdr-eternal-test-0.1.0> File herdr-eternal-test-0.1.0> NamedTempFile herdr-eternal-test-0.1.0> and 52 others herdr-eternal-test-0.1.0> note: required by a bound in `nix::unistd::dup2` herdr-eternal-test-0.1.0> --> /nix/store/czdg2k7mk1nhlppga1fxg7p4kjrzvz70-vendor-cargo-deps/c19b7c6f923b580ac259164a89f2577984ad5ab09ee9d583b888f934adbbe8d0/nix-0.31.3/src/unistd.rs:543:17 herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> 543 | pub fn dup2(oldfd: Fd, newfd: &mut std::os::fd::OwnedFd) -> Result<()> { herdr-eternal-test-0.1.0> | ^^^^^^^^^^^^^^^^^ required by this bound in `dup2` herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> error[E0308]: mismatched types herdr-eternal-test-0.1.0> --> server/src/lib.rs:742:40 herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> 742 | nix::unistd::dup2(exit_fd, 3) herdr-eternal-test-0.1.0> | ----------------- ^ expected `&mut OwnedFd`, found integer herdr-eternal-test-0.1.0> | | herdr-eternal-test-0.1.0> | arguments to this function are incorrect herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> note: function defined here herdr-eternal-test-0.1.0> --> /nix/store/czdg2k7mk1nhlppga1fxg7p4kjrzvz70-vendor-cargo-deps/c19b7c6f923b580ac259164a89f2577984ad5ab09ee9d583b888f934adbbe8d0/nix-0.31.3/src/unistd.rs:543:8 herdr-eternal-test-0.1.0> | herdr-eternal-test-0.1.0> 543 | pub fn dup2(oldfd: Fd, newfd: &mut std::os::fd::OwnedFd) -> Result<()> { herdr-eternal-test-0.1.0> | ^^^^ herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Some errors have detailed explanations: E0277, E0308. herdr-eternal-test-0.1.0> For more information about an error, try `rustc --explain E0277`. herdr-eternal-test-0.1.0> error: could not compile `herdr-eternal-server` (lib) due to 2 previous errors herdr-eternal-test-0.1.0> warning: build failed, waiting for other jobs to finish... error: Cannot build '/nix/store/67af613qwxy9xikp4bnlc8g45ss59lif-herdr-eternal-test-0.1.0.drv'. Reason: builder failed with exit code 101. Output paths: /nix/store/nckk648klmjl4ajfmzsmdw7khvklaiz8-herdr-eternal-test-0.1.0 Last 25 log lines: > and 52 others > note: required by a bound in `nix::unistd::dup2` > --> /nix/store/czdg2k7mk1nhlppga1fxg7p4kjrzvz70-vendor-cargo-deps/c19b7c6f923b580ac259164a89f2577984ad5ab09ee9d583b888f934adbbe8d0/nix-0.31.3/src/unistd.rs:543:17 > | > 543 | pub fn dup2(oldfd: Fd, newfd: &mut std::os::fd::OwnedFd) -> Result<()> { > | ^^^^^^^^^^^^^^^^^ required by this bound in `dup2` > > error[E0308]: mismatched types > --> server/src/lib.rs:742:40 > | > 742 | nix::unistd::dup2(exit_fd, 3) > | ----------------- ^ expected `&mut OwnedFd`, found integer > | | > | arguments to this function are incorrect > | > note: function defined here > --> /nix/store/czdg2k7mk1nhlppga1fxg7p4kjrzvz70-vendor-cargo-deps/c19b7c6f923b580ac259164a89f2577984ad5ab09ee9d583b888f934adbbe8d0/nix-0.31.3/src/unistd.rs:543:8 > | > 543 | pub fn dup2(oldfd: Fd, newfd: &mut std::os::fd::OwnedFd) -> Result<()> { > | ^^^^ > > Some errors have detailed explanations: E0277, E0308. > For more information about an error, try `rustc --explain E0277`. > error: could not compile `herdr-eternal-server` (lib) due to 2 previous errors > warning: build failed, waiting for other jobs to finish... For full logs, run: nix log /nix/store/67af613qwxy9xikp4bnlc8g45ss59lif-herdr-eternal-test-0.1.0.drv