Випуск платформи WebOS Open Source Edition 2.14

Опубліковано випуск відкритої платформи webOS Open Source Edition 2.14, яка може застосовуватись на різних портативних пристроях, платах та автомобільних інформаційно-розважальних системах. Як еталонна апаратна платформа розглядаються плати Raspberry Pi 4. Платформа розвивається в публічному репозиторії під ліцензією Apache 2.0, а розробку курує співтовариство, дотримуючись спільної моделі управління розробкою.

Платформа webOS була спочатку розроблена компанією Palm у 2008 році та використовувалася на смартфонах Palm Pre та Pixie. У 2020 році після поглинання компанії 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, оптимізована для керування з сенсорних екранів і пропонує концепцію карт, що змінюють один одного (замість вікон).

Випуск платформи WebOS Open Source Edition 2.14

Для зберігання даних у структурованому вигляді з використанням формату JSON застосовується сховище DB8, що використовує як бекенд БД LevelDB. Для ініціалізації використовується bootd на основі systemd. Для обробки мультимедійного контенту пропонуються підсистеми uMediaServer і Media Display Controller (MDC), як звуковий сервер застосовується PulseAudio. Для автоматичного оновлення прошивки застосовується OSTree та атомарна заміна розділів (створюються два системні розділи, один з яких є активним, а другий використовується для копіювання оновлення).

Основні зміни у новому випуску:

  • До прикладних програм, що пропонуються за замовчуванням, включена програма для роботи з камерою. Програма надає базову функціональність для зйомки фотографій та запису відео, і може застосовуватися як основа для розробки більш просунутих програм для роботи з камерою.
  • Здійснено перехід на формування 64-розрядних складання, включаючи складання для плати Raspberry Pi 4 (rpi4-64) та емулятора (qemux86). Підтримка 32-складання оголошена застарілою.
  • Запропоновано додаток для відкритого редактора коду Visual Studio Code, що спрощує розробку специфічних для webOS web-програм, Enact-програм та JavaScript-сервісів.
  • Активовано обслуговування раннього реагування на брак пам'яті в системі systemd-oomd, що дозволяє виявити початок виникнення затримок через брак ресурсів і вибірково завершити роботу ресурсомістких процесів на стадії, коли система ще не знаходиться в критичному стані і не починає інтенсивно урізати кеш і витісняти дані в розділ підкачування.
  • У Network Manager налагоджено запуск сервісу wpa-supplicant у збірках для плат Raspberry Pi 4.
  • У збірку емулятора додані виконувані файли occlientbasicops і ocserverbasicops, оновлені udev-правила для модуля LGE UWB.
  • У компоненті g-camera-pipeline покращено функціональність, пов'язану із записом звуку.
  • Браузерний двигун оновлено до Chromium 91.
  • Компоненти платформи для створення Linux-систем Yocto, що вбудовуються, оновлені до випуску 3.1.
  • У Memory Manager реалізовано обробку сигналів D-Bus.

Додатково можна відзначити проект OpenLGTV, в рамках якого ведеться робота по зворотному інжинірингу прошивок до телевізорів LG з метою розширення їхньої функціональності, усунення помилок та перевірки дотримання копілефт-ліцензій при використанні у прошивках відкритих компонентів (прошивки частково відкриті). Проект розвиває інструментарій epk2extract для вилучення та розшифровування прошивок та різних даних із телевізорів LG, Hisense, Sharp, Philips/TPV та Thompson, а також репозиторій пакетів webOS Brew та інструментарій для отримання прав root на телевізорі (RootMyTV). Проектом надаються складальні оточення для створення системних образів для телевізорів на основі плат LG NC4 та LG115x, та старі модифіковані прошивки для телевізорів Saturn S6, Saturn S7 та LG 2010 та 2011 на базі чіпів Broadcom.

Джерело: opennet.ru

Додати коментар або відгук