Opublikowano wydanie otwartej platformy webOS Open Source Edition 2.19, która może być stosowana na różnych urządzeniach przenośnych, płytach oraz w samochodowych systemach infotainment. Jako standardowa platforma sprzętowa brane są pod uwagę płyty Raspberry Pi 4. Platforma rozwija się w publicznym repozytorium na licencji Apache 2.0, a rozwój jest nadzorowany przez społeczność, zgodnie z modelem współpracy w zakresie zarządzania rozwojem.
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).
Główne zmiany w nowej wersji:
- Ulepszono ekran domowy (Home App), w którym dodano pasek stanu z zestawem najczęściej wykorzystywanych funkcji. Umożliwiono dowolną edycję zawartości panelu z aplikacjami. Dodano nowe gesty ekranowe.

- W skład platformy wchodzi aplikacja Video Call do wykonywania połączeń wideo i organizowania wirtualnych spotkań wideo. Na obecnym etapie obsługiwana jest jedynie łączność przez Cisco Webex i Microsoft Teams.

- Udostępniono środowisko wiersza poleceń do tworzenia własnych aplikacji z portfelami blockchainowymi (Blockchain Wallet), które ułatwia wykonywanie takich operacji, jak podpisywanie transakcji i rejestrowanie tych transakcji w blockchainie.
- W Enact Browser dodano wsparcie dla usługi wykrywania złośliwego oprogramowania oraz zaimplementowano wyskakujące okno z prośbą o uprawnienia u użytkownika.
- W dźwiękowym serwerze audiod dodano obsługę wykrywania wbudowanych i zewnętrznych urządzeń dźwiękowych. W systemowej usłudze (Sys Service) dodano wsparcie dla wtórnych urządzeń dźwiękowych (subdevices), wbudowanych kart dźwiękowych oraz kamer MIPI. W PulseAudio wykorzystano mechanizm redukcji echa ECNR (Echo Cancellation Noise Reduction).
- Komponenty platformy do tworzenia wbudowanych systemów Linux Yocto zaktualizowano do wydania 4.0.
- Silnik przeglądarki zaktualizowano do wersji Chromium 94 (wcześniej używano Chromium 91). Dla aplikacji webowych webOS dodano możliwość używania kontrolerów gier.
- Zaktualizowano czcionki Noto (dodano wsparcie dla symboli Unicode 15.0.0).
- Dokonano przesiadki na Qt 6.4. Framework webowy Enact zaktualizowano do wersji 4.5.0.
Źródło: opennet.ru


