Wayland 1.23 เปิดตัวแล้วและนี่คือข่าวของมัน

Wayland

หลังจากพัฒนามานานกว่าหนึ่งปี การเปิดตัว Wayland 1.23 เวอร์ชันใหม่, เวอร์ชันไหนมีการปรับปรุงใน wayland-scanner รวมถึงการปรับปรุงการสนับสนุน API ใหม่ การแก้ไขข้อบกพร่อง และอื่นๆ อีกมากมาย

สำหรับผู้ที่ไม่คุ้นเคยกับ Wayland สิ่งสำคัญคือต้องรู้ โปรโตคอลนี้อำนวยความสะดวกในการโต้ตอบระหว่างเซิร์ฟเวอร์คอมโพสิตและแอปพลิเคชันที่ทำงานร่วมกับเซิร์ฟเวอร์ดังกล่าว- ไคลเอนต์จัดการการเรนเดอร์หน้าต่างของตนในบัฟเฟอร์แยกต่างหากและสื่อสารการอัพเดตไปยังเซิร์ฟเวอร์คอมโพสิต เซิร์ฟเวอร์นี้จะรวมเนื้อหาของบัฟเฟอร์ของแอปพลิเคชันแต่ละรายการเพื่อสร้างผลลัพธ์สุดท้าย โดยคำนึงถึงแง่มุมต่างๆ เช่น การทับซ้อนของหน้าต่างและความโปร่งใส

กล่าวอีกนัยหนึ่ง เซิร์ฟเวอร์คอมโพสิตของ Wayland ไม่มี API สำหรับการแสดงผลองค์ประกอบแต่ละรายการ แต่ทำงานบนหน้าต่างที่สร้างไว้แล้วแทน ซึ่งช่วยลดความจำเป็นในการบัฟเฟอร์ซ้ำซ้อนเมื่อใช้ไลบรารีระดับสูง เช่น GTK และ Qt ซึ่งมีหน้าที่ในการจัดการเนื้อหาหน้าต่าง

ข่าวหลักของ Wayland 1.23

สาขา 1.23 รักษาความเข้ากันได้แบบย้อนหลังในระดับ API และ ABI ด้วยเวอร์ชัน 1.x และมุ่งเน้นไปที่การแก้ไขข้อบกพร่องและการอัปเดตเล็กน้อยของโปรโตคอลเป็นหลัก และในเวอร์ชันใหม่ที่นำเสนอนี้ หนึ่งในคุณสมบัติใหม่ที่นำเสนออยู่ใน libwayland เนื่องจากมีการนำ API มาใช้ซึ่งช่วยให้ไคลเอนต์กำหนดขนาดสูงสุดของบัฟเฟอร์ได้ ของการเชื่อมต่อภายในฝั่งเซิร์ฟเวอร์

ขนาดบัฟเฟอร์พื้นฐานสูงสุดถูกตั้งค่าผ่านอินเทอร์เฟซ wl_displayและ API ใหม่ช่วยให้ไคลเอนต์สามารถปรับได้ตามการเชื่อมต่อไคลเอนต์- การเปลี่ยนแปลงนี้ทำให้สามารถใช้บัฟเฟอร์ที่ใหญ่ขึ้นบนไคลเอ็นต์ Wayland ที่เฉพาะเจาะจง เช่น Xwayland ซึ่งมีเหตุการณ์อินพุตที่เข้มข้นมากขึ้น

การเปลี่ยนแปลงอีกอย่างที่โดดเด่นในเวอร์ชันใหม่นี้คือการเปลี่ยนแปลงใน คำขอ เหตุการณ์ และการแจงนับเนื่องจากขณะนี้สามารถใช้แอตทริบิวต์ XML "เลิกใช้แล้วตั้งแต่" ได้ เพื่อทำเครื่องหมายรายการว่าล้าสมัย ใน Wayland คำขอคือข้อความที่ไคลเอ็นต์ส่งไปยังเซิร์ฟเวอร์ เหตุการณ์คือข้อความที่ส่งจากเซิร์ฟเวอร์ไปยังไคลเอนต์ และแจงนับคือชุดของค่าตัวเลขที่เกี่ยวข้องกับชื่อเฉพาะที่จัดการโดยโปรโตคอล

นอกจากนี้ เพิ่มโหมด "enum-header" แล้ว ไปยังยูทิลิตี้ wayland-scanner, ออกแบบมาเพื่อสร้างไฟล์ส่วนหัวและโค้ดในภาษา C อิงตามไฟล์ XML ที่อธิบายโปรโตคอล รวมถึงเฉพาะ "enums" ในไฟล์ส่วนหัว นอกจากนี้การเปลี่ยนแปลงอีกอย่างหนึ่งก็คือ wayland-scanner ขณะนี้มีการสร้างฟังก์ชันการตรวจสอบ (เครื่องมือตรวจสอบความถูกต้อง) สำหรับ "enums" บนฝั่งเซิร์ฟเวอร์

