Open fezboy opened 3 years ago
I see the issue; it's a really silly mistake.
The br_dedup_envvar
function in /bedrock/run/fprofile
in 0.7.18beta4 was explicitly written with the goal of not wholly replacing the envvar, but rather only prepending and appending the specified items to it. However, I completely failed to actually feed the incoming envvar into it. Here's the bash
equivalent:
export PATH="$(br_dedup_envvar "/bedrock/cross/pin/bin:/bedrock/bin::/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:${PATH}" "/bedrock/cross/bin")"
Note ${PATH}
there at the end of the first argument to br_dedup_envvar
. When I translated this to fish
:
set -x PATH (br_dedup_envvar "/bedrock/cross/pin/bin:/bedrock/bin::/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin" "/bedrock/cross/bin")
I just completely left it out.
Should be an easy fix. I'll try to include it into 0.7.18.beta5.
Should be fixed in 0.7.18beta5 that I just pushed. If you have the time, please try it out and confirm for me that things now act as you expect.
The expected behavior when starting fish is that it inherits the path from the environment that invoked it, which is then prepended with the contents of $fish_user_paths, a user variable used to add to one's path, instead of setting it in a .profile. This is a paste of expected behavior from my vanilla Arch machine: https://pastebin.com/fv0eMKU3
Under Bedrock, this seems to be wholly replaced by line 24 of /bedrock/run/fprofile
This is the behavior I observe on my bedrock 0.7.18beta4 machine, the error being the missing perl, jvm, and user entries: