Die Ausgabe der Open Source-Plattform webOS Open Source Edition 2.18 wurde veröffentlicht, die auf verschiedenen tragbaren Geräten, Platinen und Infotainmentsystemen in Autos verwendet werden kann. Als Referenzhardware-Plattform dienen die Raspberry Pi 4-Platinen. Die Plattform entwickelt sich in einem öffentlichen Repository unter der Apache 2.0-Lizenz weiter, und die Entwicklung wird von der Gemeinschaft unter einem gemeinsamen Entwicklungsmodell geleitet.
Die webOS-Plattform wurde ursprünglich 2008 von Palm entwickelt und kam auf den Smartphones Palm Pre und Pixie zum Einsatz. Nach der Übernahme von Palm durch Hewlett-Packard im Jahr 2010 übernahm HP die Plattform und versuchte, sie in seinen Druckern, Tablets, Laptops und PCs zu integrieren. 2012 kündigte HP an, webOS zu einem unabhängigen Open-Source-Projekt zu machen, und begann 2013 mit der Veröffentlichung des Quellcodes seiner Komponenten. Im Jahr 2013 wurde die Plattform von LG von Hewlett-Packard übernommen und findet mittlerweile in über 70 Millionen Fernsehern und Verbrauchergeräten von LG Anwendung. 2018 wurde das Projekt webOS Open Source Edition ins Leben gerufen, durch das LG versuchte, zu einem offenen Entwicklungsmodell zurückzukehren, weitere Teilnehmer zu gewinnen und die Palette der in webOS unterstützten Geräte zu erweitern.
Die Systemumgebung von webOS wird mit Werkzeugen und Basis-Paketen von OpenEmbedded sowie mit dem Build-System und den Metadaten des Yocto-Projekts erstellt. Zu den Schlüsselfunktionen von webOS gehören der System- und Anwendungsmanager (SAM, System and Application Manager), der für die Ausführung von Anwendungen und Diensten zuständig ist, und der Luna Surface Manager (LSM), der die Benutzeroberfläche gestaltet. Die Komponenten sind mit dem Qt-Framework und der Chromium-Browser-Engine entwickelt.
Die Darstellung erfolgt über einen Kompositionsmanager, der das Wayland-Protokoll nutzt. Für die Entwicklung von Benutzeranwendungen wird empfohlen, Web-Technologien (CSS, HTML5 und JavaScript) sowie das auf React basierende Framework Enact zu verwenden. Es ist jedoch auch möglich, Anwendungen in C und C++ mit einer Benutzeroberfläche auf Qt-Basis zu erstellen. Die Benutzeroberfläche und die integrierten grafischen Anwendungen werden hauptsächlich als native Programme implementiert, die mit der QML-Technologie geschrieben sind. Standardmäßig wird eine Home Launcher-Oberfläche angeboten, die für die Steuerung mit Touchscreens optimiert ist und das Konzept wechselnder Karten (statt Fenstern) bietet.
Für die strukturierte Speicherung von Daten im JSON-Format wird der DB8-Speicher verwendet, der LevelDB als Backend nutzt. Die Initialisierung erfolgt über bootd, das auf systemd basiert. Zur Verarbeitung von Multimedia-Inhalten stehen die Subsysteme uMediaServer und Media Display Controller (MDC) zur Verfügung, wobei als Audio-Dienst PulseAudio zum Einsatz kommt. Server Für die automatische Aktualisierung der Firmware werden OSTree und atomare Partitionstauschmethoden verwendet (es werden zwei Systempartitionen erstellt, von denen eine aktiv ist und die andere zum Kopieren des Updates dient).
Die wichtigsten Änderungen in der neuen Version:
- Ein neuer Startbildschirm (Home App) wurde vorgeschlagen, bei dem Stil von der Statusleiste und den Symbolen überarbeitet wurde.

- Der Übergang zur Bibliothek Qt 6.3.1 wurde vollzogen.
- Im Konfigurationsverwaltungskomponent configd wurde Code zur Datenerhebung (data collection) hinzugefügt.
- Im Web-Dashboard wurde Unterstützung zur Erkennung von schädlichen Websites mithilfe der API Web Risk implementiert.
- Fehler im Enact Browser und in der Kamerasteuerung wurden behoben.
- Der Bildschirmmanager LSM (Luna Surface Manager) hat Unterstützung für 4K-Auflösung hinzugefügt.
Quelle: opennet.ru

