Desktop Budgie bertukar daripada perpustakaan GTK kepada EFL daripada projek Enlightenment

Pembangun persekitaran desktop Budgie memutuskan untuk beralih daripada menggunakan perpustakaan GTK memihak kepada perpustakaan EFL (Enlightenment Foundation Library) yang dibangunkan oleh projek Enlightenment. Hasil penghijrahan akan ditawarkan dalam keluaran Budgie 11. Perlu diperhatikan bahawa ini bukan percubaan pertama untuk beralih daripada menggunakan GTK - pada tahun 2017, projek itu telah memutuskan untuk beralih ke Qt, tetapi kemudiannya menyemak semula rancangannya, dengan harapan keadaan akan berubah dalam GTK4.

Malangnya, GTK4 tidak memenuhi jangkaan pembangun kerana tumpuan berterusan hanya pada keperluan projek GNOME, yang pembangunnya tidak mendengar pendapat projek alternatif dan tidak bersedia untuk mengambil kira keperluan mereka. Dorongan utama untuk beralih daripada GTK ialah rancangan GNOME untuk mengubah cara ia mengendalikan kulit, yang menyukarkan untuk mencipta kulit tersuai dalam projek pihak ketiga. Khususnya, gaya antara muka platform disediakan oleh perpustakaan libadwaita, yang terikat dengan tema reka bentuk Adwaita.

Pencipta persekitaran pihak ketiga yang tidak mahu meniru sepenuhnya antara muka GNOME harus menyediakan perpustakaan mereka untuk mengendalikan gaya, tetapi dalam kes ini terdapat percanggahan dalam reka bentuk aplikasi menggunakan perpustakaan alternatif dan perpustakaan tema platform. Tiada alat standard untuk menambahkan ciri tambahan pada libadwaita, dan percubaan untuk menambah API Mewarna Semula, yang akan memudahkan untuk menukar warna dalam aplikasi, tidak dapat dipersetujui kerana kebimbangan bahawa tema selain Adwaita boleh menjejaskan kualiti secara negatif. aplikasi untuk GNOME dan merumitkan analisis masalah daripada pengguna. Oleh itu, pembangun desktop alternatif mendapati diri mereka terikat dengan tema Adwaita.

Antara ciri GTK4 yang menyebabkan rasa tidak puas hati di kalangan pembangun Budgie ialah pengecualian keupayaan untuk menukar beberapa widget melalui penciptaan subkelas, pemindahan ke kategori API X11 usang yang tidak serasi dengan Wayland (contohnya, dalam Budgie memanggil GdkScreen dan GdkX11Screen digunakan untuk menentukan sambungan dan menukar konfigurasi monitor ), masalah dengan menatal dalam widget GtkListView dan kehilangan keupayaan untuk mengendalikan acara tetikus dan papan kekunci dalam GtkPopovers jika tetingkap tidak berada dalam fokus.

Selepas menimbang semua kebaikan dan keburukan beralih kepada toolkit alternatif, pembangun membuat kesimpulan bahawa pilihan yang paling optimum ialah menukar projek kepada menggunakan perpustakaan EFL. Peralihan kepada Qt dianggap bermasalah kerana perpustakaan berdasarkan C++ dan ketidakpastian dalam dasar pelesenan masa hadapan. Kebanyakan kod Budgie ditulis dalam Vala, tetapi kit alat C atau Rust tersedia sebagai pilihan penghijrahan.

Bagi pengedaran Solus, projek akan terus mencipta binaan alternatif berdasarkan GNOME, tetapi binaan ini akan ditandakan sebagai tidak diawasi oleh projek dan diserlahkan dalam bahagian berasingan pada halaman muat turun. Sebaik sahaja Budgie 11 dikeluarkan, pembangun akan menilai keupayaannya berbanding dengan Shell GNOME dan memutuskan sama ada untuk meneruskan membina binaan dengan GNOME atau berhenti, menyediakan alatan untuk migrasi ke binaan dengan Budgie 11. Dalam binaan Solus dengan desktop Budgie 11, ia dirancang untuk menyemak semula komposisi aplikasi, menggantikan aplikasi GNOME untuk analog, termasuk yang dibangunkan dalam projek. Sebagai contoh, ia dirancang untuk membangunkan pusat pemasangan aplikasi kami sendiri.

Ingat bahawa desktop Budgie menawarkan pelaksanaan sendiri bagi Shell GNOME, panel, applet dan sistem pemberitahuan. Untuk mengurus tetingkap, pengurus tetingkap Budgie Window Manager (BWM) digunakan, yang merupakan pengubahsuaian lanjutan pemalam Mutter asas. Budgie didasarkan pada panel yang serupa dalam organisasi dengan panel desktop klasik. Semua elemen panel adalah applet, yang membolehkan anda menyesuaikan komposisi secara fleksibel, menukar peletakan dan menggantikan pelaksanaan elemen panel utama mengikut citarasa anda. Applet yang tersedia termasuk menu aplikasi klasik, sistem penukaran tugas, kawasan senarai tetingkap terbuka, pemapar desktop maya, penunjuk pengurusan kuasa, applet kawalan kelantangan, penunjuk status sistem dan jam.

Desktop Budgie bertukar daripada perpustakaan GTK kepada EFL daripada projek Enlightenment


Sumber: opennet.ru

Tambah komen