This repo contains my personal macOS terminal setup — dotfiles, aliases, functions, and shell config built around zsh.
This only needs to run once
bash $HOME/.dotfiles/.macosThe following tools and dependencies need to be installed for these dotfiles to work correctly.
- zsh — the default shell for this entire setup; all config files (
.zshrc,.zshenv,.zprofile) target zsh specifically
- Homebrew —
brewis on PATH via/opt/homebrew/bin; used by thebrewupalias - rbenv — Ruby version manager; initialized in
.zshrc, bin added in.zshenv - pyenv — Python version manager; initialized in
.zshrc - nvm — Node version manager; loaded in both
.zshrcand.zprofile - tofuenv — OpenTofu version manager; bin added in
.zprofile - pnpm — Node package manager;
$PNPM_HOMEconfigured in.zshrc
- Redis —
redis-serveris started as a daemon automatically in.zprofile - Postgres.app — PostgreSQL installed via the Mac app; its
binis on PATH in.zshenv
- vim — default editor (
$EDITOR) and used in aliases, installed with brew, not the native mac version - git — required by all git aliases and functions
- coreutils — used in
.functions - gawk — used by
git-log-prettyin.functions - lsof — used by
killportin.functions - sha256sum — used by
generate-passwordin.functions - zip — used by
zipfin.functions - iconv — used by
slugifyin.functions
BUNDLE_RUBYGEMS__PKG__GITHUB__COM— GitHub PAT for private RubyGemsNODE_AUTH_TOKEN— GitHub PAT for private npm packagesGITHUB_OAUTH_TOKEN— GitHub PAT for general API/OAuth use