# 04. zsh (optional)

If we're going to be spending 100% of our time on this machine in the terminal, we may as well get a decent shell. The next few steps are optional, but I'm not using this default BASH shell anymore. I like the zsh/ohmyzsh setup much better so I'll install that now. You can either follow along or [skip to Step 05](https://pywkt.gitbook.io/shsms/raspberry-pi-1/05.-install-packages)

1. Install zsh with: `sudo apt install zsh`
2. Check everything installed: `zsh --version`
3. Set zsh as the default shell: `chsh -s $(which zsh)`
4. Log out/in: `logout`
5. Go through the setup: I pretty much just set everything to the default

Great, we've got zsh all set up and our terminal looks a little different, that's cool, but now let's add Oh My Zsh

Install by entering `sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"`

Daaaaaaang look at that. Making improvements little by little...

1. I'm going to install a plugin for syntax highlighting

`git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting`

1. We can edit the ohmyzsh config by running `nano ~/.zshrc`
2. I'm going to change the value of `ZSH_THEME` to `cloud`. Because I've been using a modified version of that one for years and I'm just used to it. Feel free to play around with different themes if that's your thing.
3. Where it says `plugins=(git)` I'm going to change it to `plugins=(git sudo zsh-syntax-highlighting)`
4. I'm also going to uncomment the line that says `DISABLE_UNTRACKED_FILES_DIRTY="true"`
5. Save and exit nano: `Ctrl + O`, `Enter`, `Ctrl + X`
6. Might not need to, but I'm going to reboot now. `reboot`