ในทางกลับกันก็มีการเพิ่ม รองรับ OpenBSDได้ถูกเพิ่มเข้ามาแล้ว ความสามารถในการกำหนดชื่อให้กับคิวเหตุการณ์เพื่อทำให้การดีบักง่ายขึ้น เพิ่มฟังก์ชั่นแล้ว wl_client_get_user_data() y wl_client_set_user_data() เพื่ออำนวยความสะดวกในการเชื่อมโยงข้อมูลโดยพลการกับลูกค้าและเพิ่มคำขอแล้ว wl_shm.release เพื่อให้ไคลเอนต์แจ้งเซิร์ฟเวอร์ให้หยุดใช้ออบเจ็กต์ที่ใช้ร่วมกัน จึงทำให้เซิร์ฟเวอร์เพิ่มหน่วยความจำที่เกี่ยวข้อง

ในส่วนของ การเปลี่ยนแปลงที่เกี่ยวข้องกับ Wayland ต่อแอปพลิเคชัน สภาพแวดล้อมเดสก์ท็อป และการแจกจ่ายจะมีการเน้นสิ่งต่อไปนี้:

  • เอ็กซ์เวย์แลนด์ 24.1.0 ได้รับการเผยแพร่พร้อมการสนับสนุนเทคโนโลยี Explicit Sync และการสนับสนุนที่ได้รับการปรับปรุงสำหรับสถาปัตยกรรมการเร่งความเร็ว GLAMOR และ EXA 2D
  • โครงการ wprs พัฒนาตัวจัดการเซสชันสำหรับ Wayland ซึ่งคล้ายกับยูทิลิตี้การแสดงผล แต่สำหรับแอปพลิเคชันกราฟิก
  • การเปิดตัวสภาพแวดล้อมเดสก์ท็อป LXQt2.0.0 ด้วยการรองรับ Wayland ในตัวจัดการไฟล์ PCManFM-Qt, ระบบการแจ้งเตือน, เดสก์ท็อป, Runner, แดชบอร์ด, อินเทอร์เฟซการออกจากระบบ, อินเทอร์เฟซการตั้งค่า LXQt และแอปพลิเคชันส่วนใหญ่
  • การทำงานเพื่อดำเนินการสนับสนุน Wayland ใน Xfce.
  • การสนับสนุนเบื้องต้นสำหรับ Wayland ในสภาพแวดล้อมเดสก์ท็อป นก.
  • การสนับสนุนเบื้องต้นสำหรับ Wayland ในสภาพแวดล้อมเดสก์ท็อป อบเชย.
  • การโยกย้ายเดสก์ท็อป MATE เวย์แลนด์ใกล้จะเสร็จสมบูรณ์แล้ว
  • KDE 6 เสนอเซสชันเริ่มต้นที่ใช้โปรโตคอล Wayland ดำเนินการสนับสนุนส่วนขยาย Wayland สำหรับการจัดการสี
  • รองรับ Wayland ในตัวแก้ไขข้อความ GNU Emacs.
  • เซสชั่นตาม Wayland GNOME รวมถึงการสนับสนุนซอฟต์แวร์สวิตช์ KVM อินพุตก้าวกระโดดซึ่งช่วยให้คุณใช้แป้นพิมพ์และเมาส์ตัวเดียวเพื่อควบคุมคอมพิวเตอร์หลายเครื่อง
  • รุ่นเดสก์ท็อป Fedora KDE หยุดการสนับสนุนเซสชันที่ใช้ X11 ในการกระจายฐาน
  • ปรับปรุงการรองรับสภาพแวดล้อมที่ใช้ Wayland บนตัวควบคุมที่เป็นกรรมสิทธิ์ NVIDIA.
  • มีการติดตั้งไดรเวอร์ที่อนุญาตให้ใช้งาน ไวน์ ในสภาพแวดล้อมที่ใช้โปรโตคอล Wayland โดยไม่ใช้ส่วนประกอบ XWayland และ X11
  • เวอร์ชันลินุกซ์ของ Firefox เปิดใช้งานตามค่าเริ่มต้นเพื่อใช้เซิร์ฟเวอร์คอมโพสิต Wayland แทน XWayland สามารถสร้างแอสเซมบลีที่รองรับการทำงานเฉพาะใน Wayland เท่านั้น

ในที่สุด สำหรับใครที่สนใจอยากลองเวอร์ชั่นใหม่นี้ คุณสามารถดาวน์โหลดซอร์สโค้ดสำหรับบิลด์ของคุณได้จาก ลิงค์ต่อไปนี้