diff options
Diffstat (limited to 'lib/functions.zsh')
-rw-r--r-- | lib/functions.zsh | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/functions.zsh b/lib/functions.zsh index e85b867a5..0556aeb29 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -7,8 +7,20 @@ function uninstall_oh_my_zsh() { } function upgrade_oh_my_zsh() { - echo >&2 "${fg[yellow]}Note: \`$0\` is deprecated. Use \`omz update\` instead.$reset_color" - omz update + if (( $+functions[_omz::update] )); then + echo >&2 "${fg[yellow]}Note: \`$0\` is deprecated. Use \`omz update\` instead.$reset_color" + fi + + # Run update script + env ZSH="$ZSH" sh "$ZSH/tools/upgrade.sh" + # Update last updated file + zmodload zsh/datetime + echo "LAST_EPOCH=$(( EPOCHSECONDS / 60 / 60 / 24 ))" >! "${ZSH_CACHE_DIR}/.zsh-update" + # Remove update lock if it exists + command rm -rf "$ZSH/log/update.lock" + # Restart the zsh session + _omz::log info "restarting the zsh session..." + [[ -z "$SHELL" ]] && exec ${SHELL#-} || exec zsh } function take() { |