Подробный гайд по кастомизации тем в GNOME (User Themes & Alternatives)
GNOME разделяет оформление на 4 независимых слоя:
- Приложения (GTK3/GTK4)
- Оболочка (GNOME Shell) – верхняя панель, меню, уведомления, Activities
- Иконки
- Курсоры
Каждый слой настраивается отдельно. В этом гайде разберём установку, применение и решение проблем.
1. Подготовка: установка необходимых инструментов
Пакеты
| Дистрибутив | Команда |
|---|---|
| Ubuntu/Debian | sudo apt install gnome-tweaks gnome-shell-extensions |
| Fedora | sudo dnf install gnome-tweaks gnome-extensions-app |
| Arch/Manjaro | sudo pacman -S gnome-tweaks gnome-shell-extensions |
| openSUSE | sudo zypper install gnome-tweaks gnome-shell-extensions |
Менеджер расширений (рекомендуется вместо браузерного плагина)
# Flatpak (универсальный, актуальный)
flatpak install flathub com.mattjakeman.ExtensionManager
# Или из репозиториев дистрибутива (названия могут отличаться)
sudo apt install extension-manager # Debian/Ubuntu
sudo dnf install gnome-extensions-manager # Fedora
2. Включение расширения User Themes
Без него GNOME Shell не позволяет менять тему оболочки.
- Откройте Extension Manager (или перейдите на extensions.gnome.org)
- Найдите и установите User Themes
- Включите переключатель
- Проверьте в
gnome-tweaks→ Внешний вид → должна появиться строка Тема оболочки
Альтернативы: Если User Themes конфликтует с новой версией GNOME, можно использовать:
Blur My Shell(частично заменяет оформление)Just Perfection(тонкая настройка UI)- Кастомные сборки вроде
Arc/WhiteSurс встроенными патчами
3. Где хранить темы
| Путь | Назначение |
|---|---|
~/.local/share/themes/ |
Рекомендуемый (XDG-совместимый, только для вашего пользователя) |
~/.themes/ |
Устаревший, но всё ещё работает |
/usr/share/themes/ |
Системный (требует sudo, применяется ко всем пользователям) |
Структура корректной папки темы:
~/.local/share/themes/НазваниеТемы/
├── gnome-shell/ # файлы оболочки (CSS, изображения)
├── gtk-3.0/ # стили для GTK3
├── gtk-4.0/ # стили для GTK4 (опционально)
└── index.theme # мета-файл темы
4. Установка тем
Ручная установка (самый надёжный способ)
- Скачайте тему с gnome-look.org (категории: GTK3 Themes, Shell Themes, Icon Themes)
2. Распакуйте архив:
tar -xf Тема.tar.xz -C ~/.local/share/themes/
- Убедитесь, что внутри нет вложенной папки с тем же именем (должно быть
~/.local/share/themes/Тема/gnome-shell/, а неТема/Тема/...)
Автоматизированные менеджеры
| Инструмент | Описание |
|---|---|
Themix (бывший Oomox) |
Генератор тем, поддержка GTK/Shell/Icons |
plank / yaru-colors |
Готовые сборки от сообщества |
gnome-tweaks |
Не качает темы, но применяет установленные |
5. Применение тем
- Откройте Доп. настройки GNOME (
gnome-tweaks) - Перейдите в раздел Внешний вид
3. Выберите:
- Приложения → GTK-тема
- Оболочка → Shell-тема
- Иконки → Набор иконок
- Курсор → Тема курсора
- Изменения применяются мгновенно (иногда требуется перезапуск сессии)
Перезапуск оболочки:
- X11:
Alt + F2→ введитеr→Enter
- Wayland: выход и вход в систему, либо:
busctl --user call org.gnome.Shell /org/gnome/Shell org.gnome.Shell Eval 'Meta.restart("Restarting...")'
6. Важные ограничения и современные реалии (2024–2026)
| Проблема | Решение |
|---|---|
| GTK4 / libadwaita приложения игнорируют темы | Установите adw-gtk3 или используйте GTK_THEME=Adwaita:dark в .bashrc. |
| Тема оболочки "ломается" после обновления GNOME | GNOME 45+ изменил CSS-классы. Качайте темы с пометкой GNOME 45+ или 46/47. Проверяйте gnome-shell --version |
| Расширения отключаются после входа | Включите gnome-tweaks → Расширения → разрешите запуск в фоновом режиме. Или используйте Extension Manager для авто-включения |
| Темы не применяются в Wayland | Некоторые темы используют X11-специфичные CSS-селекторы. Ищите версии с пометкой Wayland-compatible |
7. Диагностика и восстановление
Логи оболочки
journalctl -f /usr/bin/gnome-shell
Ищите строки с CSS parsing failed, extension error, theme not found.
Сброс темы оболочки
gsettings reset org.gnome.shell.extensions.user-theme name
gnome-extensions disable user-theme@gnome-shell-extensions.gcampax.github.com
gnome-extensions enable user-theme@gnome-shell-extensions.gcampax.github.com
Проверка целостности темы
# Проверка наличия index.theme
ls ~/.local/share/themes/*/index.theme
# Проверка прав
chmod -R 755 ~/.local/share/themes/
8. Проверенные источники тем
| Ресурс | Описание |
|---|---|
| gnome-look.org - gnome-look.org | Крупнейший архив, фильтрация по версии GNOME |
| GitHub: Vinceliuice - github.com/vinceliuice | WhiteSur, Orchis, Fluent, Graphite |
| GitHub: yuru7 - github.com/yuru7 | Catppuccin, Nordic, Dracula |
| GitHub: EliverLara - github.com/EliverLara | Sweet, Candy, Adapta |
Правило безопасности:
Никогда не запускайте install.sh от root без проверки содержимого. Предпочитайте ручную распапку или Flatpak-менеджеры.
9. Чек-лист перед установкой
- [ ] Версия GNOME:
gnome-shell --version - [ ] Сессия: X11 или Wayland? (
echo $XDG_SESSION_TYPE) - [ ] Установлен
gnome-tweaksиExtension Manager - [ ] Включено расширение
User Themes - [ ] Тема распакована в
~/.local/share/themes/без вложенных папок - [ ] Проверена совместимость с вашей версией GNOME
- [ ] Есть резервная копия
~/.config/gtk-4.0/и~/.local/share/themes/
Бонус: автоматическое переключение тем (светлая/тёмная)
# Включение автопереключения через gsettings
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' # или 'prefer-light'
# Скрипт для привязки к времени суток (добавить в cron или systemd timer)
if [[ $(date +%H) -ge 19 || $(date +%H) -le 6 ]]; then
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
gsettings set org.gnome.shell.extensions.user-theme name 'НазваниеТёмной'
else
gsettings set org.gnome.desktop.interface color-scheme 'prefer-light'
gsettings set org.gnome.shell.extensions.user-theme name 'НазваниеСветлой'
fi
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.