1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2024-10-31 23:11:13 +00:00
prezto/modules/homebrew/init.zsh
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

60 lines
1.4 KiB
Bash

#
# Defines Homebrew aliases.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Load dependencies.
pmodload 'helper'
# Return if requirements are not found.
if ! is-darwin && ! is-linux; then
return 1
fi
#
# Variables
#
# Load standard Homebrew shellenv into the shell session.
# Load 'HOMEBREW_' prefixed variables only. Avoid loading 'PATH' related
# variables as they are already handled in standard zsh configuration.
if (( $+commands[brew] )); then
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
#
# Aliases
#
# Homebrew
if ! zstyle -t ':prezto:module:homebrew:alias' skip; then
alias brewc='brew cleanup'
alias brewi='brew install'
alias brewL='brew leaves'
alias brewl='brew list'
alias brewo='brew outdated'
alias brews='brew search'
alias brewu='brew upgrade'
alias brewx='brew uninstall'
# Homebrew Cask
alias caski='brew install --cask'
alias caskl='brew list --cask'
alias casko='brew outdated --cask'
alias casks='brew search --cask'
alias casku='brew upgrade --cask'
alias caskx='brew uninstall --cask'
fi