È stato presentato il rilascio della piattaforma open source webOS Open Source Edition 2.20, utilizzabile su diversi dispositivi portatili, schede e sistemi informativi e di intrattenimento per auto. Come piattaforma hardware di riferimento vengono considerate le schede Raspberry Pi 4. La piattaforma viene sviluppata in un repository pubblico con licenza Apache 2.0, con la comunità che supervisiona lo sviluppo seguendo un modello di gestione collaborativa.
La piattaforma webOS è stata originariamente sviluppata da Palm nel 2008 ed è stata utilizzata sugli smartphone Palm Pre e Pixie. Nel 2010, dopo l'acquisizione di Palm, la piattaforma è passata nelle mani di Hewlett-Packard, che ha cercato di utilizzare questa piattaforma nelle proprie stampanti, tablet, laptop e PC. Nel 2012, HP ha annunciato il passaggio di webOS a un progetto open source indipendente e nel 2013 ha iniziato a rilasciare i codici sorgente dei suoi componenti. Nel 2013, la piattaforma è stata acquistata da LG e ora è utilizzata su oltre 70 milioni di televisioni e dispositivi di consumo LG. Nel 2018 è stato fondato il progetto webOS Open Source Edition, attraverso il quale LG ha cercato di tornare a un modello di sviluppo aperto, coinvolgendo altri partecipanti e ampliando la gamma di dispositivi supportati in webOS.
L'ambiente del sistema webOS è creato utilizzando strumenti e pacchetti di base OpenEmbedded, oltre a un sistema di build e a un insieme di metadati dal progetto Yocto. I componenti chiave di webOS includono il gestore di sistema e applicazioni (SAM, System and Application Manager), responsabile dell'esecuzione di applicazioni e servizi, e il Luna Surface Manager (LSM), che forma l'interfaccia utente. I componenti sono scritti utilizzando il framework Qt e il motore di rendering Chromium.

Il rendering avviene tramite un gestore composito che utilizza il protocollo Wayland. Per lo sviluppo di applicazioni personalizzate, si consiglia di utilizzare tecnologie web (CSS, HTML5 e JavaScript) e il framework Enact, basato su React, ma è possibile anche creare programmi in C e C++ con un'interfaccia basata su Qt. L'interfaccia utente e le applicazioni grafiche integrate sono principalmente realizzate come programmi nativi scritti utilizzando la tecnologia QML. Per impostazione predefinita, viene offerto il launcher Home, ottimizzato per la gestione tramite schermi tattili e che propone un concetto di schede intercambiabili (invece di finestre).
Per la memorizzazione dei dati in formato strutturato utilizzando il formato JSON viene utilizzato un archivio DB8, che utilizza come backend un database LevelDB. Per l'inizializzazione viene utilizzato bootd basato su systemd. Per l'elaborazione dei contenuti multimediali sono disponibili i sottosistemi uMediaServer e Media Display Controller (MDC), mentre per l'audio viene utilizzato PulseAudio. server Per l'aggiornamento automatico del firmware viene utilizzato OSTree e la sostituzione atomica delle partizioni (vengono creati due partizioni di sistema, una delle quali è attiva mentre l'altra viene utilizzata per copiare l'aggiornamento).
Le principali novità nella nuova versione:
- È iniziata la fornitura di immagini pronte di webOS per la scheda Raspberry Pi 4 e per l'emulatore. Le immagini saranno disponibili su GitHub entro pochi giorni dal rilascio.
- L'interfaccia utente del sistema è stata convertita dal framework Moonstone a Sandstone.
- Nel configuratore è stata fornita la possibilità di visualizzare l'elenco dei punti di accesso Wi-Fi conosciuti a cui ci si è connessi in passato.

- È stata aggiunta una combinazione di tasti (Ctrl + Alt + F9) per catturare uno screenshot (salvato in /tmp/screenshots) e la combinazione Ctrl + Alt + F10 per eliminare tutti gli screenshot.
- Le icone nella barra di stato sono state modificate. È stata aggiunta la possibilità di connettersi al Wi-Fi dalla barra di stato.
- Nel browser WebEX è stato aggiunto un indicatore di riproduzione video o audio nelle schede.
- Per la costruzione di webruntime e WAM nel motore Blink è stato utilizzato Clang.
Fonte: opennet.ru

