-
-
Notifications
You must be signed in to change notification settings - Fork 35
Open
Labels
bugSomething isn't workingSomething isn't working
Milestone
Description
Ok, I might have found the culprit and of course I was wrong in my previous comment 🙈
I forgot to mention that I use fish
as my shell and the returned PATH by this command {path, 0} = System.cmd(shell, ["-i", "-l", "-c", "cd #{root_path} && echo $PATH"])
is is space-separated and not colon-separated as in bash 👇
iex [17:38:47 :: 2] > root_path = "/Users/nicolognudi/code/personal/hello_world"
"/Users/nicolognudi/code/personal/hello_world"
iex [17:38:47 :: 3] > shell = System.get_env("SHELL")
"fish"
iex [17:38:47 :: 4] > {path, 0} = System.cmd(shell, ["-i", "-l", "-c", "cd #{root_path} && echo $PATH"])
{"/opt/homebrew/bin /opt/homebrew/sbin /Users/nicolognudi/.local/share/mise/installs/node/22.14.0/bin /Users/nicolognudi/.local/share/mise/installs/usage/0.3.0/bin /Users/nicolognudi/.local/share/mise/installs/python/3.12.4/bin /Users/nicolognudi/.local/share/mise/installs/elixir/1.18.2-otp-27/bin /Users/nicolognudi/.local/share/mise/installs/elixir/1.18.2-otp-27/.mix/escripts /Users/nicolognudi/.local/share/mise/installs/erlang/27.2/bin /Users/nicolognudi/.local/share/mise/installs/ruby/3.4.1/bin /Users/nicolognudi/.local/share/mise/installs/zig/0.14.1/bin /opt/homebrew/opt/fzf/bin /usr/local/bin /System/Cryptexes/App/usr/bin /usr/bin /bin /usr/sbin /sbin /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin /Applications/Wireshark.app/Contents/MacOS /Users/nicolognudi/.local/share/mise/installs/erlang/27.2/erts-15.2/bin /Users/nicolognudi/.cargo/bin /opt/homebrew/opt/mise/bin /Users/nicolognudi/.local/bin /Users/nicolognudi/dotfiles/bin /opt/homebrew/opt/libpq/bin\n",
0}
iex [17:38:47 :: 5] > :os.find_executable(~c"elixir", to_charlist(path))
false
If I "rebuild" the path with colon between the entries (as in bash), the elixir executable is found:
iex [17:38:47 :: 9] > new_path = String.split(path, " ") |> Enum.join(":")
"/opt/homebrew/bin:/opt/homebrew/sbin:/Users/nicolognudi/.local/share/mise/installs/node/22.14.0/bin:/Users/nicolognudi/.local/share/mise/installs/usage/0.3.0/bin:/Users/nicolognudi/.local/share/mise/installs/python/3.12.4/bin:/Users/nicolognudi/.local/share/mise/installs/elixir/1.18.2-otp-27/bin:/Users/nicolognudi/.local/share/mise/installs/elixir/1.18.2-otp-27/.mix/escripts:/Users/nicolognudi/.local/share/mise/installs/erlang/27.2/bin:/Users/nicolognudi/.local/share/mise/installs/ruby/3.4.1/bin:/Users/nicolognudi/.local/share/mise/installs/zig/0.14.1/bin:/opt/homebrew/opt/fzf/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Applications/Wireshark.app/Contents/MacOS:/Users/nicolognudi/.local/share/mise/installs/erlang/27.2/erts-15.2/bin:/Users/nicolognudi/.cargo/bin:/opt/homebrew/opt/mise/bin:/Users/nicolognudi/.local/bin:/Users/nicolognudi/dotfiles/bin:/opt/homebrew/opt/libpq/bin\n"
iex [17:38:47 :: 10] > :os.find_executable(~c"elixir", to_charlist(new_path))
[47, 85, 115, 101, 114, 115, 47, 110, 105, 99, 111, 108, 111, 103, 110, 117,
100, 105, 47, 46, 108, 111, 99, 97, 108, 47, 115, 104, 97, 114, 101, 47, 109,
105, 115, 101, 47, 105, 110, 115, 116, 97, 108, 108, 115, 47, 101, 108, 105,
120, ...]
If you wish I can open a different issue to track it.
Hope it help ✌️
Originally posted by @nickgnd in #59 (comment)
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working