Table of Contents

Introduction

HyprL offers extensive theming capabilities to personalize your desktop environment. You can change the appearance of your Waybar, window decorations, and overall color scheme to match your preferences.

Waybar Themes

Waybar, the highly customizable status bar, comes with several pre-configured themes in HyprL. These themes change the layout, colors, and styling of your bar.

Switching Waybar Themes

You can easily switch Waybar themes using the hyprL-config interactive tool:

  1. Open a terminal and run hyprL-config.
  2. Select 1. 🎨 Theme Management.
  3. Select 1. Switch Waybar Theme.
  4. Choose from the list of available themes.

Alternatively, you can use the themeswitcher.sh script directly:

~/.config/waybar/themeswitcher.sh

This script will present a Rofi menu to select your desired theme. The selected theme is then saved in ~/.config/hyprL/settings/waybar-theme.sh and Waybar is restarted.

Waybar Theme Structure

Each Waybar theme is located in ~/.config/waybar/themes/ and typically contains:

  • config: The Waybar configuration file for that theme.
  • style.css: The CSS file defining the visual styles.
  • config.sh: A script that might set theme-specific variables or actions.

Window Decorations

Window decorations control the appearance of your windows, including rounding, shadows, and blur effects. HyprL provides several presets for these.

Applying Decoration Presets

You can change window decorations using the hyprL-config tool:

  1. Open a terminal and run hyprL-config.
  2. Select 1. 🎨 Theme Management.
  3. Select 2. Change Window Decorations.
  4. Choose from the available presets.

These presets modify the decoration section in your ~/.config/hypr/hyprland.conf by sourcing different files from ~/.config/hypr/conf/decorations/.

For example, the default.conf for decorations might look like this:

decoration {
    rounding = 20
    active_opacity = 1.0
    inactive_opacity = 0.8
    fullscreen_opacity = 1.0

    blur {
        enabled = true
        size = 6
        passes = 2
        new_optimizations = on
        ignore_opacity = true
        xray = true
    }

    shadow {
        enabled = true
        range = 30
        render_power = 3
        color = 0x66000000
    }
}

Customizing Decorations

To create your own decoration style, you can copy an existing preset from ~/.config/hypr/conf/decorations/, modify it, and then update your hyprland.conf to source your new file.

Color Schemes

HyprL integrates with tools like Pywal and Matugen to dynamically generate and apply color schemes based on your wallpaper.

Pywal Integration

Pywal generates a color palette from your wallpaper and applies it system-wide. HyprL uses this to set colors in ~/.config/hypr/colors.conf which is then sourced by hyprland.conf.

Example of colors.conf generated by Pywal:

$background = rgba(0e1415ff)
$primary = rgba(81d3e0ff)
# ... other colors

Matugen Integration

Matugen is used to generate Material Design 3 color palettes. HyprL uses Matugen templates (e.g., ~/.config/matugen/templates/hyprland-colors.conf) to apply these generated colors to various components.

This allows for a cohesive and dynamic theming experience across your HyprL desktop.