In the past I have used the migration assistant tool to copy my files from Mac to Mac whenever I would get a new one. After almost 20 years of doing this I wanted to setup my new screaming M2 from scratch.
Automating App Installs
There are a couple command line tools that help this and I have created a bash script in github to run on the computer. Be sure to customize for your own situation.
Once this script is run on the Mac half the work will be done. The next steps below are for setting up the data.
The script and explanations below should only install M1/M2 compatible apps. Nothing on Intel.
1Password Data Setup
- Setup 1Password coud Sync
- Enable Local vaults
- Setup iCloud vault sync
Keychain
- Copy keychain file from original Mac
BBEdit
- Enable Sandbox Access

Spark
- Login to gmail account
- Don’t allow notifications
Hazel
- Register License from 1password file
- Give Full disk access
- Add back Hazel folders, sync rules with each folder and enable rules on other computers.
- Activate Hazel Notifications
- Enable App Sweep and Delete files from trash after 1 week
- Turn off Notifications for Files events and trash events

Bartender
- Register Bartender
- Setup bartender to hid everything but Fantastical and DayOne.
Dash App
In Dash preferences choose the Sync folder on iCloud Drive/Dash and everything is setup.

Timing
- Launch and setup
- Copy data from old computer
Freedom
Log into Freedom and make sure it is setup name device.
Fantastical
- Need to create new app password for iCloud calendar.
- Add accounts iCloud, Google, Meetup.com
- Set default calendar and default reminder list
Omnifocus
- Install Omnifocus Beta from TestFlight
- Copy over Omnifocus Archive to new computer
- Check that ctr-option-space is global shortcut
- Copy chat backup to new computer.
Install What’s App Beta
Slack
- Sign into Slack Channels.
ChronoSync
- Setup backup
Safari
- Enable Extensions in Safari

Time Machine
- Setup backup to Synology
- Setup backup to external drives
Anki
- Sign In to sync
Discord
- Login
Xcode
- Launch and accept dialog boxes.
Visual Studio Code
- Enable Syncing using GitHub account
OBS
- Setup for Highest recording
- Create source for Elgato
- Create Source for Insta360 Link
- Create Source for Screen Recording
Apple Music
- Check Download Dolby Atmos
- Deauthorize previous computer or you might reach the limit
- Check older authorizations to free up
Finder
- Set finder settings to open to home directory and show external disks

Home Folder
Copy over select Home folder contents
System Settings
Trackpad speed
Increase trackpad to max speed.
Configure Shortcuts
Disable unused sharing utilities and shortcuts
Keyboard
- Enable Dictation
Spelling
- Enable Show Input Menu in Menu Bar
Extensions
Disable/enable extensions

Storage
The storage control panel lets you delete the GarageBand music creation libraries.
Notifications
Configure notifications including:
- Turn off notifications from calendar because I use fantastical
- Turn off notifications for mail
- Turn off sound notifications WhatsApp
Unlock with Apple Watch
- Turn on Unlock with Apple Watch
Brave Browser
- Setup Syncing
- Verify Brave Rewards
Clay
- Sign into Clay with Apple ID
Git
Set .gitconfig file to contain your commit information.
`git config --global user.email "[email protected]"`
`git config --global user.name "My Name"`
– Create new GIT ssh key and associate it with account
Generate SSH Key
ssh-keygen -t ed25519 -C "[email protected]"
Setup ssh to reference Keychain.
touch ~/.ssh/config
open ~/.ssh/config
Add the following to the above file:
Host github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519
Add SSH Key to Keychain
eval "$(ssh-agent -s)"
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
gh auth login
gh auth refresh -h github.com -s admin:public_key
gh ssh-key add ~/.ssh/id_ed25519.pub