The goal of this project is to make getting started with a new macOS machine easy through automation and configuration. Every script contained here is designed to be as idempotent as possible – whenever your preferences evolve, you can simply update this project and rerun the installer.
Before running the installer, consider verifying that the following steps have been completed:
- Sign in with your Apple ID on your Mac
- Update macOS to the latest version on the App Store
- Install Xcode from the App Store, open it, and accept the license agreement
- Install macOS Command Line Tools by running
xcode-select --install
- Install Homebrew
You'll need to generate a new SSH keypair for your machine if one doesn't exist already:
- This GitHub Help article can walk you through the process
- Copy any other SSH keys to
~/.ssh
and make sure they're set to600
Then, configure your default git credentials:
git config --global user.name "John Doe"
git config --global user.email [email protected]
Since I generally have this dotfiles project synced to my iCloud Drive, it is usually instantly available on my new machine after I sign in with my Apple ID.
You can also clone this repo from GitHub via SSH. If you don't want to keep this project synced with iCloud Drive, I'd suggest using your home directory (~
):
git clone [email protected]:syhchen/dotfiles.git
Run bootstrap.sh
to install. The scripts in this project are written for bash
but the default shell in macOS is now zsh
, so you will first need to give your shell executable permissions:
chmod +x bootstrap.sh
./bootstrap.sh
Not every aspect of setting up a new machine is practical to automate, though some of the manual setup outlined below might be candidates for automation in the future.
- Configure core utilities:
- 1Password
- Cron
- Google Drive
- iMessage (iCloud sync, text message forwarding)
- Raycast
- Rectangle
- Install and configure core utilities not available via Homebrew:
- Arc
- Flow
- Change your computer’s name or local hostname on Mac
- Change the behavior of the modifier keys on Mac
- Add folders to the sidebar (Customize the Finder toolbars on Mac)
- Add and customize widgets in Notification Center on Mac
- Add contacts from iCloud, Google, and more to Contacts on Mac
- Remove Siri in menu bar
- Remove Spotlight in menu bar (What’s in the menu bar on Mac?)
- Write in another language on your Mac