I also noticed that my path contains this, which yours doesn't: /Library/Apple/usr/bin
On my (Ventura) system,
/Library/Apple/usr/bin contains just one binary:
rvictl. According to this, it is something that was installed by Xcode.
Whatever, it looks to me like that path is meant for "internals" (binaries used by Apple programs, such as Xcode). The linked info says that it was added to the default shell path in 10.15, but that doesn't mean that this path is something you would ever need in KM. --> I would not add it. (But it doesn't harm either.)
Even if you need it someday for something, remember that you can always prepend the path (like you did before) for any "special" thing. It will overwrite the paths in ENV_PATH for that particular script action.
As said, I would prefer the less detailed path here: just
You might insist on using
/opt/anaconda3 for disambiguation because, for example, you have an older binary in
/opt/anaconda2. But this means that you keep the older binary for a reason, and this would be a perfect use case where you want to prepend the path in the particular script action (e.g. in a script where you explicitly want to use anaconda3 and not anaconda2 or anaconda1, or want to use anaconda2 and not 3 or 1).
Using the more generic
/opt has the advantage that it would grab also other binaries that you installed there (or that a package manager installed there).
Only valid use cases to use
/opt/anaconda3 would be – IMO:
- You have indeed multiple anaconda versions in
/opt, but in 95% of the cases you want to use anaconda3 (but still need to have anaconda2 around).
- anaconda3 is your only binary in
/opt that you ever want to use. But in that case it doesn't matter if you use
So, I would give this a try:
If you have other anaconda versions (that you don't want to use) in
/usr/local/bin, then you would have to put
/opt first. (But then probably it would be wiser to clean up your anaconda installations )
without the ~/bin
A custom path like
~/bin (but basically it can be anywhere in your home folder) is useful for example if you download a binary manually (i.e. not with a package manager) and just want to test it.
Just drop it in this folder and it will not get "lost" somewhere in the depths of
/usr, but will still be found automatically by KM.
(I also have this path for the interactive shell. For .zshrc or .bashrc or .profile you might have to use
$HOME instead of the tilde
~, for /private/etc/paths you might have to use the explicit path.)