1
0
Fork 0

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.
pull/2086/head
Indrajit Raychaudhuri 8 months ago
parent 005709d120
commit 775f14d0c3

@ -22,18 +22,15 @@ fi
# variables as they are already handled in standard zsh configuration. # variables as they are already handled in standard zsh configuration.
if (( $+commands[brew] )); then if (( $+commands[brew] )); then
cache_file="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/brew-shellenv-cache.zsh" cache_file="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/brew-shellenv-cache.zsh"
if [[ "${commands[brew]}" -nt "$cache_file" \ if [[ "$commands[brew]" -nt "$cache_file" \
|| "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \ || "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \
|| ( ! -n ${cache_file}(#qNmw-1) ) ]]; then || ! -s "$cache_file" ]]; then
# Rebuild cache if either mkdir -p "$cache_file:h"
# 1. brew is newer than the cache file # Cache the result.
# 2. .zpreztorc is newer than the cache file echo "${(@M)${(f)"$(brew shellenv 2> /dev/null)"}:#export HOMEBREW*}" >! "$cache_file" 2> /dev/null
# 3. cache file doesn't exist
# 4. cache file is older than a week
mkdir -p "${cache_file:h}"
echo "${(@M)${(f)"$(brew shellenv 2> /dev/null)"}:#export HOMEBREW*}" >! "${cache_file}"
fi fi
source "${cache_file}"
source "$cache_file"
unset cache_file unset cache_file
fi fi

Loading…
Cancel
Save