Move Ruby to 3.4 and the flake to today's nixpkgs-unstable
Follow-up to #932. Today's nixpkgs-unstable has removed ruby_3_3, which the dev shell pins, so flake.lock stayed on August's nixpkgs for v0.15.1. This moves Ruby to 3.4 everywhere it's pinned, and moves the lock.
- Ruby 3.3 → 3.4 in the three places that have to agree, since
make checkcompiles the skill-eval patterns under Ruby's own regex engine:.mise.toml, bothruby/setup-rubyruby-versioninputs intest.yml(Integration Tests and Skill Evals), andruby_3_4inflake.nix's dev shell.CONTRIBUTING.md's requirement line follows. flake.lock: nixpkgsc27cdad4(2026-08-27) →5adc5083(2026-10-20), the currentnixpkgs-unstablehead. Nix's Go goes from 1.26.7 to 1.26.9.vendorHashdoesn't change.
Nix is still a patch behind the release binaries. go.mod's toolchain line asks for 1.26.10 (GO-2026-6809), and nixpkgs master has it, but unstable doesn't yet. buildGoModule builds with the Go nixpkgs gives it, so the flake builds with 1.26.9 until a later flake.lock bump takes Nix to Go 1.26.10 once unstable has it.
Verified on Linux x86_64, in the nixos/nix image scripts/update-nix-flake.sh pins:
nix eval --raw .#devShells.x86_64-linux.default.drvPathresolves. Withruby_3_3put back on the new lock, the same eval fails with nixpkgs' removal error, so the Ruby move is what makes the bump possible.scripts/nix-build-check.sh, the "Build the flake" step, passes with the existingvendorHash; the binary printsbasecamp version 0.16.0, andgo versionon it readsgo1.26.9.make checkpasses under Ruby 3.4.10,check-eval-patterns(199 patterns across 34 case files) andcheck-eval-harnessincluded. The dev shell'sruby_3_4, 3.4.11 on this lock, compiles the same 199.
Summary by cubic
Moves the dev toolchain to Ruby 3.4 everywhere it's pinned and updates the flake to today's nixpkgs-unstable. nixpkgs-unstable removed ruby_3_3, which is why flake.lock was still pinned to August's nixpkgs.
The Ruby pins have to agree because make check compiles the skill-eval patterns under Ruby's own regex engine: .mise.toml, both ruby/setup-ruby inputs in test.yml, the dev shell's ruby_3_4 in flake.nix, and the requirement line in CONTRIBUTING.md all move to 3.4.
Notes
- The flake now builds with Go 1.26.9;
go.mod's toolchain asks for 1.26.10, which nixpkgs master has but unstable doesn't yet, so a laterflake.lockbump will pick it up. vendorHashis unchanged; the existing Nix build check passes with the new lock.