TL;DR: For web dev things on a clean macOS install: curl -ssL https://git.io/tomdot | sh
Disclaimer: Dotfiles are personal things, and as such I advise against rolling these ones unmodified — they are specific to my setup and will likely need to be tweaked for yours.
I am Tom and these are my dotfiles so tomdot is how they shall be known!
On a fresh macOS system, tomdot will handle the following:
- Generate SSH auth keys for GitHub.
- Download repos from GitHub to your local machine.
- Install pnpm as the global package & Node environment manager.
- Install Node.js LTS via pnpm.
- Install global Node.js packages.
- Install Bun.
- Install Homebrew & packages.
- Install apps from the App Store.
- Symlink config files from
~/.dotfiles
to system equivalents.
There is some preparation to be done before performing a clean install of macOS to ensure smooth sailing.
- Backup fonts to iCloud:
cp -r ~/Library/Fonts ~/Library/Mobile\ Documents/com~apple~CloudDocs/Fonts
. - Backup any desired app preference files to iCloud.
- Ensure all repos that you want to be cloned from GitHub are included in the
repos
array in~/.dotfiles/git/get_repos.sh
. - Ensure local
~/.dotfiles
and repos are up-to-date & pushed to GitHub. - Ensure VS Code is signed into and synced.
- Ensure Chrome is signed into and synced.
- Login to iCloud with a browser and ensure all backed-up fonts and preferences have actually been uploaded.
- Update the pnpm install script in install.sh (line 85) is up-to-date.
- Update MacOS to the latest version.
- Perform a clean install of macOS. See Apple Support article here for instructions.
- Ensure you are logged into the App Store (
mas signin
has been broken for years). - Install Xcode + CLT manually to avoid Homebrew errors
- Run Software update from system settings to ensure CLT is the latest version
- Run
curl -ssL https://git.io/tomdot | sh
in the terminal and buckle up!
- Enable Desktop & Documents Folders in Apple menu  > System Settings > iCloud > iCloud Drive.
- Install fonts backed-up to iCloud.
- Launch Raycast & setup.
- Install apps unavailable via Homebrew / App Store (IdeaShare).
- Login to Chrome & enable sync.
- Add SSH public key to Azure DevOps.
- Install Android studio Emulator.
- Restart computer.
The tomdot repo was assembled with many thanks to these smart folks:
Consider GNU Stow or Ansible over manual symlinks.