My New Mac Setup 2022

Here's how I set up my new Mac for 2022 or Yet Another New Mac Setup Script (YANMSS).

My New Mac Setup 2022
Photo by Etienne Girardet / Unsplash

Or what I like to call:

Yet Another New Mac Setup Script (YANMSS)

About

This setup script is for modifying some default settings on Mac OS X, installing some of my preferred Terminal tools, and a few applications.

Installation with Curl

To install this script from a brand new Mac (fresh out of the box!) run the following command in terminal with no additional tools or permissions needed:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/mikeprivette/yanmss/master/setup.sh)"

Want to know what "curl -fsSL" stands for? Check out this link.

If you do not already have Xcode Command Line Tools installed, you will be prompted to install them after being prompted for sudo access.

Why ask for sudo access?

You'll need sudo access to do the initial Finder modifications, but it is not required to install Homebrew or associated packages.

If you're not comfortable allowing this script to prompt you for sudo access, feel free to copy/paste the commands you want out of this script into the Terminal as you see fit.

Mac OS X Modifications

All of the following are commands that you can enter directly into Terminal or let the script run for you.

Modify Finder Preferences

Show Library Folder in Finder

chflags nohidden ~/Library

Show Hidden Files in Finder

defaults write com.apple.finder AppleShowAllFiles YES

Show Path Bar in Finder

defaults write com.apple.finder ShowPathbar -bool true

Show Status Bar in Finder

defaults write com.apple.finder ShowStatusBar -bool true

Terminal Tools

All of the following are commands that you can enter directly into Terminal or let the script run for you.

Install the following terminal tools:

Homebrew

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Update Brew

brew config
brew update
brew upgrade

iTerm2

brew cask install iterm2

oh-my-zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Git

brew install git

Powerline fonts

git clone https://github.com/powerline/fonts.git
cd fonts
sh -c ./install.sh

Ruby

brew install ruby
echo "Adding the brew ruby path to shell config..."
echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >>~/.bash_profile

Nmap

brew install nmap

Speedtest-cli

brew install speedtest_cli

Additional Applications

All of the following are commands that you can enter directly into Terminal or let the script run for you.

Install the following applications:

Alfred

brew cask install --appdir="/Applications" alfred

Visual Studio Code

brew cask install --appdir="/Applications" visual-studio-code

Firefox

brew cask install --appdir="/Applications" firefox

Slack

brew cask install --appdir="/Applications" slack

1Password

brew cask install --appdir="/Applications" 1password

Caffeine (Keeps your screen on)

brew cask install --appdir="/Applications" caffeine

Clean Up

Run the brew cleanup script and remove old or unneeded casks

brew cleanup

Post Script Actions

I have not yet figured out to automate the post script actions for some of these installations, so there are a few more steps to manually complete.

Enable Any Oh My Zsh Plugins

Oh My Zsh comes with a ton of plugins you can take advantage of. Here is the wiki page.

Open your ~/.zshrc file via Terminal

open ~/.zshrc

Find and edit the plugins section to add the ones you want

# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git brew ruby osx)

Set the Oh My Zsh Theme

Open your ~/.zshrc file via Terminal

open ~/.zshrc

Modify the theme. You can find a list of the themes here. I personally like the agnoster theme.

ZSH_THEME="agnoster"

Make sure to save and close the file after editing. You may have quit and reopen iTerm2 for the theme to take effect.

To make the Agnoster theme look the way it does on the wiki page you have to go to:

  • Open iTerm2
  • Select Preferences
  • Click Profile
  • Click Colors
  • Change "Color Presets" to "Solarized Dark"
  • While still in the same window as above, click "Text"
  • Click on the dropdown under Font and select any font with "Powerline" in it. I chose "Meslo LG DZ for Powerline"

Github

Here's the link to the Github repo if you want to fork it or make PRs:

https://github.com/mikeprivette/yanmss

The End

That's all I have folks. I appreciate any feedback and suggestions on how to make this better!