cover.png
Тема оформления Hyprland

Это первая статья из серии статей про конфигурацию Hyprland. В ней я расскажу, как настроил тему оформления, а именно внешний вид окон, виджетов, а также курсор и иконки.

Я предпочитаю светлые темы, поэтому выбирал только среди таких. Курсор выбирал, чтобы контрастировал с остальным интерфейсом, соответственно был тёмным. Иконки же выбирал на основе популярности и просто чтобы понравилось.

Далее распишу подробнее про каждый элемент.

Внешний вид окон и виджетов

Как следует из официальной вики, понадобилось отдельно настроить темы для GTK и Qt:

Since this is not a fully-fledged Desktop Environment, you will need to use tools such as lxappearance and nwg-look (recommended) for GTK, and qt5ct / qt6ct for their respective Qt versions. Some older applications may also require qt4ct.

GTK

Темы для GTK можно найти на gnome-look.org в разделе «GTK3/4 Themes». Я остановился на теме Fluent . У неё есть большое количество стилей, включая светлый. Установить эту тему из AUR можно командой yay -S fluent-gtk-theme.

Для того, чтобы указать в Hyprland тему GTK, я использовал переменную окружения GTK_THEME со значением Fluent-Light. Для этого необходимо добавить в файл ~/.config/hypr/hyprland.conf следующую строку:

env = GTK_THEME,Fluent-Light

В целом на этом настройка GTK закончена. Для применения изменений нужно перезапустить окружение.

Qt

Внешний вид Qt-приложений можно настроить через переменную окружения QT_QPA_PLATFORMTHEME. В качестве значения можно передать gtk3, чтобы использовать тему GTK. Я решил так и поступить и добавил в файл ~/.config/hypr/hyprland.conf:

env = QT_QPA_PLATFORMTHEME,gtk3

Дополнительно

Следуя рекомендациям из официальной документации Hyprland также добавил переменные окружения для Qt:

env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_QPA_PLATFORM,wayland;xcb
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1

Курсор

Hyprland поддерживает свой формат курсоров, который называется hyprcursor . Этот формат был создан вместо XCursor, чтобы решить недостатки последнего. Однако стоит учесть, что в Xwayland курсоры будут отображаться в формате XCursor. Поэтому нужно выбрать такую тему, для которой есть и XCursor-версия, и hyprcursor-версия.

Курсоры в XCursor-формате можно найти без проблем, так как это формат по умолчанию. Например все темы на gnome-look.org скачиваются именно в этом формате. Для hyprcursor же искал тему в официальном Discord-канале #hyprcursor-themes. Изучив канал, остановился на BreezeX_Cursor .

Установить эту тему в XCursor-формате можно следующей командой yay -S breezex-cursor-theme. Для hyprcursor скачать архив можно либо из Discord-канала , либо с моего сайта . Распаковав архив в директорию ~/.local/share/icons, получил установленную тему курсоров.

В файле ~/.config/hypr/hyprland.conf добавил следующие переменные окружения:

env = HYPRCURSOR_SIZE,28
env = HYPRCURSOR_THEME,BreezeX-Dark-hyprcursor
env = XCURSOR_SIZE,28
env = XCURSOR_THEME,BreezeX-Dark

А также выполнил команду из документации:

$ gsettings set org.gnome.desktop.interface cursor-theme 'BreezeX-Dark'

Иконки

Наборы иконок так же, как и остальное, искал на gnome-look.org . Выбирал между, пожалуй, самой популярной темой Papirus и  Qogir . Остановился на второй. На мой взгляд, она больше подходит под выбранное оформление окон и виджетов.

Я использую EndeavourOS, поэтому иконки Qogir уже были установлены вместе с пакетом endeavouros/eos-qogir-icons. В Arch Linux же пакет называется qogir-icon-theme.

Указал иконки через gsettings:

$ gsettings set org.gnome.desktop.interface icon-theme 'Qogir'

Благодаря QT_QPA_PLATFORMTHEME=gtk3, которую я добавил в разделе Qt, для Qt-приложений также используется тема иконок Qogir.

Шрифты

В качестве шрифта выбрал Noto Sans Regular. Указать его можно через nwg-look, про который написал ниже.

nwg-look

nwg-look  — это утилита для настройки GTK. С помощью неё можно задать внешний вид, цвета, курсор, шрифты, а также темы иконок. Напомню, что Qt настроил так, чтобы использовалась тема GTK.

nwg-look при открытии подставляет свои сохранённые значения, а не берёт их из конфига GTK. Это означает, что при сохранении настроек в nwg-look они перетрут всё, что мы настраивали до этого вручную. Поэтому я задал дополнительно все те настройки, которые указывал до этого, также и в nwg-look:

Widget theme: Fluent-Light
Default font: NotoSans Nerd Font Regular 12
Icon theme: Qogir
Mouse cursor: BreezeX-Dark
Cursor size: 28

Заключение

Следуя шагам из статьи можно получить красивое окружение в Hyprland. Конечно, не обязательно использовать те же темы, но общий подход остаётся таким же. Возможно в будущем я что-то поменяю, поэтому даю ссылку на свои конфиги в репозитории . В следующих статьях расскажу как настроил остальные элементы окружения.

Copyright 2025. All rights reserved.

Привет, друг! Coding Overhead — это мой личный блог о современных технологиях и полезных утилитах.