Wydanie Weston Composite Server 12.0

Po ośmiu miesiącach prac opublikowano stabilną wersję serwera kompozytowego Weston 12.0, rozwijającą technologie, które przyczyniają się do pojawienia się pełnej obsługi protokołu Wayland w Enlightenment, GNOME, KDE i innych środowiskach użytkownika. Rozwój Westona ma na celu zapewnienie wysokiej jakości bazy kodu i działających przykładów wykorzystania Waylanda w środowiskach stacjonarnych i rozwiązaniach wbudowanych, takich jak platformy dla samochodowych systemów informacyjno-rozrywkowych, smartfony, telewizory i inne urządzenia konsumenckie. Kod projektu jest rozpowszechniany na licencji MIT.

Znacząca zmiana numeru wersji Westona wynika ze zmian w ABI, które zakłócają kompatybilność. Zmiany w nowym oddziale Weston:

  • Dodano backend do organizacji zdalnego dostępu do pulpitu - backed-vnc, który realizuje funkcje podobne do backend-rpd. Protokół VNC jest zaimplementowany przy użyciu aml i schludnyvnc. Obsługiwane jest uwierzytelnianie użytkowników i szyfrowanie kanałów komunikacyjnych (TLS).
  • Dodano backend do pracy z serwerem multimediów PipeWire.
  • Zmiany w backendie DRM (Direct Rendering Manager):
    • Zaimplementowano obsługę konfiguracji z wieloma procesorami graficznymi. Aby włączyć dodatkowe procesory graficzne, proponowana jest opcja „—additional-devices list_output_devices”.
    • Dodano obsługę protokołu kontroli rozrywania w celu wyłączenia synchronizacji pionowej (VSync) za pomocą impulsu wygaszania pionowego, używanego do ochrony przed rozdarciem sygnału wyjściowego. W programach do gier wyłączenie VSync pozwala zmniejszyć opóźnienia w wyświetlaniu obrazu na ekranie kosztem artefaktów spowodowanych rozrywaniem obrazu.
    • Dodano obsługę definiowania typów zawartości dla HDMI (grafika, zdjęcia, filmy i gry).
    • W miarę możliwości dodano i włączono właściwość obrotu płaszczyzną.
    • Dodano obsługę złączy zapisu zwrotnego używanych do robienia zrzutów ekranu.
    • Dodano właściwość określającą poziom przezroczystości płaszczyzny.
    • Do analizowania metadanych EDID używana jest zewnętrzna biblioteka libdisplay-info.
  • Backend-wayland implementuje operacje zmiany rozmiaru przy użyciu rozszerzenia xdg-shell.
  • Do zaplecza zdalnego dostępu backend-rdp dodano wstępną obsługę systemów wielogłowicowych.
  • Backend-headless backend, zaprojektowany do pracy na systemach bez wyświetlacza, dodał obsługę dekoracji wyjściowych używanej do testowania wtyczki color-lcms.
  • Komponent launcher-login jest przestarzały i domyślnie wyłączony, zamiast tego zaleca się użycie launcher-libseat, który obsługuje również logind.
  • libweston/desktop (libweston-desktop) zapewnia obsługę stanu oczekiwania przed podłączeniem bufora wyjściowego do klienta, co można wykorzystać na przykład do uruchomienia klienta od początku w trybie pełnoekranowym.
  • Zaimplementowano protokół weston-output-capture, przeznaczony do tworzenia zrzutów ekranu i będący bardziej funkcjonalnym zamiennikiem starego protokołu weston-screenshooter.
  • Dodano obsługę protokołu xwayland_shell_v1, który umożliwia utworzenie obiektu xwayland_surface_v1 dla konkretnego wl_surface.
  • Biblioteka libweston implementuje obsługę uwierzytelniania użytkowników poprzez PAM i dodaje obsługę wersji 4 interfejsu oprogramowania wl_output.
  • Do procesu kompozytora dodano uproszczony tryb wyboru backendu, powłoki i modułu renderującego, umożliwiający użycie składni „--backend=headless”, „-shell=foo” i „-renderer=gl|pixman” zamiast „-backend=headless-backend.so” „--shell=foo-shell.so” i „-renderer=gl-renderer.so”.
  • Klient Simple-egl obsługuje teraz protokół skali ułamkowej, który pozwala na użycie wartości w skali niecałkowitej, a także zaimplementowano tryb renderowania paneli pionowych.
  • Powłoka dla samochodowych systemów informacyjno-rozrywkowych ivi-shell implementuje aktywację fokusu wprowadzania danych z klawiatury dla powierzchni xdg-Shell, zaimplementowaną w podobny sposób jak aktywacja wprowadzania danych w powłokach Desktop-Shell i kiosk-Shell.
  • Biblioteka współdzielona libweston-desktop jest zintegrowana z biblioteką libweston, połączenie aplikacji z libweston umożliwi dostęp do wszystkich funkcji zapewnianych wcześniej w libweston-desktop.

Źródło: opennet.ru

Dodaj komentarz