สภาพแวดล้อมเดสก์ท็อปใหม่ที่สร้างด้วย Rust ชื่อ Desktop-TUI กำลังสร้างความฮือฮาในชุมชนนักพัฒนา โดยนำความทรงจำของอินเทอร์เฟซคอมพิวเตอร์คลาสสิกจากทศวรรษ 1980 และ 1990 กลับมา สภาพแวดล้อมที่คล้าย tmux นี้ทำงานโดยไม่ใช้กราฟิกเลย โดยสร้างประสบการณ์เดสก์ท็อปแบบหน้าต่างโดยใช้เพียงตัวอักษรข้อความ
โปรเจกต์นี้ได้สร้างความประทับใจให้กับนักพัฒนาที่จำได้ถึงประสิทธิภาพของแอปพลิเคชันแบบข้อความ การสนทนาในชุมชนเผยให้เห็นความคล้ายคลึงที่น่าสนใจกับซอฟต์แวร์ในอดีตอย่าง DESQview จากปี 1985, WordPerfect for DOS และสภาพแวดล้อมการพัฒนา Turbo Pascal ผู้ใช้หลายคนเชื่อมโยงกับประสบการณ์การใช้คอมพิวเตอร์ในยุคแรกๆ เมื่อแอปพลิเคชันที่ทรงพลังสามารถทำงานได้อย่างราบรื่นบนฮาร์ดแวร์ที่มีข้อจำกัด
ประโยชน์ด้านประสิทธิภาพขับเคลื่อนความสนใจในยุคปัจจุบัน
ความน่าสนใจไม่ได้มาจากความคิดถึงเพียงอย่างเดียว ผู้ใช้รายงานข้อได้เปรียบด้านประสิทธิภาพอย่างมีนัยสำคัญ โดยเฉพาะเรื่องความล่าช้าของระบบ นักพัฒนาบางคนกำลังเปลี่ยนไปมาระหว่างเทอร์มินัลข้อความและสภาพแวดล้อมกราฟิก โดยใช้เซสชัน TTY สำหรับงานพัฒนาและสงวนแอปพลิเคชัน GUI ไว้เฉพาะงานที่จำเป็นอย่างการเรียกดูเว็บและเครื่องมือสื่อสาร
ประสิทธิภาพการใช้ทรัพยากรนั้นน่าทึ่งเมื่อเปรียบเทียบกับสภาพแวดล้อมเดสก์ท็อปสมัยใหม่ แม้ว่าการวัดที่แม่นยำจะแตกต่างกัน แต่อินเทอร์เฟซแบบข้อความโดยทั่วไปใช้หน่วยความจำและพลังการประมวลผลเพียงเศษเสี้ยวเมื่อเทียบกับระบบกราฟิก ทำให้ Desktop-TUI น่าสนใจเป็นพิเศษสำหรับงานเซิร์ฟเวอร์ระยะไกล อุปกรณ์สเปกต่ำอย่างระบบ Raspberry Pi และสถานการณ์ที่ประสิทธิภาพทุกบิตมีความสำคัญ
การใช้งานทางเทคนิคและความเข้ากันได้
Desktop-TUI ปัจจุบันใช้แบ็กเอนด์ ncurses แม้ว่านักพัฒนาจะวางแผนที่จะเปลี่ยนไปใช้ Crossterm เมื่อปัญหาการเรนเดอร์สีได้รับการแก้ไข ระบบสามารถแสดงแอปพลิเคชันใดๆ ที่ใช้เอาต์พุตมาตรฐาน จัดการหน้าต่าง และยังรวมถึงไดอะล็อกการเลือกไฟล์สำหรับอาร์กิวเมนต์คำสั่ง
อย่างไรก็ตาม โปรเจกต์นี้เผชิญกับความท้าทายทางเทคนิคบางประการ ผู้ใช้รายงานปัญหาการปรับขนาดเทอร์มินัลผ่านการเชื่อมต่อ SSH และแอปพลิเคชันต้องการไลบรารีเพิ่มเติมอย่าง libncursesw5-dev บนระบบ Ubuntu อินเทอร์เฟซพึ่พาการโต้ตอบด้วยเมาส์อย่างมากผ่านเฟรมเวิร์ก AppCUI ซึ่งอาจทำให้ผู้ใช้ที่คาดหวังการทำงานด้วยคีย์บอร์ดเท่านั้นรู้สึกแปลกใจ
ความต้องการของระบบ:
- Rust toolchain พร้อม Cargo
- ไลบรารี ncurses ( libncursesw5-dev บน Ubuntu )
- รองรับระบบ Linux
- ทำงานผ่านการเชื่อมต่อ SSH (มีข้อจำกัดบางประการ)
เชื่อมโยงกระบวนทัศน์การคอมพิวติ้งเก่าและใหม่
การสนทนาในชุมชนเผยให้เห็นมุมมองที่น่าสนใจเกี่ยวกับวิวัฒนาการของการคอมพิวติ้ง ในขณะที่บางคนมองว่าอินเทอร์เฟซแบบข้อความเป็นการถอยหลัง คนอื่นๆ มองว่าเป็นการกลับมาเป็นวงกลมสำหรับงานที่เน้นประสิทธิภาพ แนวทางมินิมัลลิสต์นี้ดึงดูดนักพัฒนาที่แสวงหาสิ่งรบกวนที่น้อยลงและสภาพแวดล้อมการคอมพิวติ้งที่มีสมาธิมากขึ้น
ผมมักจะดื่มด่ำกับ tty1 และ tty2 ด้วย tmux โดยใช้ tty8 สำหรับ X11 กับเบราว์เซอร์เพื่อซอฟต์แวร์ทำงานร่วมกัน/สื่อสารเท่านั้น
สำหรับผู้ใช้ที่ต้องการความสามารถในการเรียกดูเว็บ ชุมชนได้ระบุโซลูชันอย่าง Browsh (Firefox ในเทอร์มินัล) และ Carbonyl ซึ่งสามารถให้การเข้าถึงเว็บพื้นฐานภายในสภาพแวดล้อมแบบข้อความ
มองไปข้างหน้า
Desktop-TUI เป็นมากกว่าแค่โปรเจกต์แห่งความคิดถึง มันแสดงให้เห็นว่าแนวคิดการคอมพิวติ้งคลาสสิกสามารถตอบสนองความกังวลสมัยใหม่เกี่ยวกับประสิทธิภาพระบบ สภาพแวดล้อมที่ปราศจากสิ่งรบกวน และการใช้ทรัพยากร แม้ว่าอาจไม่ได้แทนที่เดสก์ท็อปกราฟิกสำหรับผู้ใช้ส่วนใหญ่ แต่ก็เสนอทางเลือกที่น่าสนใจสำหรับกรณีการใช้งานและเวิร์กโฟลว์เฉพาะ
โปรเจกต์ยังคงพัฒนาต่อไป โดยมีแผนสำหรับการสนับสนุนแบ็กเอนด์ที่ดีขึ้นและความเข้ากันได้ที่ปรับปรุงแล้ว สำหรับนักพัฒนาที่สนใจสำรวจแนวทางนี้ Desktop-TUI มีให้ผ่านตัวจัดการแพ็กเกจ Cargo และสามารถคอมไพล์จากซอร์สใน GitHub
อ้างอิง: Desktop-TUI