The open webOS Open Source Edition 2.24 platform has been released, which can be used on various portable devices, boards, and in-car infotainment systems. The Raspberry Pi 4 boards are considered a reference hardware platform. The platform is developed in a public repository under the Apache 2.0 license, with development overseen by the community, adhering to a collaborative development model.
Key changes in the new release:
- Multimedia services have been refactored to eliminate bindings between media services for working with the camera and the media server (uMediaServer), which previously required developers to call methods from different APIs to implement certain functionalities.
- A new universal service com.webos.service.mediarecorder has been added for recording video from the camera and audio from the microphone.
- Isolated functionality has been implemented for organizing previews from the camera, which relies solely on the API com.webos.service.camera2 (previously, it was necessary to use both the com.webos.service.camera2 and com.webos.media APIs together).
- The browser engine has been updated to Chromium 108 (previously Chromium 94 was used).
- Support has been added for building with Qt 6.7.0.
- Memory management has been enhanced in the g-camera-pipeline component.
- In the Enact browser, the issue with updating the URL in the address bar has been resolved.
- Issues with building standard Qt applications in the emulator have been fixed.
- The API com.palm.service.tellurium, designed for interaction with web applications, has been documented.
The webOS platform was originally developed by Palm in 2008 and was used on the Palm Pre and Pixie smartphones. In 2010, after acquiring Palm, the platform came under Hewlett-Packard's control, which then attempted to use the platform in its printers, tablets, laptops, and PCs. In 2012, HP announced the transition of webOS into an independent open project and began releasing the source code for its components in 2013. In that same year, the platform was acquired from Hewlett-Packard by LG and is now used in over 70 million LG TVs and consumer devices. In 2018, the webOS Open Source Edition project was established, through which LG aimed to return to an open development model, attract other participants, and expand the range of devices supported by webOS.
The webOS system environment is formed using the OpenEmbedded tools and base packages, as well as the build system and metadata set from the Yocto project. Key components of webOS include the System and Application Manager (SAM), which is responsible for running applications and services, and the Luna Surface Manager (LSM), which creates the user interface. The components are written using the Qt framework and the Chromium browser engine.
Rendering is done through a composite manager using the Wayland protocol. For developing user applications, it is recommended to use web technologies (CSS, HTML5, and JavaScript) and the Enact framework based on React, although it is also possible to create programs in C and C++ with a Qt-based interface. The user interface and built-in graphical applications are mainly implemented as native programs written using QML technology. By default, the Home Launcher interface is offered, optimized for touch screen navigation and featuring a concept of interchangeable cards instead of windows.
Data is stored in a structured format using JSON with the DB8 storage system, which uses LevelDB as the backend. Initialization is done through bootd based on systemd. For multimedia content processing, the uMediaServer and Media Display Controller (MDC) subsystems are available, and PulseAudio is used for sound. server For automatic firmware updates, OSTree and atomic partition replacement are used (two system partitions are created, one of which is active while the other is used for updating).

Source: opennet.ru
