Adieu yum, bonjour dnf !

Adieu yum, ce n’est peut être pas pour tout de suite quand même! Mais cela approche…

Le fabuleux gestionnaire de paquets yum (YellowDog Updater Modified), que nous utilisons depuis les débuts de Fedora, n’a jamais cessé de s’améliorer au fil du temps. Il a toujours été simple à utiliser, pas forcément rapide ni efficace dans la gestion des dépendances au tout début, mais il est maintenant un des meilleurs gestionnaires de paquets disponibles. Son succès l’amène d’ailleurs sur la plus part des distributions basées sur des RPMs.

Ses avantages aujourd’hui sont à mon avis les suivants:

  • Une seule commande comme point d’entrée (yum)
  • Une gestion automatique de son cache
  • Un affichage clair et efficace
  • Programmé en python
  • Fichiers de configuration simples et clairs
  • Facilité pour développer des plugins
  • Sa rapidité

Mais, bien souvent quand un produit arrive à une telle maturité, il peut être intéressant d’explorer de nouvelles pistes. Peut être pour contrer l’ennui de ses développeurs qui sait… Du coup, un fork a été crée, pas forcément avec délicatesse vis à vis des mainteneurs du yum originel, mais ça c’est fait. Le nouveau projet s’appelle DNF, ce qui ne veut rien dire car le nom est peut être temporaire. Il est censé améliorer certains points, déjà du point de vue des performances (ah?), de l’utilisation possible d’autres langages que python, et d’une mise à disposition d’une API claire et propre.

DNF est déjà disponible dans la Fedora 18, ce sera donc l’occasion de le tester. Mais il ne faudra pas s’attendre non plus à une révolution, l’ensemble du projet DNF étant un fork de yum il en utilise encore une très grande partie. D’ailleurs la commande dnf s’appellera peut être de nouveau yum quand elle pourra complètement le remplacer dans une future Fedora.

Le but premier de dnf est de fournir la bibliothèque hawkey qui s’appuie sur libsolv pour la résolution des dépendances. Pour information libsolv vient du monde openSuse. A terme toutes les résolutions de dépendances, pas forcément dans yum/dnf, s’appuieront sûrement sur libsolv.

Proposer une nouvelle API, plus propre/précise, permettra aussi une meilleure intégration dans l’environnement graphique. A voir ce que cela donnera dans Gnome par exemple.

Pour tester dnf, il suffit de l’installer:

yum install dnf

Les commandes dnf sont identiques (pour l’instant?) à yum, pas la peine d’en parler:

dnf help

Le fichier de conf se trouve logiquement dans /etc/dnf/dnf.conf. A voir sur le long terme ce que donnera dnf.