Budgie Desktop ย้ายจาก GTK เป็น EFL Libraries โดยโครงการตรัสรู้

นักพัฒนาของสภาพแวดล้อมเดสก์ท็อป Budgie ได้ตัดสินใจย้ายออกจากการใช้ห้องสมุด GTK เพื่อหันไปใช้ห้องสมุด EFL (Enlightenment Foundation Library) ที่พัฒนาโดยโครงการ Enlightenment ผลลัพธ์ของการย้ายจะนำเสนอในการเปิดตัว Budgie 11 เป็นที่น่าสังเกตว่านี่ไม่ใช่ความพยายามครั้งแรกที่จะเลิกใช้ GTK - ในปี 2017 โครงการได้ตัดสินใจเปลี่ยนไปใช้ Qt แล้ว แต่ภายหลังมีการแก้ไขแผนใน หวังว่าสถานการณ์จะเปลี่ยนไปใน GTK4

น่าเสียดายที่ GTK4 ไม่เป็นไปตามความคาดหวังของนักพัฒนาเนื่องจากยังคงมุ่งเน้นเฉพาะความต้องการของโครงการ GNOME ซึ่งนักพัฒนาไม่รับฟังความคิดเห็นของโครงการทางเลือกและไม่เต็มใจที่จะพิจารณาความต้องการของพวกเขา แรงผลักดันหลักในการย้ายออกจาก GTK คือแผนการของ GNOME ที่จะเปลี่ยนแปลงวิธีการทำงานกับสกิน ซึ่งทำให้การสร้างสกินแบบกำหนดเองในโครงการของบุคคลที่สามทำได้ยาก โดยเฉพาะอย่างยิ่ง รูปแบบของอินเทอร์เฟซแพลตฟอร์มจัดทำโดยไลบรารี libadwaita ซึ่งเชื่อมโยงกับธีม Adwaita

ผู้สร้างสภาพแวดล้อมของบุคคลที่สามที่ไม่ต้องการใช้อินเทอร์เฟซ GNOME ซ้ำทั้งหมดควรเตรียมไลบรารีของตนสำหรับการประมวลผลรูปแบบ แต่ในกรณีนี้ มีความไม่สอดคล้องกันในการออกแบบแอปพลิเคชันที่ใช้ไลบรารีทางเลือกและไลบรารีธีมของแพลตฟอร์ม ไม่มีวิธีดั้งเดิมในการเพิ่มคุณสมบัติเพิ่มเติมให้กับ libadwaita และการพยายามเพิ่ม Recoloring API ที่อนุญาตให้เปลี่ยนสีในแอปพลิเคชันได้ง่ายนั้นไม่สามารถตกลงกันได้ เนื่องจากความกังวลว่าธีมที่ไม่ใช่ Adwaita อาจส่งผลเสียต่อคุณภาพของแอปพลิเคชันสำหรับ GNOME และ ทำให้ยากต่อการวิเคราะห์ปัญหาที่ผู้ใช้ ดังนั้นผู้พัฒนาเดสก์ท็อปทางเลือกจึงติดธีม Adwaita

ในบรรดาคุณสมบัติของ GTK4 ที่ทำให้นักพัฒนา Budgie ไม่พอใจ การยกเว้นความเป็นไปได้ในการเปลี่ยนวิดเจ็ตบางอย่างผ่านการสร้างคลาสย่อย การถ่ายโอนไปยังหมวดหมู่ของ X11 API ที่ล้าสมัยซึ่งเข้ากันไม่ได้กับ Wayland (ตัวอย่างเช่น ใน Budgie เรียก GdkScreen และใช้ GdkX11Screen เพื่อกำหนดการเชื่อมต่อและเปลี่ยนการกำหนดค่าของจอภาพ) ) ปัญหาการเลื่อนในวิดเจ็ต GtkListView และไม่สามารถจัดการเหตุการณ์เมาส์และแป้นพิมพ์ใน GtkPopovers หากหน้าต่างไม่อยู่ในโฟกัส

หลังจากชั่งน้ำหนักข้อดีและข้อเสียทั้งหมดของการเปลี่ยนไปใช้ชุดเครื่องมือทางเลือก นักพัฒนาได้ข้อสรุปว่าสิ่งที่ดีที่สุดคือการเปลี่ยนโครงการไปใช้ไลบรารี EFL การเปลี่ยนไปใช้ Qt ถือเป็นปัญหาเนื่องจากการผูกไลบรารีนี้กับ C ++ และความไม่แน่นอนในนโยบายการออกใบอนุญาตในอนาคต โค้ดของ Budgie ส่วนใหญ่เขียนด้วยภาษา Vala แต่อนุญาตให้ใช้ชุดเครื่องมือ C หรือ Rust เป็นตัวเลือกการย้ายข้อมูลได้

สำหรับการแจกจ่าย Solus โปรเจ็กต์จะยังคงสร้างรุ่นทางเลือกตาม GNOME ต่อไป แต่งานสร้างนี้จะถูกทำเครื่องหมายว่าไม่มีการดูแลโดยโครงการ และวางไว้ในส่วนแยกต่างหากในหน้าดาวน์โหลด หลังจากการเปิดตัว Budgie 11 นักพัฒนาจะประเมินความสามารถของมันเทียบกับ GNOME Shell และตัดสินใจว่าจะสร้างรุ่น GNOME ต่อหรือหยุด โดยจัดเตรียมเครื่องมือสำหรับย้ายไปยังรุ่น Budgie 11 ไปยังแอนะล็อก รวมถึงเครื่องมือที่พัฒนาภายในโครงการ ตัวอย่างเช่น มีแผนที่จะพัฒนาศูนย์ติดตั้งแอปพลิเคชันของตนเอง

จำได้ว่าเดสก์ท็อป Budgie มีการติดตั้ง GNOME Shell, พาเนล, แอพเพล็ตและระบบการแจ้งเตือนของตัวเอง ในการจัดการหน้าต่าง จะใช้ตัวจัดการหน้าต่าง Budgie Window Manager (BWM) ซึ่งเป็นการดัดแปลงเพิ่มเติมของปลั๊กอิน Mutter พื้นฐาน Budgie ใช้แผงควบคุมที่คล้ายกับการจัดระเบียบในแผงควบคุมเดสก์ท็อปแบบคลาสสิก องค์ประกอบแผงทั้งหมดเป็นแอปเพล็ต ซึ่งช่วยให้คุณปรับแต่งองค์ประกอบได้อย่างยืดหยุ่น เปลี่ยนเค้าโครง และแทนที่การใช้องค์ประกอบแผงหลักตามที่คุณต้องการ แอพเพล็ตที่มีอยู่ประกอบด้วยเมนูแอปพลิเคชันแบบคลาสสิก ตัวสลับงาน พื้นที่รายการหน้าต่างที่เปิดอยู่ มุมมองเดสก์ท็อปเสมือน ไฟแสดงสถานะการจัดการพลังงาน แอปเพล็ตควบคุมระดับเสียง ไฟแสดงสถานะระบบ และนาฬิกา

Budgie Desktop ย้ายจาก GTK เป็น EFL Libraries โดยโครงการตรัสรู้


ที่มา: opennet.ru

เพิ่มความคิดเห็น