ZSH is the new shell hottness and like any good tech, people have now made a way to customize it. While this is easier on some platforms more than others, Ubuntu was slightly more complicated to me. As a result, I made some instructions:

First and foremost, make sure everything is up to date and install the prerequisites:

sudo apt-get install build-essential curl file git
sudo apt update
sudo apt upgrade

Install the pre-requisite packages:

sudo apt install zsh
sudo apt-get install powerline fonts-powerline

Clone the oh-my-zsh repo:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Copy & create the ZSH config file:

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

Choose a theme to start with. I started with agnoster:

vi ~/.zshrc

You can change the theme by locating the line:

ZSH_THEME="robbyrussell"

Replace robbyrussell with agnoster and save the file.

Last Step: Change your default shell:

chsh -s /bin/zsh

Logout & log back in to see the fruits of your labor.


Extra Credit

You can get syntax highlighting by installing the following:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git "$HOME/.zsh-syntax-highlighting" --depth 1

Add the script to your .zshrc file:

echo "source $HOME/.zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> "$HOME/.zshrc"

Enjoy and have fun! If you have any questions, feel free to drop me a line.