Collabora a dezvăluit Holo Core, un port al Arch Linux pentru arhitectura AArch64

Collabora a dezvăluit proiectul Holo Core, pe care l-a dezvoltat în colaborare cu Valve pentru a crea o versiune a distribuției Arch. Linux pentru platforma AArch64. Holo Core a fost creat pentru a rula SteamOS pe Steam Frame, un dispozitiv care combină un computer personal, o cască 3D și două controllere 3D. Dezvoltarea Holo Core a fost necesară deoarece distribuția Arch LinuxPlatforma SteamOS este disponibilă doar pentru arhitectura x86_64, în timp ce Steam Frame este construit pe un cip Snapdragon 8, care utilizează arhitectura ARM64. Codul sursă pentru pachetele adaptate pentru arhitectura ARM64, precum și pachetele binare precompilate și o imagine a containerului Docker, sunt disponibile pentru testare.

Obiectivul principal al proiectului este de a construi o infrastructură de integrare continuă pentru organizarea build-urilor automate care monitorizează starea depozitelor Arch actualizate continuu. Linux și definirea dependențelor necesare. Pe lângă crearea patch-urilor necesare pentru ca anumite pachete să funcționeze pe sistemele Aarch64, proiectul a necesitat rezolvarea mai multor probleme.

Unele dintre probleme sunt cauzate de faptul că depozitul Arch este actualizat continuu Linux Noua stare a unor pachete este legată de cea veche, iar reconstrucția necesită reproducerea întregului lanț de stări (de exemplu, reconstrucția versiunii rust 1.91 necesită rust 1.90, care la rândul său necesită rust 1.89 și așa mai departe). O situație similară se observă pentru bibliotecile care sunt legate de lanțul de instrumente de construire (de exemplu, icu și gpgme, utilizate în pacman) - dacă aceste biblioteci sunt actualizate, atât versiunea veche, cât și cea nouă trebuie să fie prezente pentru o reconstrucție reușită.

O altă limitare a fost incertitudinea ordinii de construire - în depozitul Arch Git. Linux Pachetele sunt adesea adăugate în afara secvenței, ceea ce face ca reconstrucția automată fără recalcularea întregului lanț de dependențe să fie inadecvată. În plus, încercările de a construi versiuni vechi sunt împiedicate de modificările din infrastructura proiectului din amonte - codul sursă poate fi mutat, proiectul poate fi mutat pe un alt serviciu de găzduire Git, sumele de control ale codului Git se pot modifica din cauza înlocuirii hash-urilor scurte cu unele lungi, iar descărcările automate pot fi blocate de protecția anti-boți.

Setul de instrumente CI dezvoltat de proiectul Holo Core este capabil să calculeze întregul arbore de dependențe și să redea istoricul de construire Arch. Linux De la bootstrapul inițial până la starea finală, acoperind toate reconstrucțiile intermediare necesare. Versiunea de test publicată corespunde versiunilor pachetului din depozitul Arch. Linux începând cu 18 noiembrie 2025 și este un fel de prototip care demonstrează pregătirea infrastructurii create pentru formarea produselor finale.

Odată ce sistemul va fi depanat, se planifică sincronizarea acestuia cu versiunile pachetului utilizate în dezvoltarea viitoarelor versiuni de SteamOS pentru arhitectura x86_64. Codul pentru instrumentele CI dezvoltate va fi publicat sub o licență deschisă și oferit pentru implementare în cadrul proiectului Arch. Linux, care în prezent nu are infrastructură de integrare continuă. De asemenea, ei intenționează să contribuie la proiectul principal de creare a unui port Arch oficial. Linux pentru arhitectura AArch64.

Sursa: opennet.ru

Cumpărați găzduire de încredere pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără găzduire web fiabilă cu protecție DDoS, servere VPS VDS | ProHoster