A collection of scripts to bootstrap a clean install of macOS.
-
Perform a Software Update.
-
Install xcode command line tools:
xcode-select --install
-
If this is an Apple silicon machine, install Rosetta:
softwareupdate --install-rosetta --agree-to-license
-
Clone this repository by running the following command:
mkdir ~/Projects git clone https://github.com/craighurley/dotfiles.git ~/Projects/dotfiles
Note: after you setup your SSH keys, consider updating the
originto[email protected]:craighurley/dotfiles.git. -
Install homebrew by running the following command:
~/Projects/dotfiles/install_brew.sh -
Run the following command to do everything.
~/Projects/dotfiles/bootstrap.shNotes:
- you will be prompted for your password a number of times during script execution.
Essentially,
bootstrap.shexecutes the following commands:# Create useful directories. ~/Projects/dotfiles/directories.sh # Copy templates to ~. These files don't really belong in version control, hence they are not symlinked. ~/Projects/dotfiles/templates.sh # Configure sensible defaults in macOS. ~/Projects/dotfiles/macos.sh # Install command line package manager and additional command line tools. ~/Projects/dotfiles/brew.sh # Backup existing dotfiles and symlink to the dotfiles in this project. ~/Projects/dotfiles/dotfiles.sh # Apply preferences to applications. ~/Projects/dotfiles/preferences.sh # Install python tools. ~/Projects/dotfiles/uv.sh
-
Restart your computer.
-
If you want to automatically install applications from the App Store, open the App Store and sign in, then run the following command:
~/Projects/dotfiles/mas.sh
- Import Terminal config.
- Import ssh keys.
- Update details:
~/.ssh/config.~/.ssh/authorized_keys.~/.gitconfig.customand any additional custom configurations.~/.extra.~/.pypirc.~/.aws/config.~/.aws/credentials.~/.saml2aws.
- Sign into Firefox account to sync settings.
- Sign into Chrome account to sync settings.
- Sign into GitHub in VS Code to sync settings.
- Run docker, configure settings and import containers with
container.sh - Download/install binary apps:
Run the following commands to get the latest version of this project:
cd ~/Projects/dotfiles/
git pull origin masterSuggestions/improvements welcome!