L'azienda Igalia ha presentato Moonforge, una distribuzione per sistemi embedded

L'azienda Igalia, nota per il suo coinvolgimento nello sviluppo di progetti open source come GNOME, GTK, WebKitGTK, Epiphany, Maemo, GStreamer, Wine, Mesa e freedesktop.org, ha presentato il progetto Moonforge, che semplifica la creazione e la manutenzione di distribuzioni Linux personalizzate per vari dispositivi e sistemi embedded. Il contenuto della distribuzione viene creato utilizzando strumenti di build e metadati dei pacchetti dai progetti OpenEmbedded e Yocto. I risultati specifici del progetto sono distribuiti con licenza MIT.

Moonforge fornisce a sviluppatori e integratori di sistemi un framework, un insieme di file di configurazione e una collezione di componenti per formare immagini di sistema aggiornabili in modo atomico, basate su tecnologie già consolidate e diffuse nel settore, come yocto, bitbake e kas. Per le immagini create è supportato un processo semplificato per l'installazione degli aggiornamenti e garantito un lungo ciclo di supporto. L'obiettivo principale del progetto è fornire agli sviluppatori di sistemi embedded strumenti pratici che permettano di concentrarsi sullo sviluppo delle funzionalità specifiche per i loro prodotti, senza perdere tempo in attività legate alla creazione e manutenzione della distribuzione.

L'immagine di sistema è composta da un insieme di moduli Yocto preconfezionati. Ogni modulo è responsabile di una funzionalità specifica o del supporto per una particolare piattaforma hardware target. Ad esempio, sono disponibili moduli per supportare Docker, QEMU o Podman, gestione degli aggiornamenti tramite RAUC, e creazione di un'interfaccia grafica basata su un composito server Weston, avvio di un'interfaccia browser basata su Webkit per chioschi internet e compilazioni per le schede Raspberry Pi 4 e 5.

Sono supportati tre canali di distribuzione delle versioni: stable (ramo LTS stabile), next (ramo in cui si sviluppa la prossima versione LTS) e main (ramo sperimentale in fase di sviluppo). Ogni ramo è associato a una versione specifica del set di componenti Yocto. Il ramo stabile viene aggiornato mensilmente e corrisponde alle versioni LTS di Yocto.

Gli aggiornamenti vengono consegnati in modalità OTA (Over-The-Air) utilizzando gli strumenti di Mender e vengono installati in modo atomico tramite la sostituzione dell'intero sistema. Sullo storage vengono creati due partizioni di root identiche: attiva e passiva. Il nuovo aggiornamento viene installato nella partizione passiva, senza influenzare il funzionamento di quella attiva. Dopo un riavvio, le partizioni si scambiano: la partizione con il nuovo aggiornamento diventa attiva, mentre la precedente partizione attiva passa in modalità passiva in attesa dell'installazione del prossimo aggiornamento. Se qualcosa va storto dopo l'aggiornamento, viene effettuato un rollback alla versione precedente del sistema.

Per creare immagini di sistema si utilizza lo strumento BitBake, e per la configurazione e la garanzia di build riproducibili - kas. Build, aggiornamenti, report sulle vulnerabilità e metadati SBOM (Software Bill of Materials) vengono automaticamente raccolti e pubblicati utilizzando sistemi di integrazione continua e distribuzione continua (CI/CD). L'infrastruttura di build basata su Moonforge può essere distribuita sia su ambienti locali server, sia in ambienti cloud pubblici o privati.

Per garantire trasparenza e prevedibilità nei processi di creazione di prodotti derivati, viene applicata una netta separazione tra i componenti upstream e downstream, consentendo agli sviluppatori di aggiungere funzionalità aggiuntive sopra la base esistente, se necessario. La configurazione è definita in una rappresentazione dichiarativa utilizzando il formato YAML, e copre aree come il collegamento a repository esterni, l'attivazione di moduli Yocto, la gestione delle dipendenze tra i componenti del distribuitivo, l'applicazione di patch aggiuntive e la modifica delle impostazioni di sistema predefinite.

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