Создание тем
Здесь мы шаг за шагом проведем вас через процесс создания тем для HyDE. Это руководство подойдет как для hyprdots, так и для HyDE.
Краткое руководство
Заголовок раздела «Краткое руководство»Клонируйте репозиторий hyde-theme-starter в ваш каталог с темами.
git clone https://github.com/richen604/hyde-theme-starter ~/MyTheme-
Обязательные компоненты - все должны быть в формате
tar.*:- Тема GTK (обязательно)
- ищите существующие темы на Gnome-Look Themes
- или смотрите Generate GTK4 для генерации темы GTK из обоев
- Набор иконок (необязательно) - по умолчанию используется Tela-circle
- ищите существующие наборы иконок на Gnome-Look Icons
- Тема курсора (необязательно) - по умолчанию используется Bibata-Modern-Ice
- ищите существующие темы курсоров на Gnome-Look Cursors
- Шрифт (необязательно)
- ищите веб-шрифты на fonts.google.com
- ищите пропатченные шрифты для разработчиков на nerdfonts.com
- Тема GTK (обязательно)
-
Коллекция обоев, которые соответствуют вашему желаемому стилю/цветовой схеме
- Wallhaven - для обоев
- farbenfroh.io - для обоев, подходящих по цвету, если у вас есть желаемая цветовая схема
- Не добавляйте слишком много обоев, 8-10 - хорошее количество
-
Установите
justдля запуска вспомогательных скриптовyay -S just
Перейдите в каталог вашей темы cd ~/MyTheme (замените MyTheme на название вашей темы)
theme = "MyTheme"Запустите just init для создания начальной структуры каталогов
Ваша тема должна иметь следующую структуру:
~/MyTheme/├── Config/ # Часть вашей финальной темы - Файлы конфигурации│ └── hyde/│ └── themes/│ └── MyTheme/ # основной каталог темы│ └── wallpapers/├── refs/ # для генерируемых нами справочных файлов├── screenshots/ # для скриншотов вашей темы├── Source/ # Часть вашей финальной темы - Архивы, т.е. gtk, курсор, иконки, шрифт│ └── arcs/├── .gitignore├── justfile # для запуска вспомогательных скриптов└── README.md # ссылки на эту веб-страницуАрхивы (Arcs)
Заголовок раздела «Архивы (Arcs)»Архивы (Arcs) - это компоненты темы GTK, иконок, курсора и шрифтов, которые составляют части вашей темы.
Давайте сразу добавим их в каталог Source/arcs, чтобы они были готовы к тестированию.
Структура вашей папки должна выглядеть примерно так:
~/MyTheme/├── Source/│ └── arcs/│ ├── Gtk_<Ваша-GTK-Тема>.tar.*│ ├── Cursor_<Ваша-Тема-Курсора>.tar.*│ └── Icon_<Ваша-Тема-Иконок>.tar.*│ └── Font_<Название-Вашего-Шрифта>.tar.*Убедитесь, что используете правильный префикс для каждого архива. Например, Gtk_<Ваша-GTK-Тема>.tar.*
Просмотр вашей темы с помощью Wallbash
Заголовок раздела «Просмотр вашей темы с помощью Wallbash»Скопируйте ваши обои в каталог вашей темы
cp -r ~/wallpapers ~/MyTheme/Config/.config/hyde/themes/MyTheme/wallpapersПерейдите в каталог вашей темы
cd ~/MyThemeустановите вашу тему
just installТестирование вашей темы с помощью wallbash
Заголовок раздела «Тестирование вашей темы с помощью wallbash»Есть два способа инициализировать вашу тему: из wallbash или из существующей темы.
В этом руководстве мы будем использовать wallbash, так как это дает хорошее понимание того, как wallbash генерирует цвета для вашей темы. Вы можете узнать больше о wallbash здесь.
Откройте Wallbash, установив автоматический, темный или светлый режим (Meta + Shift + R).
Установите выбранные вами обои в качестве текущих (Meta + Shift + W)
Понаблюдайте, как wallbash адаптирует цвета к вашим обоям для следующих приложений:
- GTK (nwg-look)
- чтобы протестировать вашу архивную тему gtk, переключитесь из режима wallbash в режим темы (Meta + Shift + R)
- затем проверьте
pavucontrol, чтобы увидеть, не выглядит ли ваша тема gtk странно. если да, следуйте инструкциям в Generate GTK4 для генерации файлов темы GTK4 с помощью wallbash
- Kitty (kitty)
- QT (qt5ct + qt6ct)
- Waybar (waybar)
- Spotify (spotify)
- VSCode (code) - требуется, чтобы wallbash был включен в качестве цветовой темы
- Cava (cava)
Генерация файлов темы
Заголовок раздела «Генерация файлов темы»Убедитесь, что выбранные вами обои - лучшие, для которых wallbash генерирует вашу тему.
Теперь выполните следующие команды для генерации файлов wallbash.
just gen-alljust set-wallВы увидите кучу новых файлов в каталоге refs вашей темы.
~/MyTheme/├── refs/ # для генерируемых нами справочных файлов│ ├── gtk-4.0/ # Файлы темы GTK4│ │ ├── gtk.css # Светлая тема│ │ └── gtk-dark.css # Темная тема│ ├── kvantum/ # Файлы темы Kvantum│ │ ├── kvantum.theme # Конфигурация темы Kvantum│ │ └── kvconfig.theme # Конфигурация Kvantum│ ├── hypr.theme # Тема Hyprland│ ├── kitty.theme # Тема терминала Kitty│ ├── rofi.theme # Тема Rofi│ ├── theme.dcol # переопределения для режима "темы" wallbash│ └── waybar.theme # Тема Waybar│ └── wall.set # Первые обои, которые использует темаВы можете скопировать все файлы в ваш каталог Config/.config/hyde/themes/MyTheme.
cp -r ./refs/* ./Config/.config/hyde/themes/MyThemeзапустите установку еще раз, чтобы обновить вашу тему
just installЭти файлы используются для установки режима “темы” для вашей темы. (Meta + Shift + R)
Редактирование файлов *.theme
Заголовок раздела «Редактирование файлов *.theme»Эти файлы важны для правильной работы тем.
Вам следует сверяться с темой, такой как Bad Blood, в ходе этого руководства.
Каждый файл *.theme содержит строки конфигурации
Первая строка имеет формат: путь_к_файлу | команда_для_выполнения
- hypr.theme -
$HOME/.config/hypr/themes/theme.conf|> $HOME/.config/hypr/themes/colors.conf - kitty.theme -
$HOME/.config/kitty/theme.conf|killall -SIGUSR1 kitty - rofi.theme -
$HOME/.config/rofi/theme.rasi - waybar.theme -
$HOME/.config/waybar/theme.css|${scrDir}/wbarconfgen.sh
самый важный файл - hypr.theme
$HOME/.config/hypr/themes/theme.conf|> $HOME/.config/hypr/themes/colors.conf# ~/.config/hypr/theme/theme.conf - это автоматически сгенерированный файл. Не редактируйте.
$GTK_THEME=Bad-Blood # имя папки внутри `Source/arcs/Gtk_<Ваша-GTK-Тема>.tar.*`$ICON_THEME=besgnulinux-mono-red # имя папки внутри `Source/arcs/Icon_<Ваша-Тема-Иконок>.tar.*`$COLOR_SCHEME=prefer-dark # prefer-dark, prefer-light, или auto$CURSOR_THEME=Night-Diamond-Red # имя папки внутри `Source/arcs/Cursor_<Ваша-Тема-Курсора>.tar.*`$CURSOR_SIZE=30 # размер курсора в пикселях```- Отредактируйте переменные для архивов, они должны совпадать с названием папки внутри каждого архива в
Source/arcs, как указано выше - Установите рамки, цвета и другие настройки, связанные с темой Hyprland
- Вы можете использовать hypr.theme для настройки дополнительных программ для вашей темы, таких как SDDM или тема Vscode
- Становится
$HOME/.config/hypr/themes/theme.conf
Любые обновления вашей темы в Config или Source должны быть применены с помощью just install для обновления вашей темы.
Редактирование theme.dcol
Заголовок раздела «Редактирование theme.dcol»Файл theme.dcol используется для переопределения некоторых сгенерированных цветов wallbash для режимов wallbash.
Ознакомьтесь с пониманием wallbash для получения дополнительной информации.
Этот файл полностью необязателен
Завершение вашей темы
Заголовок раздела «Завершение вашей темы»Ваша тема теперь должна быть готова к добавлению в hyde-gallery!
Еще несколько последних штрихов:
- Добавьте несколько скриншотов в
~/screenshots - Добавьте вашу тему в Hyde-Gallery
Добавление тем в Hyde-Gallery
Заголовок раздела «Добавление тем в Hyde-Gallery»В каталоге вашей темы сгенерируйте readme с помощью
python3 generate_readme.pyИнициализируйте git
git init && git branch -M main && git add . && git commit -m "My first HyDE theme"создайте репозиторий на github
git remote add origin <your-repo-url>git push -u origin mainСделайте форк hyde-gallery https://github.com/HyDE-Project/hyde-gallery
Добавьте вашу тему в список и в hyde-themes.json
Дополнительная информация
Заголовок раздела «Дополнительная информация»Сгенерировать GTK4 из wallbash
Заголовок раздела «Сгенерировать GTK4 из wallbash»Если ваша тема не включает поддержку GTK4, pavucont1rol и другие приложения GTK4 могут отображаться с простой белой темой.
Выполните следующую команду для генерации файлов темы GTK4
just gen-gtk4Скопируйте каталог refs/gtk-4.0 в каталог вашей темы
mkdir -p ./Config/.config/hyde/themes/MyTheme/gtk-4.0cp -r ./refs/gtk-4.0/* ./Config/.config/hyde/themes/MyTheme/gtk-4.0/Понимание wallbash
Заголовок раздела «Понимание wallbash»Wallbash генерирует 4 основных цвета из ваших обоев, затем создает цветовые группы вокруг каждого основного цвета со следующей структурой:
Для каждого основного цвета (wallbash_pry1 до wallbash_pry4):
- Цвет текста (
wallbash_txt1доwallbash_txt4) - Цвет текста (
wallbash_1xa1доwallbash_1xa9для группы 1 и т.д.)
Каждый цвет имеет вариант RGBA с настраиваемой непрозрачностью (например, wallbash_pry1_rgba(0.95))
Всего: 44 базовых цвета (4 группы × 11 цветов) плюс варианты RGBA
Используйте just gen-dcol для генерации theme.dcol со всеми сгенерированными wallbash цветами для ваших активных обоев для справки