My Setup for a new Mac

Discover the must-have apps, CLI tools, and SDK managers for setting up a new Mac.

“My Setup for a new Mac

One of my favorite experiences as a software techie geek, is setting up a new Mac when I get one. While I have a few standard tools I install, I enjoy using the time to explore and try different tools and apps. I decided to write about the experience this time.

My Standard Mac Apps

These are the tools I install on any new Mac, without even thinking about it.

  • 1Password
    • I have used 1Password for years. On this mac I am also going to try out LastPass
  • iTerm
    • The defacto standard terminal IMO
  • Raycast
    • I love this as a launcher and use it heavily for things like GitHub and Jira
  • Spark
    • About the only email client I’ve found that I can tolerate
  • Docker
  • IntelliJ IDEA
    • IDEA is my normal IDE, however I am learning to like VSCode as well
  • VSCode
    • This is an exploratory IDE for me, switching IDE’s is a long process for me
  • Chrome
  • Slack

My CLI Tools

Once I have iTerm installed, its time to ensure all my CLI tools are installed. This starts, for me, with installing Homebrew and Oh-my-zsh. Once I have these, I will start my first exploration exercise. For sure I’ll install all of these:

brew install gh, plantuml, kubectx, kubectl, helm, httpie, jq, fzf

And ensure I have these plugins for zsh:

plugins=(git 1password brew docker fzf gcloud gh gradle helm httpie iterm2 kubectl kubectx macos vi-mode vscode)


The main technologies I work with for software are Java/Kotlin, Javascript/Node, Go, and Python so first want to ensure I have these installed with their respective SDK managers.

  • sdkman
    • java sdk install java 18-tem
    • kotlin sdk install kotlin 1.6.20
  • nvm
    • Install latest tls for node nvm install node --tls
  • gvm
    • Install latest: gvm install go1.18
  • pyenv
    • python pyenv install 3.10.4