Společnost Collabora představila Holo Core, port Arch Linux pro architekturu AArch64

Společnost Collabora představila projekt Holo Core, v rámci kterého ve spolupráci se společností Valve připravila verzi distribuce Arch Linux pro platformu AArch64. Holo Core byl vytvořen pro použití SteamOS na zařízení Steam Frame, které kombinuje osobní počítač, 3D brýle a dva 3D ovladače. Vývoj Holo Core byl potřebný, protože distribuce Arch Linux, na které je SteamOS založen, je dostupná pouze pro architekturu x86_64, zatímco zařízení Steam Frame je postaveno na čipu Snapdragon 8, který používá architekturu ARM64. Pro testování je k dispozici zdrojový kód balíčků přizpůsobených pro architekturu ARM64, stejně jako hotové binární sestavení balíčků a obraz kontejneru ve formátu Docker.

Klíčovým úkolem projektu je vybudování infrastruktury pro kontinuální integraci, která bude organizovat automatizované sestavení, monitorovat stav kontinuálně aktualizovaných repozitářů Arch Linux a určovat potřebné závislosti. Kromě vytváření patchů potřebných pro fungování některých balíčků na systémech Aarch64 bylo v průběhu realizace projektu třeba vyřešit několik problémů.

Část problémů je způsobena tím, že v kontinuálně aktualizovaném repozitáři Arch Linux se nové stavy některých balíčků vztahují na staré a pro sestavení je nutné reprodukovat celou řetězec stavů (například pro znovusestavení rust 1.91 musí být přítomno rust 1.90, pro který je zase potřeba rust 1.89 atd.). Podobná situace je pozorována u knihoven, na kterých je závislý sestavovací nástroj (např. icu a gpgme používané v pacman) — v případě aktualizace verzí těchto knihoven je pro úspěšné znovusestavení nutná přítomnost jak staré, tak nové verze.

Dalším omezením byla neurčitost v pořadí sestavení — v Git repozitáři Arch Linux jsou balíčky často přidávány nepostupně, v pořadí nevhodném pro automatizované znovusestavení bez přepočítání celého řetězce závislostí. Kromě toho, při pokusech o sestavení starých verzí, se překážkou stávají změny v infrastrukturách upstream projektů — zdrojový kód může být přemístěn, projekt může přejít na jiný git hosting, kontrolní součty kódu v gitu se mohou změnit v důsledku výměny krátkých hashů za dlouhé, a automatizované načítání může být blokováno ochranou proti botům.

Nástroj Holo Core CI připravený v rámci projektu dokáže vypočítat kompletní strom závislostí a „přehrát“ historii sestavení Arch Linux od počátečního bootstrapu až po vybraný stav, pokrývající všechny potřebné mezisouhrny. Publikovaná testovací verze odpovídá verzím balíčků v repozitáři Arch Linux ke dni 18. listopadu 2025 a představuje jakýsi prototyp, který demonstruje připravenost vytvořené infrastruktury pro formování konečných produktů.

Až bude systém dokončen, plánuje se jeho synchronizace s verzemi balíčků používanými při vývoji budoucích verzí SteamOS pro architekturu x86_64. Kód vyvíjeného CI nástroje bude publikován pod otevřenou licencí a nabídnut k implementaci v projektu Arch Linux, který zatím nemá CI infrastrukturu. Do hlavního projektu se také plánují předat výsledky pro vytvoření oficiálního portu Arch Linux pro architekturu AArch64.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster