My macOS setup. Fast, minimal, mine.
git clone https://github.com/gumadeiras/dotfiles.git ~/dotfiles
git clone <private-remote> ~/git/private
cd ~/dotfiles && sh install.shinstall.sh exits immediately if ~/git/private/dotfiles is missing. Override with PRIVATE_DOTFILES_DIR=/path/to/private/dotfiles sh install.sh if needed.
| component | what it does |
|---|---|
| zsh | shell config + aliases/functions |
| tmux | minimal persistent terminal bootstrap |
| config/ | app configs (gh, ghostty, oh-my-posh, zed) |
| codiff | local diff viewer app + config |
| private bin/ | helper scripts linked into ~/.local/bin |
| mail automation | private Apple Mail automation bootstrap hook |
| micromamba | python environments (conda-compatible) |
| Brewfile | homebrew packages |
| apps/ | karabiner, raycast, iterm, sublime, zotero |
- Aliases:
~/.zsh/alias.zsh - Functions:
~/.zsh/functions.zsh - Codex usage:
ccusage daily|monthly|session - PDF extraction:
pdf-to-markdown input.pdf [output.md] - tmux:
~/.tmux.conf - Profile:
~/.zprofile - Git:
~/.gitconfig - GH CLI:
~/.config/gh/config.yml - Ghostty:
~/.config/ghostty/config - Codiff:
~/.codiff/codiff.jsonc - Oh My Posh:
~/.config/oh-my-posh/config.json - Zed:
~/.config/zed/settings.json - Sublime:
~/Library/Application Support/Sublime Text/Packages/User
- Python via
micromamba(runcondaalias works) - Sensitive local config lives in
~/git/private/dotfiles/ install.shlinks core configs, includingconfig/codiff/codiff.jsonc->~/.codiff/codiff.jsoncinstall.shwill link private overlays when present:zsh/env.zsh->~/.config/secrets/env.zshzsh/private.zsh->~/.config/secrets/private.zshgit/config.private->~/.config/git/config.privategit/allowed_signers->~/.config/git/allowed_signersconfig/gh/hosts.yml->~/.config/gh/hosts.ymlconfig/codex/hooks.json->~/.codex/hooks.jsonssh/config->~/.ssh/configapps/sublime/User/MySFTP/servers/server.json->~/Library/Application Support/Sublime Text/Packages/User/MySFTP/servers/server.jsonagents/->~/.agentsagents/AGENTS.md->~/.codex/AGENTS.mdagents/skills/->~/.codex/skillsagents/prompts/->~/.codex/promptsbin/committer->~/.local/bin/committerbin/setup-mail-automation->~/.local/bin/setup-mail-automationbin/setup-codex-plugins->~/.local/bin/setup-codex-plugins- Open Sublime once after setup, then run
Package Control: Satisfy Dependenciesif any packages are missing - Codiff installs from
nkzw-tech/tap/codiff; setup also cloneshttps://github.com/nkzw-tech/codiff.gitto~/git/oss/codifffor the Codex skill target - Private Codex plugins are installed during setup when
codexis available. - Mail automation lives in private dotfiles. After Mail accounts are configured, run
setup-mail-automation.
install.shlinks.tmux.confto~/.tmux.conftmattaches to or creates a tmux session for the current git root (or current directory outside git)- Start simple:
tmCtrl-b dto detachCtrl-b |orCtrl-b -to split in the current directoryCtrl-b rto reload config
- Keep using Ghostty tabs for quick one-offs; use tmux for persistent shells, remote work, servers, logs, and long-running jobs