Новый проект, получивший финансирование, призван значительно упростить тестирование экспериментальных приложений и изменений на уровне системы в GNOME OS, собственной экспериментальной ОС GNOME. Это особенно важно для тех, кому неудобно работать с Flatpak-пакетами, неофициальными репозиториями и ручной установкой из командной строки.

Официально инициатива называется GNOME OS Developer Tool Suite и поддерживается немецким фондом Prototype Fund. Она сосредоточена на инструментах для локальной сборки, распространения и тестирования расширений в операционных системах на основе образов.

Проект возглавляют участники Modal Collective. Последний месяц они собирали отзывы от разработчиков сообщества GNOME и теперь переходят к созданию прототипа.

В основе предложения лежит новое приложение, условно названное Test Center. Оно призвано упростить скачивание, установку и управление экспериментальными приложениями GNOME.

Сейчас разработчики используют CI-системы для генерации Flatpak-пакетов для каждого запроса на слияние. Хотя это и улучшило тестирование приложений, рабочий процесс остаётся довольно техническим: тестировщикам приходится вручную скачивать, устанавливать, а затем удалять нужный пакет.

Test Center призван решить эту проблему, предложив работу в стиле Apple TestFlight. Разработчики смогут передавать простую ссылку, по которой тестировщики установят экспериментальное приложение.

Приложение Test Center для GNOME OS
Приложение Test Center для GNOME OS

Тестовые сборки будут явно помечаться как экспериментальные, чтобы не путать их со стабильными версиями. Разработчики также смогут задавать срок действия, чтобы временные сборки не оставались в системе навсегда.

Test Center не ограничится только обычными настольными приложениями. Modal Collective также планирует использовать тот же интерфейс для тестирования экспериментальных версий низкоуровневых системных компонентов. Это поможет оценивать возможности, требующие изменений, выходящих за рамки отдельных Flatpak-приложений, например, новые функции родительского контроля или модификации ключевых компонентов GNOME.

В традиционных дистрибутивах Linux, основанных на пакетах, тестирование подобных изменений часто требует от разработчиков собирать заменяющие пакеты и публиковать их в неофициальных репозиториях вроде COPR или PPA. Затем тестировщикам приходится заменять стабильные системные пакеты экспериментальными версиями, что может привести к нарушению зависимостей, пропущенным обновлениям или неработоспособной системе.

Предлагаемый рабочий процесс в GNOME OS вместо этого будет генерировать образ системного расширения, обычно называемый sysext, для каждого соответствующего запроса на слияние. Test Center сможет установить эксперимент по ссылке и применить его как наложение поверх существующей операционной системы.

Поскольку системные файлы не заменяются навсегда, удаление расширения возвращает машину к исходному состоянию. Также более широкий набор инструментов GNOME OS Developer Tool Suite решает ещё одно ключевое ограничение образных Linux-систем: установку инструментов командной строки для разработки.

Традиционные дистрибутивы Linux позволяют легко устанавливать специализированные утилиты через пакетные менеджеры. В GNOME OS уже доступно системное расширение для разработки с набором часто используемых инструментов, но один образ не может реально вместить все специализированные утилиты, которые могут понадобиться разработчикам.

Flatpak изначально ориентирован на графические настольные приложения и не считается подходящим универсальным решением для консольных программ.

В Modal Collective сообщили, что обсудили проблему с разработчиками Flatpak и уже имеют начальный подход к распространению сторонних инструментов командной строки. Подробности обещают раскрыть отдельно, когда эта часть проекта будет доработана.

Подробнее можно узнать в блоге Modal Collective.

Изображение: Modal Collective