My MacOS setup checklist
This week I formatted my macbook, and after many years of keeping sparse notes in too many different place, I decided it is time to put everything together in one place for future reference… and what best place than my freshly restyled blog.
General preference
-
Dock: don’t show recent applications.
-
Mission control: set hot corners.
-
Trackpad/Mouse: Secondary click, click in bottom right corner.
-
Keyboard: Use F1, F2, etc. keys as standard function keys.
OS settings
- Show hidden files/folders
defaults write com.apple.finder AppleShowAllFiles -boolean true; killall Finder
Recently learned a shortcut - CMD + Shift + .
- to toggle quickly between two modes.
Fundamentals
-
Firefox (make default browsers)
-
1Password
-
XCode
-
I usually install
code
command into the PATH directly from vscode.Recently had a problem that after exit vscode the command is removed from the PATH. To fix this issue:
xattr Code.app
check wether vscode is quarantined (app installed from Internet usually are).sudo xattr -r -d com.apple.quarantine Code.app
remove the quarantine attribute.
Terminal
ZSH is now default shell on MacOS.
Git
Git is usually already installed on MacOS, but there’re a couple of things to have it properly configured.
Config
# Committer
git config --global user.name "Bruno Scopelliti"
git config --global user.email "*****"
# Default editor
git config --global core.editor "code --wait"
Alias
In ~/.zshrc
define alias for common commands.
alias ga="git add"
alias gaa="git add ."
alias gst="git status"
alias gb="git branch"
alias gbd="git branch --delete "
alias gc="git commit"
alias gcm="git commit --message"
alias gco="git checkout"
alias gcob="git checkout -b"
alias gcom="git checkout master"
alias gpl="git pull"
alias gps="git push"
Configure SSH auth
GitHub is moving away from basic authentication.
Configure GPG commit signin
Assure gnupg
is installed - brew install gnupg
otherwise.
git config --global commit.gpgsign true
git config --global gpg.program gpg
git config --global user.signingkey *****
Recently I got the gpg failed to write commit object
error on the first commit;
to fix this issue I found I had to export the GPG_TTY
environment variable from my .zshrc file:
export GPG_TTY=$(tty)
Node.js
- NVM, to manage multiple Node.js version.
Ruby
- RVM, to manage multuple Ruby version.
MongoDB
I followed these instructions.
Other apps for software development
-
Chrome
-
GIMP
Other apps
-
Google Drive
-
Spotify
-
VLC
-
Stud.io, I am out of dark age
-
Signal, Telegram, Slack, Whatsapp 😓