ืžื”ื“ื•ืจืช ืกื‘ื™ื‘ื” ืžื•ืชืืžืช ืื™ืฉื™ืช ืฉืœ Sway 1.2 ื‘ืืžืฆืขื•ืช Wayland

ืžื•ึผื›ึธืŸ ืฉื—ืจื•ืจ ืžื ื”ืœ ืžื•ืจื›ื‘ ืžืชื ื“ื ื“ 1.2, ืฉื ื‘ื ื” ื‘ืืžืฆืขื•ืช ืคืจื•ื˜ื•ืงื•ืœ Wayland ื•ืชื•ืื ื‘ืื•ืคืŸ ืžืœื ืœืžื ื”ืœ ื”ื—ืœื•ื ื•ืช ืขื ื”ืืจื™ื—ื™ื i3 ื•ืคืื ืœ i3bar. ืงื•ื“ ื”ืคืจื•ื™ืงื˜ ื›ืชื•ื‘ ื‘-C ื• ืžื•ืคืฅ ืขืœ ื™ื“ื™ ืชื—ืช ืจื™ืฉื™ื•ืŸ MIT. ื”ืคืจื•ื™ืงื˜ ืžื™ื•ืขื“ ืœืฉื™ืžื•ืฉ ืขืœ ืœื™ื ื•ืงืก ื•- FreeBSD.

ืชืื™ืžื•ืช i3 ืžืกื•ืคืงืช ื‘ืจืžืช ื”ืคืงื•ื“ื”, ืงื•ื‘ืฅ ื”ืชืฆื•ืจื” ื•ื”-IPC, ื•ืžืืคืฉืจืช ืœื”ืฉืชืžืฉ ื‘-Sway ื›ืชื—ืœื™ืฃ i3 ืฉืงื•ืฃ ื”ืžืฉืชืžืฉ ื‘-Wayland ื‘ืžืงื•ื X11. Sway ืžืืคืฉืจ ืœืš ืœืžืงื ื—ืœื•ื ื•ืช ืขืœ ื”ืžืกืš ืœื ื‘ืฆื•ืจื” ืžืจื—ื‘ื™ืช, ืืœื ื‘ืื•ืคืŸ ื”ื’ื™ื•ื ื™. ื—ืœื•ื ื•ืช ืžืกื•ื“ืจื™ื ื‘ืจืฉืช ื”ืžื ืฆืœืช ืืช ืฉื˜ื— ื”ืžืกืš ื‘ืฆื•ืจื” ืื•ืคื˜ื™ืžืœื™ืช ื•ืžืืคืฉืจืช ืœืš ืœื‘ืฆืข ืžื ื™ืคื•ืœืฆื™ื” ืžื”ื™ืจื” ืฉืœ ื—ืœื•ื ื•ืช ื‘ืืžืฆืขื•ืช ื”ืžืงืœื“ืช ื‘ืœื‘ื“.

ื›ื“ื™ ืœื™ืฆื•ืจ ืกื‘ื™ื‘ืช ืžืฉืชืžืฉ ืฉืœืžื”, ืžื•ืฆืขื™ื ื”ืจื›ื™ื‘ื™ื ื”ื ืœื•ื•ื™ื ื”ื‘ืื™ื: ืื›ืœื ื• (ืชื”ืœื™ืš ืจืงืข ื”ืžื™ื™ืฉื ืืช ืคืจื•ื˜ื•ืงื•ืœ ื”-Idle KDE), ืกื•ื•ื™ื™ืœื•ืง (ืฉื•ืžืจ ืžืกืš), mako (ืžื ื”ืœ ื”ื•ื“ืขื•ืช), ืงื•ื“ืจ (ืฆื™ืœื•ื ืžืกืš), ืœื’ื™ืžื” (ื‘ื—ื™ืจืช ืื–ื•ืจ ืขืœ ื”ืžืกืš), ืžืงืœื™ื˜ wf (ืฆื™ืœื•ื ื•ื™ื“ืื•), ืกืจื’ืœ ื“ืจืš (ืกืจื’ืœ ื™ื™ืฉื•ืžื™ื), ื•ื™ืจื˜ื‘ื•ืจื“ (ืžืงืœื“ืช ืžืกืš), ืœื•ื— ืœื•ื— wl (ืขื•ื‘ื“ ืขื ื”ืœื•ื—), wallutils (ื ื™ื”ื•ืœ ื˜ืคื˜ื™ื ืฉื•ืœื—ื ื™ื™ื).

