Getting Started With ZSH for MacOS

14303 VIEWS

· · ·

In this tutorial I’ll walk you through setting up your terminal using zshell or ZSH as it can also be called. You can customize your terminal configuration via your zshrc file. In customizing your terminal through zsh themes, you will add value to your day-to-day life as an engineer. Knowing how to use zsh will make you feel like a wizard with all the shortcuts and options available to you to make your experience with the command line as seamless, easy and fun as possible.  

Install Homebrew

For this tutorial I will be writing this for macOS users. Before we jump into setting up ZSH you will need to have a few things installed first. If you haven’t already, I recommend installing and using Homebrew to begin. Homebrew is a package manager designed specifically for macOS or Linux shell prompt. Homebrew is the most widely used package manager for macOS, having homebrew installed will not only help you in this tutorial but will make installing most applications a breeze. You can install homebrew on your Mac by running this command in your terminal. 

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

If you’d like to learn more about Homebrew, you can read more about that here.

Using Homebrew, you can now install iTerm2 very easily.

Install iTerm2

iTerms2 is an alternative to Apple’s default terminal application. The application has a lot of features to allow you to move quickly through the terminal. They have documented their feature list here

Using Homebrew, you can install iterm2 with the following command:

brew install --cask iterm2

ZSH for MacOS

You can read more about the homebrew formulae for iterm2 ​​here.

Install ZSH

Now that you have iterm2 installed, we can install ZSH using homebrew in our new terminal with the following command: 

brew install zsh

ZSH for MacOS

You can run the following command to see the list of all formulae you have installed from homebrew:

brew list

ZSH for MacOS

To learn more about the zsh open source project, you can check it out on Github.

Now that we have zsh installed via homebrew we want to find ways to customize this so we can make this our own. The way to do that is to edit the .zshrc file. This file is stored in the /etc/zshrc directory on your computer. Here you will find all of your configuration files for your computer. I attached a screenshot of my /etc directory so you can see for yourself. I ran 

cd /etc

followed by 

ls

ZSH for MacOS

Now that you know where your configuration file is, we can move onto customizing your zsh configuration.

Customize your ZSH

Customization for ZSH can happen through changes made to the rc file. I’ll showcase my .zshrc file and show how to source the file after making changes.

If you follow the steps above and are in the /etc directory you will see the zshrc file. From there, you can choose your favorite text editor, whether that be nano or vim, I’ll use vim for my example below: 

vi ~/.zshrc

You will then see a file pop-up that looks like this: 


The first customization option you will find is the `zsh_theme`, there are currently 150 zsh themes to choose from. Here’s a list of zsh themes available to you at zsh themes.

The powerlevel10 theme is very customizable that’s why I enjoy using this theme so much. After updating your zshrc file with the theme and sourcing the file like so : 

ZSH_THEME=”powerlevel10k/powerlevel10k”

Save and then exit vim, then source the file:

source ~/.zshrc

You can now type p10k configure, you will see prompts like so that allow you to choose icons for your shell via the configuration wizard. Check out some of the screenshots below to see what options you have available to you: 

The wizard prompt starts with ensuring it is compatible with your system and will ask you to confirm if the icons appear correctly for your system.

After a few questions regarding compatibility, then you get to choose which prompt style you prefer from some selections.

Some of those options are outlined below: 

This zsh theme comes with the option to add icons to your prompt, allowing you to easily see where you are in the terminal at any given time, and you can view your github branch name directly from the prompt. You will always know where you are in your terminal, and where you are located via github or other tools you may use.

At the very end of the configuration wizard setup, you will want to type “y” into the prompt to overwrite the existing configuration so save the settings you just set.

Conclusion

You have now installed ZSH and added a popular theme to your terminal. Play around and have fun, there’s still a lot more that you can do with ZSH, but for now you have a great starting point for easily navigating your terminal. 


Alicia Luciano is a Platform Infrastructure Engineer with 6 years experience in technology. She has worked with databases as a DBA at a large-scale organization, focusing on ML to predict growth trends for capacity planning strategies. She then dove into SRE type work as an Infrastructure engineer at several startups throughout the Colorado area, where she focuses heavily on monitoring and creating SLIs,SLOs and SLAs for micro-service systems.


Discussion

Leave a Comment

Your email address will not be published. Required fields are marked *

Menu
Skip to toolbar