Compare commits

...

2 commits

Author SHA1 Message Date
Indrajit Raychaudhuri 775f14d0c3 homebrew: Simplify caching brew shellenv
Avoid checking age of cache file and just test for its existence.
While this is simpler, this also avoids depending on having
`EXTENDED_GLOB` enabled.
2024-04-08 20:48:57 -05:00
Yutian Li 005709d120 Cache brew shellenv results
This could sometimes be slow (as with any external command execution)
but the result should almost never change.
2024-04-08 20:48:57 -05:00

View file

@ -21,7 +21,17 @@ fi
# Load 'HOMEBREW_' prefixed variables only. Avoid loading 'PATH' related
# variables as they are already handled in standard zsh configuration.
if (( $+commands[brew] )); then
eval "${(@M)${(f)"$(brew shellenv 2> /dev/null)"}:#export HOMEBREW*}"
cache_file="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/brew-shellenv-cache.zsh"
if [[ "$commands[brew]" -nt "$cache_file" \
|| "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \
|| ! -s "$cache_file" ]]; then
mkdir -p "$cache_file:h"
# Cache the result.
echo "${(@M)${(f)"$(brew shellenv 2> /dev/null)"}:#export HOMEBREW*}" >! "$cache_file" 2> /dev/null
fi
source "$cache_file"
unset cache_file
fi
#