Sway ืžืคื•ืชื— ื›ืคืจื•ื™ืงื˜ ืžื•ื“ื•ืœืจื™ ืฉื ื‘ื ื” ืขืœ ื’ื‘ื™ ืกืคืจื™ื™ื” ืฉื•ืจืฉื™ื, ื”ืžื›ื™ืœ ืืช ื›ืœ ื”ืคืจื™ืžื™ื˜ื™ื‘ื™ื ื”ื‘ืกื™ืกื™ื™ื ืœืืจื’ื•ืŸ ืขื‘ื•ื“ืชื• ืฉืœ ืžื ื”ืœ ืžื•ืจื›ื‘. Wlroots ื›ื•ืœืœ backends ืขื‘ื•ืจ
ื”ืคืฉื˜ื” ืฉืœ โ€‹โ€‹ื’ื™ืฉื” ืœืžืกืš, ื”ืชืงื ื™ ืงืœื˜, ืจื™ื ื“ื•ืจ ืœืœื ื’ื™ืฉื” ื™ืฉื™ืจื” ืœ-OpenGL, ืื™ื ื˜ืจืืงืฆื™ื” ืขื KMS/DRM, libinput, Wayland ื•-X11 (ื ื™ืชืŸ ืฉื›ื‘ื” ืœื”ืคืขืœืช ื™ื™ืฉื•ืžื™ X11 ื”ืžื‘ื•ืกืกื™ื ืขืœ Xwayland). ื‘ื ื•ืกืฃ ืœ-Sway, ืกืคืจื™ื™ืช wlroots ื ืžืฆืืช ื‘ืฉื™ืžื•ืฉ ืคืขื™ืœ ื‘ ืคืจื•ื™ืงื˜ื™ื ืื—ืจื™ืืœึฐืจึทื‘ึผื•ึนืช Librem5 ะธ ื›ืœื•ื‘. ื‘ื ื•ืกืฃ ืœ-C/C++, ืคื•ืชื—ื• ื›ืจื™ื›ื•ืช ืขื‘ื•ืจ Scheme, Common Lisp, Go, Haskell, OCaml, Python ื•-Rust.

ื‘ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื”:

  • ื ืขืฉืชื” ืขื‘ื•ื“ื” ืœืฉื™ืคื•ืจ ื”ืชืื™ืžื•ืช ืขื ืžื ื”ืœ ื”ื—ืœื•ื ื•ืช
    i3 4.17.

  • ื ื•ืกืคื” ืืคืฉืจื•ืช ืœื”ืคืขื™ืœ ืืช ื”ื™ื™ืฉื•ื ืœืื—ืจ ื”ืคืขืœื” ืžื—ื“ืฉ;
  • ื ื•ืกืฃ ืžืชื’ ืœื‘ื—ื™ืจืช ืฉื™ื˜ืช ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืœืคื™ืฆื•ืœ ื—ืœื•ื ื•ืช ืœืœืฉื•ื ื™ื•ืช ืื• ื–ื” ืœืฆื“ ื–ื” (ืžื•ืขืจืžื™ื);
  • ื”ืžื ื’ื ื•ืŸ ืœื”ื—ืœืคืช ืคืจื™ืกื•ืช ืžืงืœื“ืช ืฉื•ืคืจ, ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืงื‘ื™ืขืช ืกื•ื’ื™ ื”ืชืงืŸ ืงืœื˜, ื•ื”ื•ืฆืขื” ืคืงื•ื“ื” ื—ื“ืฉื” xkb_switch_layout;
  • ื ื•ืกืคื” ืชืžื™ื›ื” ืขื‘ื•ืจ ืขืจื›ื•ืช ื ื•ืฉื ืฉืœ ืกืžืŸ, ืœืฉื™ื ื•ื™ ื”ืคืงื•ื“ื” ื”ื—ื“ืฉื” xcursor_theme ื”ืžื•ืฆืขืช;
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ื—ืœื•ื ื•ืช ืงื•ืคืฆื™ื ืœืžืขื˜ืคืช ืฉื›ื‘ื”;
  • ื”ื˜ืžื™ืขื” ืชืžื™ื›ื” ื‘ืคืจื•ื˜ื•ืงื•ืœ Wayland wlr-output-management-v1, ืžื™ื•ืขื“ ืœื”ื’ื“ืจืช ื”ืชืงื ื™ ืคืœื˜;
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืฉื™ื ื•ื™ ืื˜ื•ืžื™ ืฉืœ ื”ื’ื“ืจื•ืช ืžืกืš ื‘ืืžืฆืขื•ืช ืžืžืฉืง API ืฉืœ wlr_output;
  • ื ื•ืกืคื” ื”ื’ื“ืจืช calibration_matrix ืขื‘ื•ืจ ื›ื™ื•ืœ ืžืกืš ืžื’ืข;
  • ืชื•ืงืŸ ืžืกืคืจ ื“ืœื™ืคื•ืช ื–ื™ื›ืจื•ืŸ ื•ื‘ืขื™ื•ืช ืงืจื™ืกื”.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”