From 7920006020b199d7cc1ca36067bd14fa86d4b817 Mon Sep 17 00:00:00 2001 From: David Xia Date: Sat, 8 May 2021 14:11:10 -0700 Subject: [PATCH] fix: use recommended way of updating Fish shell $PATH fixes https://github.com/Homebrew/brew/issues/8965 See Fish docs https://fishshell.com/docs/current/tutorial.html#path. > A faster way is to use the `fish_add_path function`... The advantage is that > you don't have to go mucking around in files: just run this once at the > command line, and it will affect the current session and all future instances > too. > > Or you can modify `$fish_user_paths` yourself, but you should be careful not > to append to it unconditionally in config.fish, or it will grow longer and > longer. --- Library/Homebrew/test/utils/shell_spec.rb | 2 +- Library/Homebrew/utils/shell.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/test/utils/shell_spec.rb b/Library/Homebrew/test/utils/shell_spec.rb index 8edc84c50b..e0edf6fd28 100644 --- a/Library/Homebrew/test/utils/shell_spec.rb +++ b/Library/Homebrew/test/utils/shell_spec.rb @@ -98,7 +98,7 @@ describe Utils::Shell do ENV["SHELL"] = "/usr/local/bin/fish" ENV["fish_user_paths"] = "/some/path" expect(described_class.prepend_path_in_profile(path)) - .to eq("echo 'set -g fish_user_paths \"#{path}\" $fish_user_paths' >> #{shell_profile}") + .to eq("echo 'fish_add_path #{path}' >> #{shell_profile}") end end end diff --git a/Library/Homebrew/utils/shell.rb b/Library/Homebrew/utils/shell.rb index 47a22749de..edcbd26da4 100644 --- a/Library/Homebrew/utils/shell.rb +++ b/Library/Homebrew/utils/shell.rb @@ -78,7 +78,7 @@ module Utils when :csh, :tcsh "echo 'setenv PATH #{csh_quote(path)}:$PATH' >> #{profile}" when :fish - "echo 'set -g fish_user_paths \"#{sh_quote(path)}\" $fish_user_paths' >> #{profile}" + "echo 'fish_add_path #{sh_quote(path)}' >> #{profile}" end end