L'azienda Collabora ha presentato Holo Core, una porta di Arch Linux per l'architettura AArch64

L'azienda Collabora ha presentato il progetto Holo Core, nell'ambito del quale, insieme a Valve, è stata preparata una versione del sistema operativo Arch Linux per la piattaforma AArch64. Holo Core è stato creato per l'utilizzo di SteamOS sul dispositivo Steam Frame, che combina un computer personale, un visore 3D e due controller 3D. Lo sviluppo di Holo Core è stato necessario poiché la distribuzione di Arch Linux alla base di SteamOS è disponibile solo per l'architettura x86_64, mentre il dispositivo Steam Frame si basa su un chip Snapdragon 8 che utilizza l'architettura ARM64. Il codice sorgente dei pacchetti adattati per l'architettura ARM64 è disponibile per il test, così come le versioni binarie pronte dei pacchetti e l'immagine del contenitore nel formato Docker.

L'obiettivo chiave del progetto è stato dichiarato come la costruzione di un'infrastruttura di integrazione continua per organizzare compilazioni automatizzate, monitorando lo stato dei repository Arch Linux continuamente aggiornati e determinando le dipendenze richieste. Oltre alla creazione delle patch necessarie per il funzionamento di alcuni pacchetti sui sistemi Aarch64, durante il processo di realizzazione del progetto è stato necessario risolvere diversi problemi.

Alcuni problemi sono stati causati dal fatto che nel repository continuamente aggiornato di Arch Linux lo stato attuale di alcuni pacchetti è legato a quello di versioni precedenti e per la compilazione è necessario riprodurre l'intera catena di stati (ad esempio, per ricompilare rust 1.91 è necessaria la presenza di rust 1.90, per la quale, a sua volta, è richiesta rust 1.89, e così via). Una situazione simile si osserva per le librerie su cui si basa l'insieme degli strumenti di compilazione (ad esempio icu e gpgme, utilizzate in pacman): in caso di aggiornamento delle versioni di queste librerie, per una ricompilazione riuscita è necessaria la presenza sia della versione vecchia che di quella nuova.

Un'altra limitazione è stata l'incertezza nell'ordine di compilazione: nel repository Git di Arch Linux i pacchetti vengono spesso aggiunti in modo non sequenziale in un ordine che non è adatto per una ricompilazione automatizzata senza ricalcolare l'intera catena di dipendenze. Inoltre, durante i tentativi di compilare versioni precedenti si manifestano ostacoli dovuti a cambiamenti nell'infrastruttura dei progetti upstream: il codice sorgente può essere spostato, il progetto può passare a un altro hosting git, i checksum del codice in git possono cambiare a causa della sostituzione degli hash corti con quelli lunghi, e il caricamento automatizzato può essere bloccato da misure anti-bot.

Lo strumento CI sviluppato nell'ambito del progetto Holo Core è in grado di calcolare l'intero albero delle dipendenze e di "riprodurre" (replay) la storia delle compilazioni di Arch Linux, dal bootstrap iniziale fino allo stato scelto, coprendo tutte le necessarie ricompilazioni intermedie. La versione di test pubblicata corrisponde alle versioni dei pacchetti nel repository di Arch Linux al 18 novembre 2025 ed è una sorta di prototipo che dimostra la prontezza dell'infrastruttura creata per la generazione di prodotti finali.

Una volta completato il sistema, si prevede di sincronizzarlo con le versioni dei pacchetti utilizzati nello sviluppo delle future versioni di SteamOS per l'architettura x86_64. Il codice dello strumento CI in fase di sviluppo sarà pubblicato con una licenza aperta e proposto per l'integrazione nel progetto Arch Linux, che al momento non dispone di un'infrastruttura CI. Nel progetto principale si prevede anche di trasferire i risultati per la creazione del porto ufficiale di Arch Linux per l'architettura AArch64.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster