Page 1 of 1

Система воркспейсов

Posted: Sat Dec 04, 2021 4:05 pm
by Boppan
Приветствую!

Приглашаю всех на альфа тест системы воркспейсов для Колибри. Приветствуются как баг-репорты, так и проблемный пользовательский опыт.

Система автоматически настраивает окружение для разработки программ под Колибри. Пока работает только с программами, написанными на fasm (в теории может и для разработки на других языках использоваться, но хорошего UX для этого я не готовил).

Как пользоваться

1. Переходим в папку с любой программой, написанной на ассемблере (к примеру, programs/demos/flatwav/trunk).
2. Устанавливаем воркспейс: python3 ../../../../_tools/get_started.py
3. Компилируем и запускаем программу в qemu: python3 run.py

При необходимости можно только скомпилировать программу: python3 build.py
Или очистить папку от скомпилированных файлов: python3 build.py clean

По завершении работы с проектом, его можно очистить от файлов воркспейса и скомпилированных артефактов: python3 ../../../../_tools/cleanup.py

Как это работает

При вызове _tools/get_started.py, в текущей директории создаются файлы build.py и run.py, а также папка workspace.

build.py

Передаёт управление _tools/workspace/build.py, который имеет две функции:
- при вызове без параметров запускает сборку при помощи tup;
- при вызове с параметром clean удаляет артефакты компиляции.

run.py

Передаёт управление _tools/workspace/run.py, который:
1. Собирает программу при помощи _tools/workspace/build.py
2. Подготавливает образ Колибри для запуска программы:
- копирует в него незапакованное ядро для быстрой загрузки;
- копирует в него скомпилированную программу;
- добавляет скомпилированную программу в autorun.dat;
- и, возможно, ещё пара мелочей, о которых я забыл упомянуть.
3. Запускает qemu с подготовленным образом.

workspace

Содержит в себе логи qemu и локально сохранённые образы колибри (оригинальный и модифицированный).

Re: Система воркспейсов

Posted: Tue Dec 07, 2021 5:36 pm
by Freeman
Если образы KolibriOS генерятся программно, какая утилита используется? На нашем форуме была тема, но к единому мнению не пришли. Регистрация сейчас закрыта из-за нашествия спамеров. Могу открыть по прямому запросу (если вдруг).

Re: Система воркспейсов

Posted: Tue Dec 07, 2021 6:16 pm
by Boppan
Образ Колибри скачивается с сайта, а потом модифицируется библиотекой makeflop.