My personal configuration for MacOS machines.
Update Computer name via System Preferences > Sharing
.
Install Desktop apps:
- Install 1Password.
- Install Brave Browser. Setup various profiles.
- Dropbox
- Discord
In Mac App Store, install:
- Slack
Install iTerm2.
Install Docker Desktop.
- for Apple Silicon (M1) machines you may need one of these when working with non-ARM containers:
export DOCKER_DEFAULT_PLATFORM=linux/amd64
to build containers on AMD/64 instead of default ARM/64.softwareupdate --install-rosetta
to run Intel containers
Switch macOS shell to bash: Open Terminal and then run chsh -s /bin/bash
then restart Terminal.
Install Microsoft Visual Code extensions:
-
command-shift-p
and runShell Command: Install 'code' command in PATH
-
Prettier - Code formatter
by Prettier- update Settings for
Editor: Default Formatter
toPrettier - Code formatter
.
- update Settings for
-
Dev Containers
by Microsoft -
Solidity
by Nomic Foundation -
Tailwind CSS
by Tailwind Labs -
GitHub Codespaces
by GitHub -
Docker
by Microsoft
Setup Passwordless Auth to Github via SSH
ssh-keygen -t ed25519 -C "<desired email address here>"
# legacy version
ssh-keygen -t rsa -b 4096 -C "<desired email address here>"
# add public key to Github
For nice visual Git diffs, there are many options:
- Use VSCode's tools
- Install
difftastic
, a Rust-based diff tool installed via Homebrew below. Run asdifft
. - Install Github Desktop and the command line tool so you can run
github .
in any repository.
Install Homebrew
xcode-select --install
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
If homebrew needs to be accessible for multiple user accounts on same machine: https://medium.com/@leifhanack/homebrew-multi-user-setup-e10cb5849d59
Install apps via Homebrew:
brew install tmux git bash-completion gh difftastic gpg git-lfs yarn
Install nvm
to install NodeJS:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
... and install latest version:
nvm ls-remote
nvm install v18
nvm alias default v18
Install Go: https://github.com/briangershon/setup-go
Clone this repo locally via git clone git@github.com:briangershon/setup-mac.git
Setup .dot config files
# if files already exist merge/remove before linking
cd ~
ln -s ~/setup-mac/dotfiles/.gitconfig
ln -s ~/setup-mac/dotfiles/.bash_profile
ln -s ~/setup-mac/dotfiles/.tmux.conf
rm ~/.profile
Also for tmux
change MacOS keyboard shortcut so that CAPS LOCK maps to CTRL in "System Preferences > Keyboard" then "Modifier Keys..." button. This gives you the very nice CAPSLOCK-a
(already setup in .tmux.conf
instead of default CTRL-b
.
Import your public/secret key for signing GitHub commits.
gpg --import ~/public-key.gpg
gpg --allow-secret-key-import --import ~/secret-key.gpg
gpg --list-keys
For first-time setup, generate brand new keypair with gpg
: https://gist.github.com/Beneboe/3183a8a9eb53439dbee07c90b344c77e