Efter åtta månaders utveckling har en stabil version av Weston 12.0-kompositservern publicerats, som utvecklar teknologier som bidrar till framväxten av fullt stöd för Wayland-protokollet i Enlightenment, GNOME, KDE och andra användarmiljöer. Westons utveckling syftar till att tillhandahålla en högkvalitativ kodbas och fungerande exempel för användning av Wayland i skrivbordsmiljöer och inbyggda lösningar, såsom plattformar för fordonsinfotainmentsystem, smartphones, TV-apparater och andra konsumentenheter. Projektkoden distribueras under MIT-licensen.
Westons betydande versionsnummerändring beror på ABI-ändringar som bryter kompatibiliteten. Förändringar i den nya Weston-grenen:
- En backend har lagts till för att organisera fjärråtkomst till skrivbordet - backed-vnc, som utför funktioner som liknar backend-rpd. VNC-protokollet implementeras med hjälp av aml och neatvnc. Användarautentisering och kommunikationskanalkryptering (TLS) stöds.
- Lade till en backend för att arbeta med PipeWire multimediaserver.
- Ändringar i DRM (Direct Rendering Manager) backend:
- Stöd för konfigurationer med flera GPU:er har implementerats. För att aktivera ytterligare GPU:er föreslås alternativet "—additional-devices list_output_devices".
- Lade till stöd för rivningskontrollprotokollet för att inaktivera vertikal synkronisering (VSync) med vertikal släckpuls, som används för att skydda mot rivning i utgången. I spelprogram kan du genom att inaktivera VSync minska förseningar i skärmutdata, på bekostnad av artefakter på grund av rivning.
- Tillagt stöd för att definiera innehållstyper för HDMI (grafik, foton, filmer och spel).
- Egenskapen planrotation har lagts till och aktiverats när det är möjligt.
- Lade till stöd för återskrivningsanslutningar som används för att ta skärmdumpar.
- Lade till en egenskap för att bestämma transparensnivån för ett plan.
- Det externa biblioteket libdisplay-info används för att analysera EDID-metadata.
- Backend-wayland implementerar storleksändringsoperationer med xdg-shell-tillägget.
- Preliminärt stöd för multi-head system har lagts till backend-rdp fjärråtkomst backend.
- Den backend-headless backend, designad för att fungera på system utan en skärm, har lagt till stöd för utgångsdekoration som används för att testa color-lcms-plugin.
- Launcher-login-komponenten har föråldrats och inaktiverats som standard, istället rekommenderas det att använda launcher-libseat, som också stöder inloggning.
- libweston/desktop (libweston-desktop) ger stöd för ett vänteläge innan utgångsbufferten kopplas till klienten, vilket till exempel kan användas för att starta klienten från början i helskärmsläge.
- Weston-output-capture-protokollet har implementerats, designat för att skapa skärmdumpar och fungera som en mer funktionell ersättning för det gamla weston-screenshooter-protokollet.
- Lade till stöd för xwayland_shell_v1-protokollet, vilket låter dig skapa ett xwayland_surface_v1-objekt för en specifik wl_surface.
- Libweston-biblioteket implementerar stöd för användarautentisering via PAM och lägger till stöd för version 4 av mjukvarugränssnittet wl_output.
- Ett förenklat läge för att välja backend, skal och renderare har lagts till i sammansättningsprocessen, vilket tillåter användning av syntaxen "--backend=headless", "-shell=foo" och "-renderer=gl|pixman" istället för "-backend=headless-backend.so" "--shell=foo-shell.so" och "-renderer=gl-renderer.so".
- Simple-egl-klienten har nu stöd för fraktionsskala-protokollet, som tillåter användning av icke-heltalsskalavärden, och ett vertikalt panelrenderingsläge har implementerats.
- Skalet för fordonsinfotainmentsystem ivi-shell implementerar aktiveringen av tangentbordsingångsfokus för xdg-skalets yta, implementerat på ett liknande sätt som aktiveringen av indata i skrivbordsskalet och kioskskalet.
- Det delade biblioteket libweston-desktop är integrerat i libweston-biblioteket, länkning av applikationer med libweston ger tillgång till all funktionalitet som tidigare tillhandahållits i libweston-desktop.
Källa: opennet.ru