fish: add patch to fix $PATH for nix-darwin

This commit is contained in:
Emily 2024-10-31 17:09:30 +00:00
parent 05e3b3d344
commit c406d3b630
2 changed files with 26 additions and 0 deletions

View File

@ -148,6 +148,20 @@ let
hash = "sha256-YUyfVkPNB5nfOROV+mu8NklCe7g5cizjsRTTu8GjslA=";
};
patches = [
# We dont want to run `/usr/libexec/path_helper` on nix-darwin,
# as it pulls in paths not tracked in the system configuration
# and messes up the order of `$PATH`. Upstream are unfortunately
# unwilling to accept a change for this and have recommended that
# it should be a distrospecific patch instead.
#
# See:
#
# * <https://github.com/LnL7/nix-darwin/issues/122>
# * <https://github.com/fish-shell/fish-shell/issues/7142>
./nix-darwin-path.patch
];
# Fix FHS paths in tests
postPatch = ''
# src/fish_tests.cpp

View File

@ -0,0 +1,12 @@
diff --git a/share/config.fish b/share/config.fish
index d85fd1e185..c564e45b27 100644
--- a/share/config.fish
+++ b/share/config.fish
@@ -158,6 +158,7 @@
#
if status --is-login
if command -sq /usr/libexec/path_helper
+ and not set -q __NIX_DARWIN_SET_ENVIRONMENT_DONE
# Adapt construct_path from the macOS /usr/libexec/path_helper
# executable for fish; see
# https://opensource.apple.com/source/shell_cmds/shell_cmds-203/path_helper/path_helper.c.auto.html .