DNF est un gestionnaire de paquets RPM moderne et très utilisé par des distributions comme Fedora, Mageia et autres. Il n’est pas simple au début de connaître toutes les possibilités offertes par DNF, pourtant cela vous sera utile un jour où l’autre pour plein de raisons (paquet cassé, problème de dépendance, mise à jour, système complet cassé, …). Nous allons présenter les commandes les plus utiles.
sudo dnf upgrade --refresh
Cette commande sera utilisée très souvent afin de mettre à jour la liste des paquets puis de lancer le processus de mise à jour. Pour avoir simplement la liste des mises à jour disponibles :
sudo dnf list --upgrades
Dans le même esprit pour avoir la liste des paquets installés sur le système :
sudo dnf list --installed
Vous pouvez choisir de mettre à jour une liste de paquets :
sudo dnf upgrade apache2 kodi
Pour supprimer une liste de paquets :
sudo dnf remove kodi
Pour supprimer des paquets non nécessaires (à utiliser avec beaucoup de précautions !) :
sudo dnf autoremove
Pour installer une liste de paquets :
sudo dnf install kodi
Pour installer une version antérieur d’un paquet vous pouvez soit utiliser install avec le nom exact du paquet avec la version désirée ou bien downgrade :
sudo dnf install kodi-x11-18.0-0.11.b3.fc29.x86_64 sudo dnf downgrade kodi
Pour réinstaller un paquet :
sudo dnf reinstall kodi
Dans les commandes précédentes vous pouvez simplement télécharger les paquets sans les installer en ajoutant l’option :
--downloadonly
De même si vous montez un autre système utilisant DNF, pour installer le paquet dans ce système et non dans le votre il peut être utile de passer en paramètre la racine à utiliser (très utile pour réparer un système depuis un autre système fonctionnant correctement) :
--installroot=/media/HDD/
Parfois vous devrez utiliser des options afin d’autoriser la suppression de paquets lors d’une opération :
--allowerasing --skip-broken
Enfin pour synchroniser votre installation avec les paquets actuels des dépôts vous pouvez utiliser :
sudo dnf distro-sync
Pour certains cas très spéciaux où un paquet en remplace un autre, il peut être nécessaire d’utiliser :
sudo dnf swap paquet_a paquet_b
Le paquet_a sera désinstaller pendant que le paquet_b sera installé. Cette commande est nécessaire pour remplacer un paquet qui a changé de nom sans casser les dépendances.