github cachix/devenv v2.1.2

3 hours ago

Bug Fixes

  • Fixed devenv --profile <name> <subcommand> failing when the profile name shadows a subcommand (e.g. devenv --profile test test). The profile value is now consumed before clap's subcommand precedence check (#2821).
  • Fixed Nix syntax errors in devenv.nix being reported as unrelated warnings (e.g. warning: Ignoring the client-specified setting 'system'...) instead of the actual syntax error. Warning-prefixed log entries emitted before the failing operation no longer shadow the real diagnostic (#2820).
  • Fixed the shell hook's "exit on cd-out" feature silently breaking under clean.enabled = true. _DEVENV_HOOK_DIR is now always preserved across env cleaning, so the hook-spawned shell still exits when the user cds out of the project. Also aligned the fish hook's marker check with the posix one (non-empty value, not just "set").
  • Fixed TUI panic ("attempt to read state after owner was dropped") when pressing Esc with content that fits in the viewport. The Esc handler now only scrolls when the ScrollView is actually mounted, matching the existing guard on up/down navigation.
  • Fixed private cachix caches failing with HTTP 401 on nix-cache-info after the v2.1 lazy cachix refactor. apply_store_settings now sets the netrc-file global before adding substituters, so the authenticated probe Nix sends when registering a private substituter picks up the credentials written by the cachix manager.
  • Fixed devenv hook <shell> panicking with failed printing to stdout: Broken pipe (os error 32) when its downstream reader (e.g. source in devenv hook fish | source) closes the pipe before the script is fully flushed.

Improvements

  • Long log lines (structured logs, stack traces, etc.) in the TUI now wrap onto continuation rows instead of being truncated at the terminal width. Applies to both the inline log view (shown for selected/failed activities and devenv up processes) and the expanded log view, matching the default behavior of less and journalctl. Carriage returns are also stripped from captured log lines so pty-induced CRLF endings no longer move the cursor mid-row and erase rendered content (#2818).

Don't miss a new devenv release

NewReleases is sending notifications on new releases.