สภาพแวดล้อมเดสก์ท็อป FyneDesk เผชิญแรงกดดันจากชุมชนให้ยกเลิก X11 เพื่อรองรับ Wayland

ทีมชุมชน BigGo
สภาพแวดล้อมเดสก์ท็อป FyneDesk เผชิญแรงกดดันจากชุมชนให้ยกเลิก X11 เพื่อรองรับ Wayland

FyneDesk สภาพแวดล้อมเดสก์ท็อป Linux ที่สร้างด้วยภาษาโปรแกรม Go ของ Google และ toolkit Fyne ได้จุดประกายการอภิปรายที่ร้อนแรงในชุมชนเกี่ยวกับการพึ่งพา X11 ต่อไปแทนที่จะนำ Wayland display protocol ที่ใหม่กว่ามาใช้ โครงการนี้ซึ่งปฏิบัติตามหลักการ material design และมุ่งหวังให้เป็นมิตรกับทั้งผู้ใช้และนักพัฒนา กำลังเผชิญแรงกดดันที่เพิ่มขึ้นจากผู้ใช้ที่มองว่าการรองรับ Wayland เป็นสิ่งจำเป็นสำหรับระบบ Linux สมัยใหม่

การเปลี่ยนผ่านสู่ Wayland กลายเป็นจุดขัดแย้งหลัก

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

การเปลี่ยนผ่านนี้เป็นความท้าทายทางเทคนิคที่สำคัญ ซึ่งแตกต่างจากแอปพลิเคชันทั่วไปที่สามารถทำงานบน Wayland ผ่าน compatibility layers window managers และสภาพแวดล้อมเดสก์ท็อปต้องการการรองรับแบบ native ทีมพัฒนากำลังรอการแก้ไขใน upstream libraries ก่อนจะเริ่มงานการใช้งาน Wayland

สถานะโครงการ:

  • ขนาดทีม: สมาชิกหลัก 4 คน
  • การเผยแพร่หลักครั้งล่าสุด: มีนาคม 2024
  • สาขาการพัฒนา: นำหน้าสาขาหลักไป 100+ commits
  • จุดเน้นปัจจุบัน: การสนับสนุน X11 มีแผน Wayland สำหรับหลังการเผยแพร่ครั้งถัดไป
  • การระดมทุน: ขับเคลื่อนโดยอาสาสมัคร กำลังมองหาผู้สนับสนุน

กิจกรรมการพัฒนาและคำถามเกี่ยวกับสถานะโครงการ

สมาชิกชุมชนได้แสดงความกังวลเกี่ยวกับจังหวะการพัฒนาของโครงการ โดยสังเกตว่าการเปิดตัวครั้งสุดท้ายสู่ main branch เกิดขึ้นในเดือนมีนาคม 2024 อย่างไรก็ตาม ผู้มีส่วนร่วมในโครงการได้ชี้แจงว่าการพัฒนาที่ใช้งานอยู่ยังคงดำเนินต่อไปใน development branch แยกต่างหาก ซึ่งอยู่ข้างหน้ากว่า main release branch มากกว่า 100 commits รูปแบบการพัฒนานี้แม้จะเป็นเรื่องปกติในโครงการซอฟต์แวร์ แต่ได้นำไปสู่ความสับสนบางอย่างเกี่ยวกับสถานะปัจจุบันและระดับกิจกรรมของโครงการ

สภาพแวดล้อมเดสก์ท็อปรวมถึง external dependencies หลายตัวสำหรับการทำงานเต็มรูปแบบ รวมทั้งเครื่องมือจัดการการแสดงผลและยูทิลิตี้การกำหนดค่าเครือข่าย ความพยายามในการพัฒนาล่าสุดได้มุ่งเน้นไปที่การลด dependencies เหล่านี้โดยการสร้าง compositor โดยตรงเข้าไปในระบบ ซึ่งช่วยขจัดการพึ่งพาซอฟต์แวร์ compositing ภายนอกที่เคยมี

