Fedora 39 está configurado para pasar a DNF5, libre de componentes de Python

Ben Cotton, quien ocupa el puesto de Gerente de Programa Fedora en Red Hat, anunció su intención de cambiar Fedora Linux al administrador de paquetes DNF5 de forma predeterminada. Fedora Linux 39 planea reemplazar los paquetes dnf, libdnf y dnf-cutomatic con el kit de herramientas DNF5 y la nueva biblioteca libdnf5. La propuesta aún no ha sido considerada por el FESCo (Fedora Engineering Steering Committee), que es responsable de la parte técnica del desarrollo de la distribución Fedora.

Hubo un tiempo en que DNF reemplazó a Yum, que estaba escrito completamente en Python. En DNF, las funciones de bajo nivel que requieren un alto rendimiento se reescribieron y se trasladaron a bibliotecas C separadas hawkey, librepo, libsolv y libcomps, pero el marco y los componentes de alto nivel permanecieron en Python. El proyecto DNF5 tiene como objetivo unificar las bibliotecas de bajo nivel existentes, reescribir los componentes restantes de administración de paquetes en Python en C++ y mover la funcionalidad básica a una biblioteca libdnf5 separada con la creación de un contenedor alrededor de esta biblioteca para guardar la API de Python.

Usar C++ en lugar de Python eliminará una gran cantidad de dependencias, reducirá el tamaño del conjunto de herramientas y mejorará el rendimiento. Se logra un mayor rendimiento no solo mediante el uso de la compilación en código de máquina, sino también mediante una implementación mejorada de la tabla de transacciones, la optimización de la carga desde los repositorios y la reestructuración de la base de datos (las bases de datos con el estado del sistema y el historial de operaciones están separados). El kit de herramientas DNF5 está desacoplado de PackageKit en favor de un nuevo proceso en segundo plano llamado DNF Daemon, que reemplaza la funcionalidad de PackageKit y proporciona una interfaz para administrar paquetes y actualizaciones en entornos gráficos.

La revisión también brindará la oportunidad de implementar algunas mejoras que mejoran la usabilidad del administrador de paquetes. Por ejemplo, el nuevo DNF proporciona una indicación más visual del progreso de las operaciones; soporte agregado para el uso de paquetes RPM locales para transacciones; se agregó la capacidad de mostrar en informes sobre transacciones completadas información producida por scripts integrados en paquetes; Se ha propuesto un sistema de finalización de entradas más avanzado para bash.

Fuente: opennet.ru

Añadir un comentario