cover image

How to Install and Set Up Terminator + Oh My ZSH! on Ubuntu 23.04

May 23, 2023

@erikaheidi

I've been a fan and loyal user of Oh-my-Zsh! for many years; it makes my shell more useful with little things such as git branch information and smart autocomplete.

For terminal software, I really enjoy using Terminator, because it allows me to spawn several tiled terminals in a single window, with a custom arrangement that can expand and shrink easily.

The combination of Terminator + Oh My ZSH for me is perfect to improve my productivity since it allows me to see more information instantly and organize terminal windows into tiles with a couple clicks.

In this guide, I'll share in detail how I set up my Terminator with Oh My ZSH and the Powerlevel10k theme.

Step 1: Install Terminator

To get started, install Terminator with:

sudo apt install terminator

When the installation is finished, hit the window key and type terminator to open Terminator from the Ubuntu desktop. It will look like this:

Terminator before customization

Let's configure it so it looks nicer. Right-click on the terminal window and open "Preferences" on the menu. Go to the "Profiles" tab to customize the default profile. Later on you can create multiple profiles changing terminal font size and colors, so for instance you can have a "screen" profile for when you need to present content in your terminal.

On the "General" tab, uncheck "Show titlebar":

Terminator disable title bar

Then, go to the "Background" tab and set transparent background with a shade of 0.80:

Terminator background color

After the change, close the preferences window. Your Terminator should now look similar to this:

Terminator with transparent background

To create tiled windows, right-click on the terminal window and select "split horizontally" or "split vertically":

Terminator split

Each new window can be split again, so you have infinite ways to customize the tiles:

Terminator split with 3 tiles

For quick access, pin it to your Dock:

  • hover the mouse to the bottom of the screen to open Dock;
  • right-click the Terminator icon;
  • select "Pin to Dash" to pin it to the Dock.

Terminator pin to Dash / Dock

Step 2: Install Oh-My-Zsh!

First install the dependencies zsh and fonts-powerline to support icons in your terminal:

sudo apt install zsh fonts-powerline

Now you can run download and execute the Oh-my-Zsh installation script.

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

The installation will prompt you to confirm that you want to use zsh as default bash. Confirm to continue. When it finishes, you should get a screen similar to this:

Oh my Zsh installed

You'll need to restart Terminator in order to load the ZSH shell with OMZ.

Step 3: Customize Oh-my-ZSH!

OMZ has several themes that you can install to better customize your terminal, showing useful information based on plugins. Some themes may need additional steps to run properly, such as setting special fonts that support icons or installing dependencies.

To choose a theme, you can have a look at OMZ Themes Section and also the external themes section from their Wiki to choose a theme that you like.

Here are some nice themes to give a try:

  • Agnoster - A real nice theme that comes built-in, so you don't need to install any extras.
  • Jonathan - Another built-in theme that adds useful information to the prompt, with a more minimalist look and feel.
  • AgnosterZak - Based on Agnoster, this theme packs more info into your prompt such as battery life and date/time.
  • Powerlevel10k - Useful theme that shows lots of info in the terminal and has different color themes. This is the theme that I am currently using.

I personally have been using the Agnoster theme for years, but decided to try something a bit more resourceful and the Powerlevel10k theme offers a lot of extras, and it's super easy to configure with their built-in wizard. This is how my terminal looks like now:

Oh my Zsh with Powerlevel10k theme installed

For the built-in themes, you just need to edit your .zshrc and change the ZSH_THEME env var to the name of the theme you want to use. Check the wiki page to see if the theme has special configuration options.

Installing the Powerlevel10k Theme (Optional)

The theme I chose for my new setup is the Powerlevel10k Theme - it's an external theme that requires installation and setup via a friendly CLI wizard tool. Follow these instructions if you want to try it out.

First, install their recommended font. Download the following font files:

Then, go to your Downloads folder, double-click each font and click on the "Install" button to get the font installed to your system.

With the fonts installed, you'll need to update your Terminator profile to use the new font. Right-click on the Terminator window, then access "Preferences" on the menu, and access the "Profiles" tab. With the default profile selected, uncheck the option that says "Use the system fixed width font". Then click on the font select box and choose MesloLGS NF Regular font. You may want to increase the font size, while you're at it. Close the window when you're finished and Terminator should now be using the recommended font for Powerlevel10k.

Changing Terminator font

Next, install Powerlevel10k by cloning it into your OMZ themes folder:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Finally, edit your ~/.zshrc and change your ZSH_THEME to powerlevel10k/powerlevel10k:

#~/.zshrc

ZSH_THEME="powerlevel10k/powerlevel10k"

After that, close and open again Terminator to load the new theme. The first time you run OMZ with the Powerlevel10k theme, a CLI wizard script will guide you through the prompt configuration. You can choose from a wide variety of options and styles, it's very intuitive.

Setting up the Powerlevel10k theme with p10k script

It's worth noting that you can run this configuration wizard again at any time to reconfigure your prompt:

p10k configure

After you're satisfied with your initial prompt setup, there's a few more settings you can change by editing your ~/.p10k.zsh file. This config file has a long list of prompt elements that you can enable and disable, so make sure to check it out and uncomment what you'd like to test.

For instance, I enabled the PHP-related elements, so when I open a git-based PHP project I see the PHP version currently set up within the system:

Prompt elements

Don't forget to close and re-open Terminator to source the changes you made to the ~/.p10k.zsh file.

I hope you have enjoyed this guide - let me know on Twitter which Oh My ZSH! theme is your favorite!

Built by Erika Heidi with Librarian. Back to top

Found an issue? Have suggestions? Join our discussions group on GitHub.