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

L'azienda Collabora ha presentato il progetto Holo Core, che è stato sviluppato in collaborazione con Valve per una versione del sistema operativo Arch Linux dedicata alla piattaforma AArch64. Holo Core è stato creato per l'utilizzo di SteamOS su un 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 Arch Linux, alla base di SteamOS, è disponibile solo per l'architettura x86_64, mentre il dispositivo Steam Frame è costruito attorno al chip Snapdragon 8, che utilizza l'architettura ARM64. È disponibile il codice sorgente dei pacchetti adattati per l'architettura ARM64, così come le versioni binarie pronte e l'immagine del contenitore in formato Docker.

L'obiettivo principale del progetto è la creazione di un'infrastruttura di integrazione continua per organizzare compilazioni automatizzate, monitorando lo stato dei repository Arch Linux costantemente aggiornati e determinando le dipendenze necessarie. Oltre a creare patch necessarie per il funzionamento di alcuni pacchetti sui sistemi AArch64, durante l'implementazione del progetto è stata necessaria la risoluzione di diversi problemi.

Parte dei problemi è causata dal fatto che nel repository continuamente aggiornato di Arch Linux, il nuovo stato di alcuni pacchetti dipende da uno precedente e per la costruzione è necessario riprodurre tutta la catena di stati (ad esempio, per ricostruire rust 1.91 è necessario rust 1.90, il quale a sua volta richiede rust 1.89, e così via). Una situazione simile si verifica per le librerie su cui è basato l'ambiente di costruzione (come icu e gpgme, utilizzate in pacman) — in caso di aggiornamento delle versioni di queste librerie, è necessario avere sia la versione vecchia che quella nuova per completare con successo la ricostruzione.

Un altro limite è stata l'incertezza sull'ordine di costruzione: nel repository Git di Arch Linux, i pacchetti vengono spesso aggiunti non in modo sequenziale, rendendo impossibile una ricostruzione automatizzata senza ricalcolare tutta la catena di dipendenze. Inoltre, durante i tentativi di costruire versioni precedenti, gli cambiamenti nell'infrastruttura dei progetti upstream diventano un ostacolo: il codice sorgente potrebbe essere spostato, il progetto potrebbe passare a un altro hosting Git, e i checksum del codice in git potrebbero cambiare a causa della sostituzione degli hash brevi con quelli lunghi, mentre il caricamento automatico potrebbe essere bloccato da protezioni anti-bot.

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

Quando il sistema sarà messo a punto, si prevede di sincronizzarlo con le versioni dei pacchetti utilizzati nella sviluppo delle future versioni di SteamOS per l'architettura x86_64. Il codice degli strumenti CI in via di sviluppo sarà pubblicato con una licenza aperta e proposto per l'integrazione nel progetto Arch Linux, che attualmente non ha un'infrastruttura CI. I risultati ottenuti saranno anche trasferiti nel progetto principale per creare un port 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