Компанія Collabora представила Holo Core, порт Arch Linux для архітектури AArch64

Компанія Collabora представила проект Holo Core, у рамках якого спільно з компанією Valve підготовлено редакцію дистрибутива Arch Linux для платформи AArch64. Holo Core створений для використання SteamOS на пристрої Steam Frame, що поєднує персональний комп'ютер, 3D-шолом та два 3D-контролери. Розробка Holo Core була потрібна, так як дистрибутив Arch Linux, що лежить в основі SteamOS, доступний тільки для архітектури x86_64, в той час як пристрій Steam Frame побудований на чіпі Snapdragon 8, який використовує архітектуру ARM64. Для тестування доступний вихідний код пакетів, адаптованих до архітектури ARM64, а також готові бінарні зборки пакетів та образ контейнера у форматі Docker.

Ключовим завданням проекту названа побудова інфраструктури безперервної інтеграції для організації автоматизованих збірок, що відстежує стан репозиторіїв, що безперервно оновлюються Arch Linux та визначальною необхідні залежності. Крім створення патчів, необхідних роботи деяких пакетів на системах Aarch64, у процесі реалізації проекту потрібно вирішити кілька проблем.

Частина проблем викликана тим, що в репозиторії Arch, що безперервно оновлюється. Linux новий стан деяких пакетів зав'язаний на старий і для складання потрібно відтворити весь ланцюжок станів (наприклад, для перескладання rust 1.91 повинен бути rust 1.90, для якого, у свою чергу, потрібно rust 1.89 і т.д.). Схожа ситуація спостерігається для бібліотек, на які зав'язаний складальний інструментарій (наприклад, icu та gpgme, що використовуються в pacman) — у разі оновлення версій даних бібліотек, для успішного перескладання потрібна наявність як старої, так і нової версії.

Ще одним обмеженням стала невизначеність із порядком складання — у Git-репозиторії Arch Linux пакети часто додаються не послідовно в порядку, непридатному для автоматизованого перескладання без перерахування всього ланцюжка залежностей. Крім цього, при спробах складання старих версій перешкодою стають зміни в інфраструктурі upstream-проектів - вихідний код може бути переміщений, проект перейти на інший git-хостинг, контрольні суми на код в git помінятися через заміну коротких хешів на довгі, а автоматизоване завантаження блокуватиметься антибот-.

Підготовлений у рамках проекту Holo Core CI-інструментарій здатний обчислювати повне дерево залежностей та «відтворювати» (replay) історію збірок Arch Linux від початкового bootstrap-а до обраного стану, охоплюючи всі необхідні проміжні перескладання. Опублікована тестова версія відповідає версіям пакетів у репозиторії Arch Linux Станом на 18 листопада 2025 року є своєрідним прототипом, що демонструє готовність створеної інфраструктури для формування кінцевих продуктів.

Коли система буде налагоджена, її планують синхронізувати з версіями пакетів, які використовуються для розробки майбутніх версій SteamOS для архітектури x86_64. Код CI-інструментарію, що розвивається, буде опублікований під відкритою ліцензією і запропонований для впровадження в проекті Arch Linux, у якого поки що немає CI-інфраструктури. В основний проект також планують передати напрацювання для створення офіційного порту Arch Linux для архітектури AArch64.

Джерело: opennet.ru

Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери 🔥 Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери | ProHoster