mac-setup installs your apps, developer tools, and a beautiful terminal β but only after you tick exactly what you want. No mystery scripts, no gimmicks, nothing that touches how macOS looks and feels.
curl -fsSL https://raw.githubusercontent.com/pedrobritx/mac-setup/main/bootstrap.sh | bash
Every item is optional and explained on the selection screen. Untick anything β your choices are remembered.
Chrome, VS Code, Docker, Figma, Notion, Obsidian, WhatsApp, Teams, Discord, Steam⦠installed from the right source, exactly one copy of each.
zsh with a fast Starship prompt, history search, smart cd, syntax colors, and ghost-text suggestions β each one explained before you say yes.
Git + SSH keys + GitHub login, Node (fnm), Python (uv), Swift extras, VS Code settings & extensions.
Stock-first: no animation hacks, no hot corners, no window-management overrides. Just a few tasteful defaults like tap-to-click and the Finder path bar.
Firewall on, Touch ID for sudo, instant screen lock β and clear pointers for the choices only you should make, like FileVault.
It says what it will do, what it is doing, and what it did β with reports and logs you can read afterwards.
You stay in charge until you press y β after that, it runs itself and shows its progress.
Terminal lives in Applications β Utilities (or press β space and type βTerminalβ). Paste the command above, press return, and approve the Xcode tools dialog if it appears.
A checklist appears with everything pre-ticked. ββ to move, space to tick or untick, a for a whole group, enter to review. Every item has a plain-English explanation.
Check the summary, press y, and watch the counter climb β β34 of 72 Β· 38 to goβ. It may ask for your password or App Store sign-in; everything else is automatic. Re-running is always safe.
mac-setup β tick what to install, untick what to skip β/β move Β· space tick/untick Β· a toggles a whole group Β· enter continue Terminal environment [β] starship pretty, fast shell prompt (git branch, language versions) β― [β] zoxide smarter cd β 'z proj' jumps to your most-used folders [β] fzf fuzzy finder β Ctrl-R searches history, Ctrl-T finds files [ ] tmux split the terminal into panes; sessions survive disconnects Browsers & AI assistants [β] Google Chrome primary browser [β] Claude Anthropic Claude desktop 83 of 84 selected Β· enter to review & confirm
It installs the apps and tools you ticked (via Homebrew and the Mac App Store β official sources only) and applies a small set of documented preferences. It never overrides window management, Mission Control, or animations, never overwrites SSH keys, and backs up any dotfile before touching it. Everything it does is logged and reported.
Yes β that's the design. Re-running skips everything already installed and pre-loads your previous selection. It's also how you add something you unticked the first time.
No. If you can paste one line and press a few arrow keys, you're qualified. The screen tells you which keys do what at every step.
Once, near the start (for system-level steps like the firewall), and macOS may ask you to sign in to the App Store for those apps. It never sees or stores your password β that's the standard sudo prompt.
It lands in a manual actions report with the official link and the exact steps β for example paid App Store apps you haven't purchased yet. Nothing fails silently.
./uninstall.sh removes exactly what was installed β after showing you the list and asking. Your files are never touched.