Screen Too Small

This course material requires a larger screen to properly display the terminal and editor interfaces.

Please use a tablet, laptop, or desktop computer for the best learning experience.

You can continue browsing, but the experience will be significantly limited.

3/3
Free Trial: 3 lessons remaining
Unlock Full Access

Transform Your Hyprland Setup into a Cohesive Masterpiece

Estimated time: 5 minutes

In this guide, we’ll walk you through transforming your default Hyprland setup into a beautifully themed environment. We’ll focus on configuring tools like Hyprland, Kitty, Waybar, Starship, and more to create a cohesive look that aligns perfectly with your wallpaper and color scheme.

Prerequisites

Before we begin, it’s important that you have a base Hyprland setup. If you haven’t already set up Hyprland, check out our previous tutorials where we guide you through the installation and basic configuration process.

For this guide, we’ll use a dotfiles repository to manage all configuration files, making it easier to maintain consistency across your system. We’ll use GNU Stow to manage the symlinks and link the configurations to their appropriate directories. Let’s dive in!


Step 1: Install GNU Stow for Dotfile Management

The first step is to install GNU Stow, a useful tool for managing dotfiles through symbolic links.

For Arch Linux (or similar distributions), you can install Stow using yay:

yay -S stow

Once installed, we can use Stow to manage our configuration files.


Step 2: Clone Your Dotfiles Repository

Now that Stow is installed, you can clone our dotfiles repository onto your system:

git clone https://github.com/typecraft-dev/dotfiles ~/dotfiles

This will place all your configuration files in ~/dotfiles. We’ll use Stow to symlink the files to their correct locations.


Step 3: Set Up Your Wallpaper Using Hyprpaper

A beautiful setup starts with a well-chosen wallpaper. Hyprland uses a tool called Hyprpaper to manage wallpapers for different displays.

  1. If Hyprpaper gives you a "config not found" error, we’ll fix this by linking our pre-configured Hyprpaper settings from the dotfiles repo.

Install Hyprpaper:

yay -S hyprpaper

Use Stow to link the configuration files:

cd ~/dotfiles
stow hyprpaper

The Hyprpaper configuration is now symlinked. Launch Hyprpaper:

hyprpaper

You should now see your chosen wallpaper displayed across all monitors.


Step 4: Configure Kitty Terminal

The terminal is where many developers spend most of their time, so it’s essential to have it properly themed. We’ll configure Kitty, Hyprland's default terminal emulator, to match our theme.

Install Kitty if it’s not already installed:

sudo pacman -S kitty

Symlink the Kitty configuration:

stow kitty
  1. Open Kitty, and you’ll see a beautifully themed terminal with transparent backgrounds and matching colors. Our Kitty config includes:
    • A catppuccin color scheme
    • A chosen Nerd Font (we’ll install this in the next step)
    • Background opacity set to 0.9 for that sleek transparent effect.

Step 5: Install and Set a Nerd Font

To make your terminal prompts look even better, we’ll use a Nerd Font, which includes icons and glyphs for an enhanced look.

Install the Caskaydia Cove Nerd Font:

yay -S nerd-fonts-cascadia-code
  1. Once installed, update your Kitty configuration to use this font.
  2. Then update your kitty config to use Caskaydia Cove Nerd Font
  3. Restart Kitty, and you’ll see the improved font with all icons displaying correctly.

Step 6: Set Up Your Prompt with Starship

We’ll now customize our terminal prompt using Starship, a modern and fast prompt written in Rust.

Install Starship:

yay -S starship

Symlink the Starship configuration from your dotfiles:

stow starship

Add Starship to your .bashrc or .zshrc:

# bash
echo 'eval "$(starship init bash)"' >> ~/.bashrc

bash

# zsh
eval "$(starship init zsh)" >> ~/.zshrc

Source your .bashrc (or .zshrc) to apply the changes:

# bash
source ~/.bashrc

#zsh
source ~/.zshrc

Your terminal prompt should now display additional information in a beautifully themed way.


Step 7: Theme Your Waybar

Next, we’ll work on your Waybar, the status bar at the top of your screen.

Kill Waybar:

killall waybar

Remove any previous Waybar configuration:

rm -rf ~/.config/waybar

Stow the Waybar configuration:

stow waybar

Restart Waybar:

waybar &

You now have a clean and beautifully styled Waybar with Catppuccin colors. The Waybar configuration includes modules for workspaces, system stats, and more.


Step 8: Apply a GTK Theme Using NWG Look

For GTK applications (like your file manager), we’ll apply a matching theme.

Install the Catppuccin GTK theme:

yay -S catppuccin-gtk-theme-mocha

Install NWG Look, a tool for managing GTK themes:

yay -S nwg-look

Next, open nwg-look and select the catppuccin theme you want for your GTK apps.

Your GTK applications should now match the overall look of your system.


Step 9: Customize Wofi Application Launcher

Your application launcher, Wofi, also needs theming to match the rest of your setup.

Symlink the Wofi configuration from your dotfiles:

stow wofi
  1. Restart Wofi, and your launcher should now have a consistent look that matches your system theme.

Step 10: Configure Hyprlock for a Themed Lock Screen

Finally, let’s configure Hyprlock for a stylish lock screen.

Remove any existing Hyprlock configuration:

rm -rf ~/.config/hyprlock

Symlink the Hyprlock configuration from our dotfiles:

stow hyprlock

Now, your lock screen will feature a blurred version of your current wallpaper, providing a smooth and cohesive transition when locking and unlocking your system.


Conclusion

You’ve now transformed your Hyprland setup into a beautifully themed environment. From your terminal to your status bar, everything is aligned with a consistent look and feel.

Be sure to join our Discord and share your setup in our #unix-porn channel!

You've completed this lesson!

You completed this lesson less than a minute ago.