การพึ่งพาภายนอกที่จำเป็นสำหรับประสบการณ์การใช้งานที่สมบูรณ์:

  • arandr - การปรับเปลี่ยนการตั้งค่าจอแสดงผล
  • xbacklight หรือ brightnessctl - การควบคุมความสว่างของแล็ปท็อป
  • connman-gtk - การกำหนดค่าเครือข่าย Wi-Fi
  • compton - การรองรับ compositor (กำลังถูกแทนที่ด้วย compositor ที่สร้างขึ้นภายใน)
ภาพหน้าจอของ GitHub repository ของ FyneOS ที่เน้นให้เห็นการพัฒนาที่กำลังดำเนินอยู่และการมีส่วนร่วมในโครงการ
ภาพหน้าจอของ GitHub repository ของ FyneOS ที่เน้นให้เห็นการพัฒนาที่กำลังดำเนินอยู่และการมีส่วนร่วมในโครงการ

การอภิปรายเรื่องประสิทธิภาพและการใช้งานทางเทคนิค

การเลือกสร้าง FyneDesk ด้วย Go ได้สร้างปฏิกิริยาที่หลากหลายจากชุมชน นักพัฒนาบางคนตั้งคำถามว่าภาษาระดับสูงอย่าง Go เหมาะสมหรือไม่สำหรับสิ่งที่พื้นฐานเท่ากับสภาพแวดล้อมเดสก์ท็อป โดยโต้แย้งว่าภาษาระดับต่ำกว่าอาจเหมาะสมกว่าสำหรับซอฟต์แวร์ที่สำคัญต่อระบบ ผู้ดูแลโครงการตอบโต้สิ่งนี้โดยเน้นย้ำถึงความเร็วในการพัฒนาและความง่ายในการมีส่วนร่วมที่ Go ให้

การอภิปรายเรื่องประสิทธิภาพได้เกิดขึ้นรอบ ๆ Fyne toolkit เอง โดยผู้ใช้บางคนรายงานปัญหาเช่นขนาดไบนารีที่ใหญ่และการใช้ CPU ในสถานะ idle ทีมพัฒนาอ้างว่าได้แก้ไขปัญหาประสิทธิภาพที่ทราบแล้วและยังคงทำงานเพื่อปรับปรุง โดยเฉพาะสำหรับการเปิดตัวเวอร์ชัน 2.7.0 ที่กำลังจะมาถึง

วิธีการติดตั้ง:

  • การติดตั้งแบบเร็ว: go get fyshos.com/fynedesk/cmd/fynedesk
  • การตั้งค่า Desktop แบบเต็มรูปแบบ:
    git clone https://github.com/fyshos/fynedesk
    cd fynedesk
    make
    sudo make install
    
  • การทดสอบสำหรับการพัฒนา: make embed (ต้องใช้ Xephyr )

ความทะเยอทะยานข้ามแพลตฟอร์มและวิสัยทัศน์อนาคต

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

โครงการดำเนินการเป็นความพยายาม open source ที่ขับเคลื่อนด้วยอาสาสมัครโดยมีสมาชิกทีมหลักสี่คน และกำลังแสวงหาการสนับสนุนและความร่วมมือเชิงพาณิชย์เพื่อเร่งการพัฒนา แม้จะมีความท้าทายและการอภิปรายในชุมชน FyneDesk ก็เป็นตัวแทนของการทดลองที่น่าสนใจในการพัฒนาสภาพแวดล้อมเดสก์ท็อปสมัยใหม่ โดยใช้ประโยชน์จากภาษาโปรแกรมและ toolkits ร่วมสมัยเพื่อสร้างสิ่งใหม่ในภูมิทัศน์เดสก์ท็อป Linux ที่มีอยู่แล้ว

อ้างอิง: FyneDesk