Template - inpudiy/zmk-guide GitHub Wiki
В этой части мы разберёмся с тем, как подготовить репозиторий, пробежимся по основным файлам и директориям и узнаем, как редактировать и коммитить файлы на GitHub прямо на сайте. Эта часть направлена на абсолютных новичков, и здесь описаны только базовые концепции по использованию гита, а также структура директорий прошивки. Для тех, кому интересна только ZMK, можете скопировать шаблон и сразу перейти к третьему заголовку.
1. Подготавливаем основу
Первым шагом нам нужно склонировать шаблон с уже готовыми основными файлами и настроенной сборкой прошивки. Переходим на страницу репозитория https://github.com/zmkfirmware/unified-zmk-config-template и нажимаем кнопку Use This Template. В выпадающем окне выбираем Create a new repository.
На странице создания репозитория вписываем любое имя и выбираем тип приватности — закрытый или открытый. Это никак не повлияет на сборку прошивки, поэтому можете выбрать что угодно. Жмём Create repository и идём дальше.
Нас встречает главная страница репозитория, и нас интересуют только две вкладки: это поле со всеми файлами на странице Code и страница Actions.
2. Редактирование файлов
На вкладке Code в меню с файлами жмём на любой из них и попадаем на страницу с кодом. Слева видно меню файлов и директорий, а по центру — поле с кодом:
Чтобы отредактировать файл, нужно нажать на карандашик справа сверху:
Теперь после редактирования нам нужно «сохранить изменения». Для этого жмём Commit changes:
Видим выпадающее окно с полем для написания сообщения коммита — пропускаем его и снова жмём Commit changes. Сборка ZMK настроена так, что после каждого коммита она запускается, и на вкладке Actions можно отследить этот процесс. Подробнее об этом будет описано в другой части.
3. Основные директории и файлы
build.yaml — этот файл хранит в себе названия плат и контроллеров, для которых будет производиться сборка. Вот пример такого файла для KOMETA вместе со сборкой файла для сброса (подробнее этот процесс будет описан в другой статье).
include:
- board: nice_nano_v2
shield: kometa_left
- board: nice_nano_v2
shield: kometa_right
- board: nice_nano_v2
shield: settings_reset
module.yml — он хранится в директории zephyr. Для базовой сборки достаточно того, что уже написано в шаблоне.
build:
settings:
board_root: .
west.yml — этот файл находится в директории config и описывает модули, которые используются для сборки. В него можно импортировать другие модули для дополнительного функционала, но для обычной сборки достаточно того, что уже написано в шаблоне.
manifest:
remotes:
- name: zmkfirmware
url-base: https://github.com/zmkfirmware
projects:
- name: zmk
remote: zmkfirmware
revision: main
import: app/west.yml
self:
path: config
Напоследок нас интересует директория boards/shields. В ней в следующей статье будут созданы файлы для конфигурации матрицы и основных настроек. Пока что там лежит только .gitkeep, который нужен лишь для того, чтобы эта пустая директория оставалась в репозитории и отслеживалась Git'ом. Как только положите туда другие файлы, его можно будет удалить