Fedora 39 diatur untuk pindah ke DNF5, bebas dari komponen Python

Ben Cotton, yang menjabat sebagai Manajer Program Fedora di Red Hat, mengumumkan niatnya untuk mengalihkan Fedora Linux ke manajer paket DNF5 secara default. Fedora Linux 39 berencana mengganti paket dnf, libdnf, dan dnf-cutomatic dengan toolkit DNF5 dan pustaka libdnf5 yang baru. Proposal tersebut belum dipertimbangkan oleh FESCo (Fedora Engineering Steering Committee), yang bertanggung jawab atas bagian teknis pengembangan distribusi Fedora.

Pada suatu waktu, DNF menggantikan Yum, yang seluruhnya ditulis dengan Python. Di DNF, fungsi tingkat rendah yang intensif kinerja ditulis ulang dan dipindahkan ke pustaka C terpisah hawkey, librepo, libsolv, dan libcomps, tetapi kerangka kerja dan komponen tingkat tinggi tetap menggunakan Python. Proyek DNF5 ditujukan untuk menyatukan perpustakaan tingkat rendah yang ada, menulis ulang komponen manajemen paket yang tersisa dengan Python di C++ dan memindahkan fungsionalitas dasar ke perpustakaan libdnf5 terpisah dengan pembuatan pembungkus di sekitar perpustakaan ini untuk menyimpan API Python.

Menggunakan C++ sebagai pengganti Python akan menghilangkan banyak ketergantungan, mengurangi ukuran toolkit, dan meningkatkan kinerja. Kinerja yang lebih tinggi dicapai tidak hanya melalui penggunaan kompilasi ke dalam kode mesin, tetapi juga melalui peningkatan implementasi tabel transaksi, optimalisasi pemuatan dari repositori dan restrukturisasi database (database dengan status sistem dan riwayat operasi dipisahkan). Toolkit DNF5 dipisahkan dari PackageKit dan mendukung proses latar belakang baru yang disebut DNF Daemon, yang menggantikan fungsionalitas PackageKit dan menyediakan antarmuka untuk mengelola paket dan pembaruan dalam lingkungan grafis.

Pengerjaan ulang juga akan memberikan peluang untuk menerapkan beberapa perbaikan yang meningkatkan kegunaan manajer paket. Misalnya, DNF baru memberikan indikasi yang lebih visual mengenai kemajuan operasi; menambahkan dukungan untuk menggunakan paket RPM lokal untuk transaksi; menambahkan kemampuan untuk menampilkan informasi transaksi yang diselesaikan dalam laporan yang dihasilkan oleh skrip yang dibangun ke dalam paket; Sistem penyelesaian input yang lebih canggih untuk bash telah diusulkan.

Sumber: opennet.ru

Tambah komentar