diff options
Diffstat (limited to 'dot_local/share/zsh/brew/brew.plugin.zsh')
-rw-r--r-- | dot_local/share/zsh/brew/brew.plugin.zsh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/dot_local/share/zsh/brew/brew.plugin.zsh b/dot_local/share/zsh/brew/brew.plugin.zsh new file mode 100644 index 0000000..e929174 --- /dev/null +++ b/dot_local/share/zsh/brew/brew.plugin.zsh @@ -0,0 +1,29 @@ +# Set up brew +if [[ -f /opt/homebrew/bin/brew ]]; then + export HOMEBREW_NO_ENV_HINTS=1 + export HOMEBREW_NO_ANALYTICS=1 + eval "$(/opt/homebrew/bin/brew shellenv)" + fpath=("/opt/homebrew/share/zsh/site-functions" $fpath) + + # Prefer GNU versions of certain tools + local tool_bin + for tool_bin in /opt/homebrew/opt/*/libexec/gnubin(N); do + if [[ "${tool_bin}" == */gsed/* ]]; then + continue # Alias to gnu-sed + fi + export PATH="${tool_bin}${PATH+:$PATH}" + export MANPATH="$(dirname ${tool_bin})/gnuman${MANPATH+:$MANPATH}" + done + + # Brew leaves and deps + brews() { + local formulae="$(brew leaves | xargs brew deps --installed --for-each)" + local casks="$(brew list --cask)" + local blue="$(tput setaf 4)" + local bold="$(tput bold)" + local off="$(tput sgr0)" + echo "${blue}==>${off} ${bold}Formulae${off}" + echo "${formulae}" | sed "s/^\(.*\):\(.*\)$/\1${blue}\2${off}/" + echo "\n${blue}==>${off} ${bold}Casks${off}\n${casks}" + } +fi |