Wydano wersję otwartej platformy webOS Open Source Edition 2.24, która może być stosowana w różnych urządzeniach przenośnych, płytach oraz systemach infotainment w samochodach. Jako referencyjna platforma sprzętowa uznawane są płyty Raspberry Pi 4. Platforma rozwija się w publicznym repozytorium na licencji Apache 2.0, a rozwój jest nadzorowany przez społeczność, stosując model współpracy w zarządzaniu rozwojem.
Główne zmiany w nowej wersji:
- Przeprowadzono refaktoryzację usług multimedialnych, mającą na celu wyeliminowanie powiązań między mediami a serwerem multimedialnym (uMediaServer), przez co w celu realizacji niektórych funkcji programista musiał wcześniej wywoływać metody z różnych interfejsów API.
- Dodano nową uniwersalną usługę com.webos.service.mediarecorder do nagrywania wideo z kamery oraz dźwięku z mikrofonu.
- Wprowadzono oddzielną funkcjonalność do organizacji podglądu danych z kamery, zależną wyłącznie od API com.webos.service.camera2 (wcześniej konieczne było korzystanie z API com.webos.service.camera2 oraz com.webos.media razem).
- Silnik przeglądarki zaktualizowano do bazy kodu Chromium 108 (wcześniej używana była wersja Chromium 94).
- Zapewniono wsparcie dla kompilacji z Qt 6.7.0.
- Udoskonalono zarządzanie pamięcią w komponencie do pracy z kamerą g-camera-pipeline.
- W przeglądarce Enact usunięto problem z aktualizowaniem adresu URL w pasku adresu.
- W emulatorze naprawiono problemy ze kompilacją standardowych aplikacji Qt.
- Dokumentacja API com.palm.service.tellurium została opracowana, aby wspierać interakcję z aplikacjami webowymi.
Platforma webOS została pierwotnie opracowana przez firmę Palm w 2008 roku i była stosowana w smartfonach Palm Pre oraz Pixie. W 2010 roku, po przejęciu firmy Palm, platforma przeszła w ręce Hewlett-Packard, która próbowała wykorzystać tę platformę w swoich drukarkach, tabletach, laptopach i komputerach PC. W 2012 roku firma HP ogłosiła, że webOS stanie się niezależnym projektem otwartym, a w 2013 roku zaczęła udostępniać kody źródłowe jego komponentów. W 2013 roku platforma została wykupiona od Hewlett-Packard przez firmę LG i obecnie jest stosowana w ponad 70 milionach telewizorów i urządzeń konsumenckich LG. W 2018 roku powstał projekt webOS Open Source Edition, dzięki któremu firma LG próbowała wrócić do otwartego modelu rozwoju, zaangażować innych uczestników oraz rozszerzyć zakres wspieranych urządzeń w webOS.
Środowisko systemowe webOS jest tworzone za pomocą narzędzi i podstawowych pakietów OpenEmbedded, a także systemu budowania i zestawu metadanych z projektu Yocto. Kluczowymi komponentami webOS są menedżer systemu i aplikacji (SAM, System and Application Manager), odpowiedzialny za uruchamianie aplikacji i usług, oraz Luna Surface Manager (LSM), kształtujący interfejs użytkownika. Komponenty napisane są za pomocą frameworka Qt oraz silnika przeglądarki Chromium.
Renderowanie odbywa się za pośrednictwem menedżera kompozycji, który wykorzystuje protokół Wayland. Do tworzenia aplikacji użytkownika zaleca się używanie technologii webowych (CSS, HTML5 i JavaScript) oraz frameworka Enact, opartego na React, ale możliwe jest także tworzenie programów w C i C++ z interfejsem opartym na Qt. Powłoka użytkownika oraz wbudowane aplikacje graficzne są głównie realizowane jako natywne programy, napisane przy użyciu technologii QML. Domyślnie oferowana jest powłoka Home Launcher, zoptymalizowana do obsługi z ekranów dotykowych i oferująca koncepcję przełączających się kart (zamiast okien).
Do przechowywania danych w ustrukturyzowanej formie z wykorzystaniem formatu JSON używane jest magazyn DB8, które jako backend wykorzystuje bazę danych LevelDB. Do inicjalizacji używany jest bootd oparty na systemd. Do przetwarzania multimediów oferowane są podsystemy uMediaServer i Media Display Controller (MDC), a do dźwięku stosowane jest PulseAudio. serwera Do automatycznego aktualizowania oprogramowania używany jest OSTree oraz atomowa wymiana partycji (tworzone są dwie partycje systemowe, z których jedna jest aktywna, a druga służy do kopiowania aktualizacji).

Źródło: opennet.ru
