เบเบฒเบ™เบ›เปˆเบญเบเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡ Sway 1.2 เป‚เบ”เบเปƒเบŠเป‰ Wayland

เบเบฐเบเบฝเบก เบเบฒเบ™เบ›เปˆเบญเบเบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบš เปเบเบง 1.2, เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰เป‚เบ›เป‚เบ•เบ„เบญเบ™ Wayland เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบชเปˆเบงเบ™เบเบฑเบšเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบเบฐเป€เบšเบทเป‰เบญเบ‡ i3 เปเบฅเบฐเปเบœเบ‡ i3bar. เบฅเบฐเบซเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เบ‚เบฝเบ™เปƒเบ™ C เปเบฅเบฐ เปเบˆเบเบขเบฒเบเป‚เบ”เบ เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” MIT. เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เปเบ™เปƒเบชเปˆเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ Linux เปเบฅเบฐ FreeBSD.

เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš i3 เปเบกเปˆเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡, เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบฅเบฐ IPC, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ Sway เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบ—เบตเปˆเป‚เบ›เปˆเบ‡เปƒเบชเบชเปเบฒเบฅเบฑเบš i3, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Wayland เปเบ—เบ™ X11. Sway เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบงเบฒเบ‡เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเปƒเบ™เบซเบ™เป‰เบฒเบˆเปเบšเปเปˆเปเบกเปˆเบ™เบžเบทเป‰เบ™เบ—เบตเปˆ, เปเบ•เปˆเบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™. Windows เบ–เบทเบเบงเบฒเบ‡เป„เบงเป‰เบขเบนเปˆเปƒเบ™เบ•เบฒเบ‚เปˆเบฒเบเป„เบŸเบŸเป‰เบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบทเป‰เบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบˆเปเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเปเบฅเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบฒเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบขเปˆเบฒเบ‡เป„เบงเบงเบฒเป‚เบ”เบเปƒเบŠเป‰เบžเบฝเบ‡เปเบ•เปˆเปเบ›เป‰เบ™เบžเบดเบก.

เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบชเบปเบกเบšเบนเบ™, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบกเบฒเบžเป‰เบญเบกเบเบฑเบšเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเป€เบซเบ™เบต: เบžเบงเบเป€เบฎเบปเบฒเบเบดเบ™ (เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบทเป‰เบ™เบซเบผเบฑเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ›เบฃเป‚เบ•เบ„เป KDE idle), swaylock (เบ•เบปเบงโ€‹เบ›เบฐโ€‹เบขเบฑเบ”โ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹)โ€‹, เบกเบฒเป‚เบ (เบœเบนเป‰โ€‹เบˆเบฑเบ”โ€‹เบเบฒเบ™โ€‹เปเบˆเป‰เบ‡โ€‹เบเบฒเบ™โ€‹)โ€‹, เบ‚เบตเป‰เบฎเป‰เบฒเบ (เบ–เปˆเบฒเบเบžเบฒเบšเปœเป‰เบฒเบˆเป), เบฅเบญเบ (เป€เบฅเบทเบญเบเบžเบทเป‰เบ™เบ—เบตเปˆเปƒเบ™เบซเบ™เป‰เบฒเบˆเป), wf-เบšเบฑเบ™เบ—เบถเบ (เบ–เปˆเบฒเบโ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)โ€‹, เปเบ–เบšเบ—เบฒเบ‡ (เปเบ–เบšโ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹)โ€‹, virtboard (เปเบ›เป‰เบ™โ€‹เบžเบดเบกโ€‹เบซเบ™เป‰เบฒโ€‹เบˆเปโ€‹)โ€‹, wl-clipboard (เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เบเบฑเบš clipboardโ€‹)โ€‹, wallutils (เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบฎเบนเบšเบงเปเป€เบ›เป€เบ›เบต desktop).

Sway เบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบ›เบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™ modular เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบขเบนเปˆเป€เบ—เบดเบ‡เบซเปเบชเบฐเบซเบกเบธเบ” wlroots, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบžเบทเป‰เบ™เบ–เบฒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบš. Wlroots เบ›เบฐเบเบญเบšเบกเบต backends เบชเปเบฒเบฅเบฑเบš
abstraction เบ‚เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบ™เป‰เบฒเบˆเป, เบญเบธเบ›เบฐเบเบญเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป‚เบ”เบเบเบปเบ‡เบเบฑเบš OpenGL, เบ›เบฐเบ•เบดเบชเปเบฒเบžเบฑเบ™เบเบฑเบš KMS/DRM, libinput, Wayland เปเบฅเบฐ X11 (เบŠเบฑเป‰เบ™เปเบกเปˆเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ X11 เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ Xwayland). เบ™เบญเบเป€เบซเบ™เบทเบญเป„เบ›เบˆเบฒเบ Sway, เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” wlroots เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบซเป‰เบฒเบงเบซเบฑเบ™เปƒเบ™ เป‚เบ„เบ‡เบเบฒเบ™เบญเบทเปˆเบ™เป†เบฅเบงเบกเบ—เบฑเบ‡ Librem5 ะธ cage. เบ™เบญเบเบˆเบฒเบ C/C ++, เบเบฒเบ™เบœเบนเบเบกเบฑเบ”เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเปเบฒเบฅเบฑเบš Scheme, Common Lisp, Go, Haskell, OCaml, Python เปเบฅเบฐ Rust.

เปƒเบ™เบเบฒเบ™เบ›เปˆเบญเบเปƒเบซเบกเปˆ:

  • เป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ›เปˆเบญเบ‡เบขเป‰เบฝเบก
    i3 4.17.

  • เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบซเบผเบฑเบ‡เบˆเบฒเบ restart;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบผเบฑเบšเป€เบžเบทเปˆเบญเป€เบฅเบทเบญเบเบงเบดเบ—เบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบชเบณเบฅเบฑเบšเบเบฒเบ™เปเบเบเปœเป‰เบฒเบˆเปเบญเบญเบเป€เบ›เบฑเบ™เปเบ–เบš เบซเบผเบท เบ”เป‰เบฒเบ™เบ‚เป‰เบฒเบ‡ (เบงเบฒเบ‡เบŠเป‰เบญเบ™เบเบฑเบ™);
  • เบเบปเบ™เป„เบเบเบฒเบ™เบ›เปˆเบฝเบ™เบฎเบนเบšเปเบšเบšเปเบ›เป‰เบ™เบžเบดเบกเป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡, เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ›เบฐเป€เบžเบ”เบญเบธเบ›เบฐเบเบญเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก, เปเบฅเบฐเบ„เปเบฒเบชเบฑเปˆเบ‡เปƒเบซเบกเปˆ xkb_switch_layout เป„เบ”เป‰เบ–เบทเบเบชเบฐเป€เบซเบ™เบต;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบซเบปเบงเบ‚เปเป‰เบ•เบปเบงเบเบฐเบžเบดเบš, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ xcursor_theme เปƒเบซเบกเปˆเบ–เบทเบเบชเบฐเป€เบซเบ™เบต;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเบ›เปŠเบญเบšเบญเบฑเบšเป„เบ›เบซเบฒ layer-shell;
  • เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบญเบฐเบ™เบธเบชเบฑเบ™เบเบฒ Wayland wlr-output-management-v1, เบกเบตเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบญเบธเบ›เบฐเบเบญเบ™เบœเบปเบ™เบœเบฐเบฅเบดเบ”;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เปˆเบฝเบ™เปœเป‰เบฒเบˆเปเปเบšเบšเบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบœเปˆเบฒเบ™ wlr_output API;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ calibration_matrix เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบซเบ™เป‰เบฒเบˆเปเบชเปเบฒเบœเบฑเบ”;
  • เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบผเบ‚เบญเบ‡เปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณเบซเบผเบฒเบเบญเบฑเบ™ เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบเบฒเบ™เบ‚เบฑเบ”เบ‚เป‰เบญเบ‡.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™