This repo has a series of scripts to setup a new Mac from scratch. It will install things like brew
, conda/mamba
, and set various MacOS & App settings.
- Sign into iCloud
- Update MacOS
- Open
Terminal.app
- Install basic tools with
xcode-select --install
- Clone this repo:
git clone https://github.com/raydouglass/setup-mac.git && cd setup-mac
- Run
env DEBUG=false ./setup_mac.sh [new_hostname]
- Run with
DEBUG=true
to see what would be run without making any changes
- Run with
- Reboot
- Edit
pkgs/brew.sh
to add/remove brew packages - Edit
pkgs/cask.sh
to add/remove brew cask packages - Edit
pkgs/mas.sh
to add/remove MacOS app store packages - Edit files in
config/
to customize MacOS' & other apps' settings
Set environment variables to control setup_mac.sh
execution:
SKIP_ALL
- Skip everything below unless explicitly set tofalse
SKIP_BREW
- Skip installing brew, brew packages, and brew cask packagesSKIP_BREW_PKGS
- Skip installing brew packagesSKIP_CASK_PKGS
- Skip installing brew cask packagesSKIP_MINIFORGE
- Skip installing Miniforge3SKIP_MACOS_SETTINGS
- Skip setting MacOS settingsSKIP_APP_SETTINGS
- Skip setting application settingsSKIP_DOCK_SETTINGS
- Skip setting up the dockSKIP_MAS
- Skip installing MacOS app store packagesSKIP_DUTI_SETTINGS
- Skip using duti for setting default apps
For example:
- To only install brew packages
DEBUG=false SKIP_ALL=true SKIP_BREW=false SKIP_BREW_PKGS=false ./setup_mac.sh
- To only configure the docker:
DEBUG=false SKIP_ALL=true SKIP_DOCK_SETTINGS=false ./setup_mac.sh
- Enable FileVault
- Enable Time Machine
- Trackpad settings
- Tap to Click
- Natural Scrolling
- Swipe between pages w/ three fingers
- Enable TouchID & enroll fingerprints
Run env DEBUG=true ./setup_mac.sh
See: