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=trueto see what would be run without making any changes
- Run with
- Reboot
- Edit
pkgs/brew.shto add/remove brew packages - Edit
pkgs/cask.shto add/remove brew cask packages - Edit
pkgs/mas.shto 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 tofalseSKIP_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: