webOS Open Source Edition развивается в публичном репозитории под лицензией Apache 2.0, а разработку курирует сообщество, придерживаясь совместной модели управления разработкой. В качестве эталонной аппаратной платформы рассматриваются платы Raspberry Pi .
Системное окружение 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.
Для хранения данных в структурированном виде с использованием формата JSON применяется хранилище DB8, использующее в качестве бэкенда БД LevelDB. Для инициализации используется bootd на основе systemd. Для обработки мультимедийного контента предлагаются подсистемы uMediaServer и Media Display Controller (MDC), в качестве звукового сервера применяется PulseAudio.
Особенности webOS Open Source Edition 2:
- Предложен новый эталонный интерфейс пользователя — Home Launcher, оптимизированный для управления с сенсорных экранов, предлагающий усовершенствованную концепцию сменяющих друг друга карт (вместо окон). В интерфейс также добавлена панель быстрого запуска, на которой размещаются ярлыки для часто используемых функций, таких как доступ к настройкам и уведомлениям;
- Платформа адаптирована для применения на автомобильных информационно-развлекательных системах. Например, обеспечена возможность работы в окружениях с двумя экранами, обычно используемыми в пассажирских мультимедийных системах;
- Предложены средства для автоматического обновления прошивки (FOTA — Firmware-Over-the Air), основанные на применении OSTree и атомарного обновления системы. Весь образ системы пересобирается целиком, без разделения на отдельные пакеты. Система обновлений основана на использовании двух системных разделов, один из которых является активным, а второй используется для копирования обновления, после установки обновления разделы меняются ролями.
- Добавлен режим SoftAP (Tethering), позволяющий организовать работу точки беспроводного доступа для подключения к сети других устройств;
- Добавлена поддержка мандатного управления доступом на базе модуля ядра Smack (Simplified Mandatory Access Control Kernel);
- Улучшена поддержка Bluetooth и WiFi;
- Эталонная аппаратная платформа обновлена до платы Raspberry Pi 4 (ранее предлагалось использовать Raspberry Pi 3 Model B ), на которой можно подключать два экрана через HDMI, задействовать более совершенный GPU, использовать Gigabit Ethernet, двухдиапазонный Wi-Fi, Bluetooth 5.0/BLE и USB 3.0;
- Для ведения логов по умолчанию задействован journald от systemd;
- Обновлены версии сторонних компонентов, лежащих в основе платформы, включая Qt 5.12 и Chromium 72.
Источник: http://www.opennet.ru/opennews/art.shtml?num=51918