Fedora 39 ditetapkan untuk beralih ke DNF5, bebas daripada komponen Python

Ben Cotton, yang memegang jawatan Pengurus Program Fedora di Red Hat, mengumumkan hasratnya untuk menukar Fedora Linux kepada pengurus pakej DNF5 secara lalai. Fedora Linux 39 merancang untuk menggantikan pakej dnf, libdnf dan dnf-cutomatic dengan kit alat DNF5 dan perpustakaan libdnf5 baharu. Cadangan itu belum lagi dipertimbangkan oleh FESCo (Jawatankuasa Pemandu Kejuruteraan Fedora), yang bertanggungjawab untuk bahagian teknikal pembangunan pengedaran Fedora.

Pada satu masa, DNF menggantikan Yum, yang ditulis sepenuhnya dalam Python. Dalam DNF, fungsi peringkat rendah berintensif prestasi telah ditulis semula dan dipindahkan ke perpustakaan C berasingan hawkey, librepo, libsolv dan libcomps, tetapi rangka kerja dan komponen peringkat tinggi kekal dalam Python. Projek DNF5 bertujuan untuk menyatukan perpustakaan peringkat rendah sedia ada, menulis semula komponen pengurusan pakej yang tinggal dalam Python dalam C++ dan mengalihkan fungsi asas ke perpustakaan libdnf5 yang berasingan dengan penciptaan pembungkus di sekeliling perpustakaan ini untuk menyimpan API Python.

Menggunakan C++ dan bukannya Python akan menghapuskan sejumlah besar kebergantungan, mengurangkan saiz kit alat dan meningkatkan prestasi. Prestasi yang lebih tinggi dicapai bukan sahaja melalui penggunaan kompilasi ke dalam kod mesin, tetapi juga melalui pelaksanaan jadual transaksi yang lebih baik, pengoptimuman pemuatan daripada repositori dan penstrukturan semula pangkalan data (pangkalan data dengan keadaan sistem dan sejarah operasi dipisahkan). Kit alat DNF5 dipisahkan daripada PackageKit memihak kepada proses latar belakang baharu yang dipanggil DNF Daemon, yang menggantikan fungsi PackageKit dan menyediakan antara muka untuk mengurus pakej dan kemas kini dalam persekitaran grafik.

Kerja semula juga akan memberi peluang untuk melaksanakan beberapa penambahbaikan yang meningkatkan kebolehgunaan pengurus pakej. Sebagai contoh, DNF baharu memberikan petunjuk yang lebih visual tentang kemajuan operasi; menambah sokongan untuk menggunakan pakej RPM tempatan untuk transaksi; menambah keupayaan untuk memaparkan dalam laporan mengenai maklumat transaksi yang lengkap yang dihasilkan oleh skrip terbina dalam pakej; Sistem penyiapan input yang lebih maju untuk bash telah dicadangkan.

Sumber: opennet.ru

Tambah komen