Catalina moved from BASH to zsh. The section of code to update .zshrc is detecting the shell from the #! in the script and thus not updating .zshrc.
The code at line 100 should update the profile based on the login shell, not the shell that is running the script. The following code fixes the problem:
if [ -z "$GVM_NO_UPDATE_PROFILE" ] ; then
if [ -n "$ZSH_NAME" ]; then
update_profile "$HOME/.zshrc"
elif [ "$(uname)" == "Linux" ]; then
update_profile "$HOME/.bashrc" || update_profile "$HOME/.bash_profile"
elif [ "$(uname)" == "Darwin" ]; then
LOGIN_SHELL=$(finger $(id -F) | grep Shell | cut -d : -f 3)
echo "macOS detected. User shell is:" $LOGIN_SHELL
if [ $LOGIN_SHELL == "/bin/zsh" ]; then # macOS moved to ZSH after macOS Catalina
update_profile "$HOME/.zshrc"
else
update_profile "$HOME/.profile" || update_profile "$HOME/.bash_profile"
fi
fi
fi
Catalina moved from BASH to zsh. The section of code to update .zshrc is detecting the shell from the #! in the script and thus not updating .zshrc.
The code at line 100 should update the profile based on the login shell, not the shell that is running the script. The following code fixes the problem: