Budgie Desktop Berpindah Dari Perpustakaan GTK ke EFL oleh Enlightenment Project

Pengembang lingkungan desktop Budgie memutuskan untuk tidak menggunakan perpustakaan GTK dan memilih perpustakaan EFL (Enlightenment Foundation Library) yang dikembangkan oleh proyek Enlightenment. Hasil migrasi akan ditawarkan dalam rilis Budgie 11. Patut dicatat bahwa ini bukan upaya pertama untuk beralih dari penggunaan GTK - pada tahun 2017, proyek telah memutuskan untuk beralih ke Qt, tetapi kemudian merevisi rencananya, dengan harapan situasi di GTK4 akan berubah.

Sayangnya, GTK4 tidak memenuhi harapan para pengembang karena terus fokus hanya pada kebutuhan proyek GNOME, yang pengembangnya tidak mendengarkan pendapat proyek alternatif dan tidak mau mempertimbangkan kebutuhan mereka. Dorongan utama untuk beralih dari GTK adalah rencana GNOME untuk mengubah cara mereka menangani skin, yang mempersulit pembuatan skin khusus di proyek pihak ketiga. Secara khusus, gaya antarmuka platform disediakan oleh perpustakaan libadwaita, yang terikat dengan tema desain Adwaita.

Pembuat lingkungan pihak ketiga yang tidak ingin sepenuhnya mereplikasi antarmuka GNOME harus menyiapkan perpustakaan mereka untuk menangani gaya tersebut, namun dalam kasus ini terdapat perbedaan dalam desain aplikasi yang menggunakan perpustakaan alternatif dan perpustakaan tema platform. Tidak ada alat standar untuk menambahkan fitur tambahan ke libadwaita, dan upaya untuk menambahkan API Pewarnaan Ulang, yang akan memudahkan perubahan warna dalam aplikasi, tidak dapat disepakati karena kekhawatiran bahwa tema selain Adwaita dapat berdampak negatif pada kualitas. aplikasi untuk GNOME dan mempersulit analisis masalah dari pengguna. Oleh karena itu, pengembang desktop alternatif mendapati diri mereka terikat pada tema Adwaita.

Di antara fitur GTK4 yang menyebabkan ketidakpuasan di kalangan pengembang Budgie adalah pengecualian kemampuan untuk mengubah beberapa widget melalui pembuatan subkelas, pengalihan ke kategori API X11 usang yang tidak kompatibel dengan Wayland (misalnya, di Budgie panggilan GdkScreen dan GdkX11Screen digunakan untuk menentukan koneksi dan mengubah konfigurasi monitor ), masalah pengguliran di widget GtkListView dan hilangnya kemampuan menangani kejadian mouse dan keyboard di GtkPopovers jika jendela tidak fokus.

Setelah mempertimbangkan semua pro dan kontra peralihan ke toolkit alternatif, para pengembang sampai pada kesimpulan bahwa opsi paling optimal adalah mengalihkan proyek untuk menggunakan perpustakaan EFL. Transisi ke Qt dianggap bermasalah karena perpustakaannya berbasis C++ dan ketidakpastian kebijakan lisensi di masa depan. Sebagian besar kode Budgie ditulis dalam Vala, tetapi toolkit C atau Rust tersedia sebagai opsi migrasi.

Sedangkan untuk distribusi Solus, proyek akan terus membuat build alternatif berdasarkan GNOME, namun build ini akan ditandai sebagai tidak diawasi oleh proyek dan disorot di bagian terpisah di halaman download. Setelah Budgie 11 dirilis, pengembang akan mengevaluasi kemampuannya dibandingkan dengan GNOME Shell dan memutuskan apakah akan melanjutkan pembuatan bangunan dengan GNOME atau berhenti, menyediakan alat untuk migrasi ke bangunan dengan Budgie 11. Dalam bangunan Solus dengan desktop Budgie 11, direncanakan untuk merevisi komposisi aplikasi, mengganti aplikasi GNOME dengan aplikasi analog, termasuk yang dikembangkan dalam proyek. Misalnya, direncanakan untuk mengembangkan pusat instalasi aplikasi kami sendiri.

Ingatlah bahwa desktop Budgie menawarkan implementasinya sendiri atas GNOME Shell, panel, applet, dan sistem notifikasi. Untuk mengelola windows, window manager Budgie Window Manager (BWM) digunakan, yang merupakan modifikasi tambahan dari plugin dasar Mutter. Budgie didasarkan pada panel yang organisasinya mirip dengan panel desktop klasik. Semua elemen panel adalah applet, yang memungkinkan Anda menyesuaikan komposisi secara fleksibel, mengubah penempatan, dan mengganti implementasi elemen panel utama sesuai selera Anda. Applet yang tersedia meliputi menu aplikasi klasik, sistem pengalihan tugas, area daftar jendela terbuka, penampil desktop virtual, indikator manajemen daya, applet kontrol volume, indikator status sistem, dan jam.

Budgie Desktop Berpindah Dari Perpustakaan GTK ke EFL oleh Enlightenment Project


Sumber: opennet.ru

Tambah komentar