these 7 derivations will be built: /nix/store/7p9fa4rdlkckxfhis9j88hjn1p9dyrbw-herdr-endpoints.json.drv /nix/store/jwf82b6swh2i13qjljyggd7xac72zjjs-herdr-eternal-0.1.0.drv /nix/store/j0z1hmcq1gh64c2ak2pzxv2f9fqw9afq-home-manager-path.drv /nix/store/sbg8y7slmhlkq660ss76dv29bsdgvnka-hm_hmfontconfigfonts.xml.drv /nix/store/f3cv72i9xqc7sh9wdgjlh17vd45x2qi7-home-manager-files.drv /nix/store/mjvd8mh6w268g6nsnr56qalf6jxlf7ks-activation-script.drv /nix/store/qliag5v5ysxm5k1hx58n2miy3wjc0ij4-home-manager-generation.drv building '/nix/store/7p9fa4rdlkckxfhis9j88hjn1p9dyrbw-herdr-endpoints.json.drv' building '/nix/store/jwf82b6swh2i13qjljyggd7xac72zjjs-herdr-eternal-0.1.0.drv' herdr-endpoints.json> tribuchet: building on jamie herdr-eternal-0.1.0> tribuchet: building on jamie herdr-endpoints.json> structuredAttrs is enabled herdr-eternal-0.1.0> Running phase: unpackPhase herdr-eternal-0.1.0> unpacking source archive /nix/store/ss9ild0bqsyxk90p6pbbmh4k5416324j-source herdr-eternal-0.1.0> source root is source herdr-eternal-0.1.0> Running phase: patchPhase herdr-eternal-0.1.0> Executing configureCargoCommonVars herdr-eternal-0.1.0> decompressing cargo artifacts from /nix/store/dy12iylw0d0k7gnh6hlyldnf464cr3q2-herdr-eternal-deps-0.1.0/target.tar.zst to target herdr-eternal-0.1.0> Running phase: updateAutotoolsGnuConfigScriptsPhase herdr-eternal-0.1.0> Running phase: configurePhase herdr-eternal-0.1.0> will append /build/source/.cargo-home/config.toml with contents of /nix/store/966prjnlc4isi2cyhr7k0qncf5hckr1c-vendor-cargo-deps/config.toml herdr-eternal-0.1.0> default configurePhase, nothing to do herdr-eternal-0.1.0> Running phase: buildPhase herdr-eternal-0.1.0> +++ command cargo --version herdr-eternal-0.1.0> cargo 1.98.0 (797e8a9bc 2026-08-05) herdr-eternal-0.1.0> +++ command cargo build --release --message-format json-render-diagnostics --locked herdr-eternal-0.1.0> Compiling herdr-eternal-proto v0.1.0 (/build/source/proto) herdr-eternal-0.1.0> Compiling herdr-eternal-server v0.1.0 (/build/source/server) herdr-eternal-0.1.0> Compiling herdr-eternal-ssh v0.1.0 (/build/source/client) herdr-eternal-0.1.0> Finished `release` profile [optimized] target(s) in 7.30s herdr-eternal-0.1.0> searching for bins/libs to install from cargo build log at cargoBuildLogEKAi.json herdr-eternal-0.1.0> installing /build/source/target/release/herdr-eternal-ssh in postBuildInstallFromCargoBuildLogOutTempLXC/bin herdr-eternal-0.1.0> installing /build/source/target/release/herdr-eternal-server in postBuildInstallFromCargoBuildLogOutTempLXC/bin herdr-eternal-0.1.0> searching for bins/libs complete herdr-eternal-0.1.0> Running phase: checkPhase herdr-eternal-0.1.0> +++ command cargo test --release --locked herdr-eternal-0.1.0> Compiling herdr-eternal-proto v0.1.0 (/build/source/proto) herdr-eternal-0.1.0> Compiling herdr-eternal-server v0.1.0 (/build/source/server) herdr-eternal-0.1.0> Compiling herdr-eternal-ssh v0.1.0 (/build/source/client) herdr-eternal-0.1.0> Finished `release` profile [optimized] target(s) in 16.76s herdr-eternal-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_proto-a86516423395bcf8) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 4 tests herdr-eternal-0.1.0> test tests::exec_request_roundtrip ... ok herdr-eternal-0.1.0> test tests::frame_decoder_rejects_oversized_frames ... ok herdr-eternal-0.1.0> test tests::channel_message_roundtrip ... ok herdr-eternal-0.1.0> test tests::frame_decoder_reassembles_split_and_coalesced_frames ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_server-b331d53ea27bbaef) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test tests::outbound_log_replays_after_trim ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running unittests src/main.rs (target/release/deps/herdr_eternal_server-538b5ca0b8a29ef1) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 0 tests herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/exec.rs (target/release/deps/exec-bf25e2ef9efe4355) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 3 tests herdr-eternal-0.1.0> test wrong_token_is_rejected ... ok herdr-eternal-0.1.0> test exec_relays_stdio_and_exit_code ... ok herdr-eternal-0.1.0> test disconnected_session_expires_after_timeout ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/oidc.rs (target/release/deps/oidc-cba323813e7e32c6) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test oidc_bearer_tokens_are_validated ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.52s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_ssh-a2f9ec78556cbbf6) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 2 tests herdr-eternal-0.1.0> test tests::load_target_finds_configured_entry ... ok herdr-eternal-0.1.0> test channel::tests::quic_next_is_cancel_safe ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running unittests src/main.rs (target/release/deps/herdr_eternal_ssh-5f401c73ad7e240b) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 3 tests herdr-eternal-0.1.0> test tests::parses_target_without_command ... ok herdr-eternal-0.1.0> test tests::missing_target_is_rejected ... ok herdr-eternal-0.1.0> test tests::parses_herdr_bootstrap_invocation ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/agent.rs (target/release/deps/agent-29a995b1b2c156e4) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test remote_program_reaches_local_agent ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.01s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/exec.rs (target/release/deps/exec-033c48f42e38f778) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test exec_roundtrip_through_client_and_server ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/handover.rs (target/release/deps/handover-7936b9600d273364) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test exec_survives_daemon_handover ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.08s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/herdr_remote.rs (target/release/deps/herdr_remote-1e66ebd14dfb1ded) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> test herdr_remote_bootstraps_over_the_transport ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/oidc.rs (target/release/deps/oidc-4161494c15a2043a) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 1 test herdr-eternal-0.1.0> To authorize testbox, open: http://127.0.0.1:44683/verify?user_code=TEST-CODE herdr-eternal-0.1.0> Logged in to testbox. herdr-eternal-0.1.0> test login_and_exec_with_oidc ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/quic.rs (target/release/deps/quic-eef9dcfe028c0247) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 3 tests herdr-eternal-0.1.0> test exec_runs_over_quic ... ok herdr-eternal-0.1.0> test long_running_exec_stays_connected_over_quic ... ok herdr-eternal-0.1.0> test falls_back_to_websocket_when_quic_is_unreachable ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.01s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running tests/resume.rs (target/release/deps/resume-5fcc90314e36530e) herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 2 tests herdr-eternal-0.1.0> test exec_survives_severed_connection ... ok herdr-eternal-0.1.0> test exec_survives_blackholed_connection ... ok herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.11s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Doc-tests herdr_eternal_proto herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 0 tests herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Doc-tests herdr_eternal_server herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 0 tests herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Doc-tests herdr_eternal_ssh herdr-eternal-0.1.0> herdr-eternal-0.1.0> running 0 tests herdr-eternal-0.1.0> herdr-eternal-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-0.1.0> herdr-eternal-0.1.0> Running phase: installPhase herdr-eternal-0.1.0> actually installing contents of postBuildInstallFromCargoBuildLogOutTempLXC to /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0 herdr-eternal-0.1.0> stripping references to Rust toolchain herdr-eternal-0.1.0> Rust toolchain at: /nix/store/xvp6nfxayb07si2jaggqwvx3iykw89g2-rustc-1.98.1 herdr-eternal-0.1.0> stripping Rust toolchain references done herdr-eternal-0.1.0> stripping references to cargoVendorDir from: herdr-eternal-0.1.0> /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0/bin/herdr-eternal-server herdr-eternal-0.1.0> /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0/bin/herdr-eternal-ssh herdr-eternal-0.1.0> stripping references done herdr-eternal-0.1.0> Running phase: fixupPhase herdr-eternal-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0 herdr-eternal-0.1.0> shrinking /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0/bin/herdr-eternal-server herdr-eternal-0.1.0> shrinking /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0/bin/herdr-eternal-ssh herdr-eternal-0.1.0> checking for references to /build/ in /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0... herdr-eternal-0.1.0> patching script interpreter paths in /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0 herdr-eternal-0.1.0> stripping (with command strip and flags -S -p) in /nix/store/b51fivz3grzfc5vgms0fiaayr6nki8qn-herdr-eternal-0.1.0/bin building '/nix/store/j0z1hmcq1gh64c2ak2pzxv2f9fqw9afq-home-manager-path.drv' home-manager-path> tribuchet: building on jamie home-manager-path> structuredAttrs is enabled home-manager-path> created 5270 symlinks in user environment building '/nix/store/mjvd8mh6w268g6nsnr56qalf6jxlf7ks-activation-script.drv' building '/nix/store/sbg8y7slmhlkq660ss76dv29bsdgvnka-hm_hmfontconfigfonts.xml.drv' activation-script> tribuchet: building on jamie hm_hmfontconfigfonts.xml> tribuchet: building on jamie hm_hmfontconfigfonts.xml> structuredAttrs is enabled activation-script> structuredAttrs is enabled building '/nix/store/f3cv72i9xqc7sh9wdgjlh17vd45x2qi7-home-manager-files.drv' home-manager-files> tribuchet: building on jamie building '/nix/store/qliag5v5ysxm5k1hx58n2miy3wjc0ij4-home-manager-generation.drv' home-manager-generation> tribuchet: building on jamie post-build step Upload coverage to codecov: ok Skipping codecov: project=Mic92/dotfiles attr=checks.x86_64-linux.home-manager-desktop