Опубликован выпуск открытой платформы webOS Open Source Edition 2.19, которая может применяться на различных портативных устройствах, платах и автомобильных информационно-развлекательных системах. В качестве эталонной аппаратной платформы рассматриваются платы Raspberry Pi 4. Платформа развивается в публичном репозитории под лицензией Apache 2.0, а разработку курирует сообщество, придерживаясь совместной модели управления разработкой.
Платформа webOS была изначально разработана компанией Palm в 2008 году и использовалась на смартфонах Palm Pre и Pixie. В 2010 году после поглощения компании Palm платформа перешла в руки Hewlett-Packard, после чего HP пыталась использовать данную платформу в своих принтерах, планшетах, ноутбуках и ПК. В 2012 году компания HP анонсировала перевод webOS в независимый открытый проект и в 2013 году начала открытие исходных текстов его компонентов.
В 2013 году платформа была выкуплена у Hewlett-Packard компанией LG и теперь применяется на более чем 70 миллионах телевизоров и потребительских устройств LG. В 2018 году был основан проект webOS Open Source Edition, через который компания LG попыталась вернуться к открытой модели разработки, привлечь других участников и расширить спектр поддерживаемых в webOS устройств.
Системное окружение webOS формируется с использованием инструментария и базовых пакетов OpenEmbedded, а также сборочной системы и набора метаданных от проекта Yocto. Ключевыми компонентами webOS являются менеджер системы и приложений (SAM, System and Application Manager), отвечающий за выполнение приложений и сервисов, и Luna Surface Manager (LSM), формирующий интерфейс пользователя. Компоненты написаны с использованием фреймворка Qt и браузерного движка Chromium.
Отрисовка осуществляется через композитный менеджер, применяющий протокол Wayland. Для разработки пользовательских приложений предлагается использовать web-технологии (CSS, HTML5 и JavaScript) и фреймворк Enact, основанный на React, но возможно и создание программ на С и C++ с интерфейсом на базе Qt. Пользовательская оболочка и встроенные графические приложения в основном реализованы как нативные программы, написанные с использованием технологии QML. По умолчанию предлагается оболочка Home Launcher, оптимизированная для управления с сенсорных экранов и предлагающая концепцию сменяющих друг друга карт (вместо окон).
Для хранения данных в структурированном виде с использованием формата JSON применяется хранилище DB8, использующее в качестве бэкенда БД LevelDB.
Для инициализации используется bootd на основе systemd. Для обработки мультимедийного контента предлагаются подсистемы uMediaServer и Media Display Controller (MDC), в качестве звукового сервера применяется PulseAudio. Для автоматического обновления прошивки применяется OSTree и атомарная замена разделов (создаются два системных раздела, один из которых является активным, а второй используется для копирования обновления).
Основные изменения в новом выпуске:
- Улучшен домашний экран (Home App), в котором появилась строка состояния с подборкой наиболее часто вызываемых возможностей. Предоставлена поддержка свободного редактирования содержимого панели с приложениями. Добавлены новые экранные жесты.
- В состав включено приложение Video Call для осуществления видеовызовов и проведения виртуальных видеовстреч.
В текущем виде пока поддерживается только установка связи через Cisco Webex и Microsoft Teams. - Предоставлено окружение командной строки для создания собственных приложений с блокчейн-кошельками (Blockchain Wallet), которое упрощает выполнение таких операций, как подпись транзакций и журналирование этих транзакций в блокчейне.
- В Enact Browser добавлена поддержка сервиса определения вредоносного ПО и реализовано всплывающее окно с запросом полномочий у пользователя.
- В звуковом сервере audiod добавлена поддержка определения встроенных и внешних звуковых устройств. В системном сервисе (Sys Service) добавлена поддержка вторичных звуковых устройств (subdevices), встроенных звуковых карт и MIPI-камер. В PulseAudio задействован механизм подавления эха ECNR (Echo Cancellation Noise Reduction).
- Компоненты платформы для создания встраиваемых Linux-систем Yocto обновлены до выпуска 4.0.
- Браузерный движок обновлён до выпуска Chromium 94 (ранее использовался Chromium 91). Для web-приложений webOS добавлена возможность использования геймпадов.
- Обновлены шрифты Noto (добавлена поддержка символов Unicode 15.0.0).
- Осуществлён переход на Qt 6.4. Web-фреймворк Enact обновлён до версии 4.5.0.