Выпуск labwc 0.9.0, ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра для Wayland

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° labwc 0.9.0 (Lab Wayland Compositor), Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр для Wayland с возмоТностями, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Openbox (ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ прСподносится ΠΊΠ°ΠΊ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° создания Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ Openbox для Wayland). Из особСнностСй labwc упоминаСтся ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΠ·ΠΌ, компактная рСализация, ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности настройки ΠΈ высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. АнимированныС эффСкты, Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΈ ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΎΠΊ для ΠΎΠΊΠΎΠ½, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° языкС Π‘ΠΈ ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

Π’ качСствС основы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° wlroots, развиваСмая Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ окруТСния Sway ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Π½Π° Π±Π°Π·Π΅ Wayland. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ надстроСк с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ‚Π°ΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠ°ΠΊ созданиС ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ΠΎΠ², ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΠΎΠ΅Π² Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ столС, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ мСню. Для запуска X11-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Wayland поддСрТиваСтся использованиС DDX-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° XWayland. Π’Π΅ΠΌΠ° оформлСния, Π±Π°Π·ΠΎΠ²ΠΎΠ΅ мСню ΠΈ горячиС клавиши Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ xml. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ встроСнная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° экранов с высокой ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ пиксСлСй (HiDPI).

Помимо встроСнного ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ мСню, настраиваСмого Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ» menu.xml, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ сторонниС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ мСню ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ bemenu, fuzzel ΠΈ wofi. Π’ качСствС ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Waybar, sfwbar, Yambar ΠΈΠ»ΠΈ LavaLauncher. Для управлСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² прСдлагаСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ wlr-randr ΠΈΠ»ΠΈ kanshi. Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° экрана осущСствляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ swaylock. ΠšΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ задСйствован Π² графичСском ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ дистрибутива Raspberry Pi OS ΠΈ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ поддСрТиваСтся Π² срСдах Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола Xfce ΠΈ LXQt.

Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° возмоТностСй Π½ΠΎΠ²ΠΎΠ³ΠΎ выпуска Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ wlroots 0.19, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ рСализация Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Wayland, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Multi-GPU ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ явной синхронизации Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² синхронизации DRM (Direct Rendering Manager).
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Wayland-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ²:
    • ext-data-control β€” позволяСт ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ² Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°.
    • alpha-modifier β€” позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ прозрачности повСрхности ΠΈ Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ прозрачности Π½Π° сторону ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра.
    • xdg-toplevel-icon β€” Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ привязку ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊ ΠΎΠΊΠ½Ρƒ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня.
    • drm-syncobjΒ» β€” прСдоставляСт инструмСнты для явной синхронизации Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² синхронизации DRM (Direct Rendering Manager).
    • ext-image-copy-capture β€” организация Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π½Π° экран.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«lab-sensible-terminalΒ» для запуска эмулятора Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выбираСтся Π½Π° основС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния $TERMINAL). Π’ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ΅ мСню Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΡƒΠ½ΠΊΡ‚ для Π²Ρ‹Π·ΠΎΠ²Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠΉ Π·Π°Π»ΠΈΠ²ΠΊΠΈ области Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π°. Для настройки Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ:
    • window.*.title.bg: Solid | Gradient ( Vertical | SplitVertical )
    • window.*.title.bg.colorTo:
    • window.*.title.bg.color.splitTo:
    • window.*.title.bg.colorTo.splitTo:
  • Π’ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈ запускС с опциями Β«-vΒ» (Β«β€”versionΒ») Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° информация ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… возмоТностях, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Β«+xwayland -rsvgΒ».
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° рСсурсов DRM (Direct Rendering Manager Leases) ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ XWayland.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка <windowRule iconPriority=Β»client|serverΒ»> для Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° поиска ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Ρ… Ρ‚Π΅ΠΌ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… с использованиСм синтаксиса X11-color-names ΠΈ β€˜#rgb’.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° XWayland-свойства _NET_WM_ICON ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ iconPriority для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка Β«<core><primarySelection>Β», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ срСдним колСсом ΠΌΡ‹ΡˆΠΈ Π² Chromium ΠΈ прилоТСниях Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ Electron Π±Π΅Π· Π½Π΅ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠΉ вставки Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°.
  • ΠžΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ вСрсии Wayland-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ²p xdg_shell ΠΈ wl_compositor.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° ΠΌΡ‹ΡˆΠ°Ρ….
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ настройки для libinput:
    • Β«<threeFingerDrag>Β»
    • Β«<dragLock>sticky</dragLock>Β»
    • Β«<scrollMethod>none|twofinger|edge</scrollMethod>Β»
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Β«{left,right}-occupiedΒ» для упрощСния Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ столами, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ ΠΎΠΊΠ½Π°.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка Β«<theme><dropShadowsOnTiled>Β» для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π° Ρ‚Π΅Π½ΠΈ для ΠΌΠΎΠ·Π°ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΊΠΎΠ½.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° эмуляции ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ колСсом ΠΌΡ‹ΡˆΠΈ, для управлСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ EnableScrollWheelEmulation, DisableScrollWheelEmulation ΠΈ ToggleScrollWheelEmulation.

 Выпуск labwc 0.9.0, ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра для Wayland
 Выпуск labwc 0.9.0, ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра для Wayland


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