robert's interconnected web page

Setting up a new Mac

Posted on

Rough notes from the setup of a new Mac for Software Development purposes.

System

Settings

SectionSubsectionSettingValue
GeneralAllow Handoff between this Mac and your iCloud devicesUntick
DockAutomatically hide and show the DockTick
Mission ControlAutomatically rearrange Spaces based on most recent useUntick
SecurityGeneralRequire password (a period of time) after sleep of screensaver beginsImmediately
SecurityFirewallTurn on FirewallDo it
NotificationsTurn on Do not Disturb ... When the display is sleepingTick
KeyboardKeyboardCustomize control stripRemove "Siri"
KeyboardKeyboardCustomize control stripAdd "Screen Lock"
KeyboardKeyboardModified keys: Caps LockNo Action
KeyboardShortcuts: ServicesSearch man Page Index in TerminalUntick
TrackpadScroll & zoomScroll Direction: NaturalUntick
Date & TimeClockShow day of the weekUntick
<!-- TODO: What's the best way to present context for the above? E.g. Disabling the 'man Page Index' shortcut is to avoid a conflict with PhpStorm's search actions -->

Software

Terminal

Sourabh Bajaj has a Mac Setup guide with tons of useful information. There's little point repeating his guidance, just follow the links ๐Ÿ˜‰

brew install bash-completion coreutils fzf tree zsh

brew cask install iterm2 homebrew/cask-fonts/font-fira-code

# Install fzf shell extensions
/usr/local/opt/fzf/install
iTerm2 Settings
SectionSettingValue
GeneralStartupOnly restore hotkey window
GeneralWindow: Native full screen windowsNope
KeysCreate a dedicated hotkey window(see below)
KeysKey mappingsSet up "MacOS shortcuts โŒ˜โ†, โŒ˜โ†’ and โŒฅโ†, โŒฅโ†’" from Sourabh
Profiles(For each): Working directoryReuse previous session's directory
Profiles(For each): Key mappingRemove โŒฅโ† and โŒฅโ†’
Profiles(For each): Text: Font: Change fontFira Code; Regular; 12pt; 120% vertical character spacing
Profiles(For each): Text: Font: Use ligaturesYup
Dedicated hotkey window:
SettingValue
Hotkeyยง
Pin hotkey windowYup
Animate showing and hidingNope
Floating windowYup

CLI tools

  • terraform
  • packer
  • mercurial
  • git
  • docker
  • docker-compose
  • google-cloud-sdk
    • Then authenticate with gcloud auth login
  • php
  • go
  • hugo
brew install docker docker-compose git go hugo mercurial packer php terraform

brew cask install google-cloud-sql docker

The rest

  • Google Chrome
    • Set up work and personal profile
    • Keep in Dock
  • 1Password
    • And Google Chrome extension, once set up
  • Slack
  • Sequel Pro
    • Nightly. The mainline hasn't had an update in years, but the nightly version has all the juiciness needed for Mojave
  • Skype
  • Visual Studio Code
    • (todo: extensions)
  • PhpStorm
    • (todo: fonts and whatnots)
  • Itsycal (menu bar calendar, like on Windows)
    • Use outline icon
    • Show day of week in icon
    • Show month in icon
  • Pock (Show Dock icons in touch bar)
  • Arq (backups)
brew cask install 1password arq google-chrome homebrew/cask-versions/sequel-pro-nightly itsycal phpstorm pock skype slack visual-studio-code

Environment