# typed: strict # frozen_string_literal: true require "abstract_command" require "shell_command" module Homebrew module Cmd class Shellenv < AbstractCommand include ShellCommand cmd_args do description <<~EOS Valid shells: bash|csh|fish|pwsh|sh|tcsh|zsh Print export statements. When run in a shell, this installation of Homebrew will be added to your `PATH`, `MANPATH`, and `INFOPATH`. The variables `HOMEBREW_PREFIX`, `HOMEBREW_CELLAR` and `HOMEBREW_REPOSITORY` are also exported to avoid querying them multiple times. To help guarantee idempotence, this command produces no output when Homebrew's `bin` and `sbin` directories are first and second respectively in your `PATH`. Consider adding evaluation of this command's output to your dotfiles (e.g. `~/.bash_profile` or `~/.zprofile` on macOS and `~/.bashrc` or `~/.zshrc` on Linux) with: `eval "$(brew shellenv)"` The shell can be specified explicitly with a supported shell name parameter. Unknown shells will output POSIX exports. EOS named_args :shell end end end end