My MacOS Dev Setup

 MacOS Dev Setup

These are the steps I use to setup a new MacOS machine, so that it has all the stuff that I use for software development.

New Machine First Steps

Start the new machine and create an account. Make sure you have your full name and the name of the account the way you would like.

Machine Startup

Sign into Apple ID, so that you have access to the store and iCloud.

1password

  • Install 1password from 1password.com this where you can find the latest version as it is no longer on the App Store.
  • Install the safari extension from the App Store.
Open 1Password
Settings>General>Default Vault
Settings>Security>Unlock>Apple Watch
Settings>Developer>Setup the SSH Agent

Safari

Settings>Autofill> uncheck everything

System Settings

General>AutoFill & Passwords> (turn off autofill)
General>About>Name (set your computer name)
General>Software Update>Schedule Updates (so they run tonight)
Trackpad>Point & Click>Tap to click
Keyboard>Delay until repeat (one away from short)
Accessibility>Zoom>Use scroll gesture with modifier keys to zoom
Accessibility>Pointer Control>Trackpad Options>Use trackpad for dragging
Accessibility>Pointer Control>Trackpad Options>Dragging style>Three Finger Drag
Desktop & Dock>Click wallpaper to reveal desktop>Only in Stage Manager
Internet Accounts>Add personal and work accounts
[Your Name] > iCloud > iCloud Drive and turn on "Desktop & Documents Folders"

Finder Window View

Open a finder window
View>show path bar

Messages

Start Messages
Settings>iMessage>Enable Messages in iCloud

Terminal

Settings>General>On startup, open new window with profile Basic
Settings>Profiles>Shell>When the shell exits:>Close if the shell exited cleanly
Create a directory for software development projects
mkdir ~/src
If the hostname of your machine is not displaying properly in the terminal you wil have to run this command from the terminal:
sudo scutil --set HostName YourComputerName

Install Apple Productivity

pages, numbers, keynote

Xcode

Install Xcode
Xcode is required for several tools. I usually just install Xcode from the app store, then open a terminal and issue the following command to install the command line tools:
xcode-select --install

FileMerge

Add the built in FileMerge.app to your dock.

vim

To add line numbers and a right hand margin to vi, you need to first create a .vimrc file

vi .vimrc

Then add the following lines to the file

set number
set colorcolumn=80

Homebrew

Homebrew is the de-facto package manager for MacOS. Just follow the simple installation instruction on the website.

Git

Use homebrew to install git:
brew install git

oh my zsh

MacOS uses z shell by default. When using the terminal, I like to have a customized interface that gives me feedback on the status of my git repo, which version of python is active, which virtual environment is active, etc.
OMZ or oh my zsh is an open source project that allows for infinite customization.
 
oh my zsh
See my oh my zsh setup for instructions on how I set up my terminal. 

UV

🚀 A single tool to replace pip, pip-tools, pipx, poetry, pyenv, twine, virtualenv, and more.
https://docs.astral.sh/uv/
brew install uv

Ruff

uv tool install ruff

JetBrains Toolbox App

JetBrains makes some great development tools some free, some for a price. My favorite JetBrains tools are PyCharm and DataGrip. To easily manage my tools and projects I always install the JetBrains toolbox first.
Once the JetBrains Toolbox is installed, I use the toolbox to install the other tools I need. Toolbox keeps all my apps up to date.
Download the toolbox app here: https://www.jetbrains.com/toolbox-app/

PyCharm

Use toolbox to install PyCharm Community Edition

Sublime Text

IDEs are great and all, but sometimes all you need is a good text editor. Sublime is my choice. 
Download it here: https://www.sublimetext.com/

GitHub Desktop

Install the GitHub Desktop GUI
Configuration
Settings>Integrations>External Editor>PyCharm
Settings>Git>email>work email address
GitHub Desktop>Install Command Line Tool... (this instals the github cli command see github --help)

GitHub CLI

brew install gh

Krisp

Install Microsoft Windows.app

The windows app is a Remote Desktop client.

Install Dropbox

Install Windsurf

Open WindSurf
Windsurf>Settings>Editor Settings>Commonly Used>Files: Auto Save>afterDelay
Windsurf>Settings>Editor Settings>Commonly Used>Editor: Font Family>MesloLGS NF

Install iStats

Install Notion

Install Cyberduck