fix: use BSD tools over GNU stdenv in devshell PATH #41

Merged
graham merged 1 commit from fix/bsd-tools-devshell into main 2026-10-18 17:23:11 +00:00
Owner

mkShell prepends stdenv's tools (GNU coreutils, gnugrep, gnused, gawk, findutils, diffutils, patch, gnutar, gzip, bzip2, xz) to PATH, which shadowed macOS builtins like cp/grep/sed with incompatible GNU versions. The shellHook now splits PATH on ':' and drops those stdenv store paths; nix-provided project deps (elixir, postgres, etc.) are unaffected. Verified via direnv exec . sh -c 'command -v cp' resolving to /bin/cp.

mkShell prepends stdenv's tools (GNU coreutils, gnugrep, gnused, gawk, findutils, diffutils, patch, gnutar, gzip, bzip2, xz) to PATH, which shadowed macOS builtins like cp/grep/sed with incompatible GNU versions. The shellHook now splits PATH on ':' and drops those stdenv store paths; nix-provided project deps (elixir, postgres, etc.) are unaffected. Verified via `direnv exec . sh -c 'command -v cp'` resolving to /bin/cp.
fix: use BSD tools over GNU stdenv in devshell PATH
Some checks failed
skippy-bot/review Skippy is reviewing (first-review)
Elixir CI / Build and test (pull_request) Failing after 2m27s
Elixir CI / Dialyzer (pull_request) Successful in 4m1s
Elixir CI / Build and Push Docker Image (pull_request) Has been skipped
ed6023d69b
mkShell prepends stdenv's tools (coreutils, gnugrep, gnused, gawk,
findutils, diffutils, patch, gnutar, gzip, bzip2, xz) to PATH, which
shadowed macOS builtins like cp/grep/sed with incompatible GNU versions.

The shellHook now splits PATH on ':' and drops those stdenv store paths,
so BSD tools win for interactive use while nix-provided project deps
(elixir, postgres, etc.) are unaffected.
graham merged commit 181e414f3e into main 2026-10-18 17:23:11 +00:00
graham deleted branch fix/bsd-tools-devshell 2026-10-18 17:23:11 +00:00
Sign in to join this conversation.
No description provided.