Downgrading packages (Français)
Avant de rétrograder un paquets (ou plusieurs), demandez-vous «pouquoi» vous souhaitez faire cela. Si c'est en raison d'un bug, vérifiez le «bug tracker» pour les actions en cours. S'il n'y en a pas, faites un signalement; la meilleure option étant toujours de corriger les bugs, ou, à minimum de prévenir les autres utilisateurs des possibles problèmes.
- Rétrograder un paquet implique parfois de rétrograder également ses dépendances. Quand le nombre de paquet est important, pensez à utiliser une «snapshot». Voir Arch Linux Archive#How to restore all packages to a specific date.
- Soyez prudent avec changements apportés aux fichiers de configuration et aux scripts. Sachez que pacman gèrera cela pour vous aussi longtemps que vous ne désactivez pas ses mécanismes de sécurité.
- Si le retour à une version antérieure implique le changement de nom d'une bibliothèque, Toutes ses dépendances autront besoin d'être rétrogradées également ou d'être reconstruites.
Réinstaller la version précédente d'un paquet
Utiliser le cache de pacman
Si vous avez procéder à l'installation et que vous n'avez pas effacé le cache de pacman, le paquet à la version précédente est encore disponible dans /var/cache/pacman/pkg/
:
Ceci supprimera le paquet actuel et installera la version plus ancienne à la place. Les changements nécessaires aux dépendances seront gérés, mais pacman ne gérera pas les conflits de version. Aussi si une bibliothèque ou un autre paquet doit être rétrogradés conjointement aux paquets, sachez que vous devrez le faire vous-même.
# pacman -U /var/cache/pacman/pkg/paquet-vielle_version.pkg.tar.type
Remarquez que type
sera xz
pour les paquets les plus anciens, et zst
pour ceux datant d'après la modification de 2020.
Une fois le paquet installé, ajoutez-le temporairement à la section IgnorePkg de pacman.conf
, jusqu'à ce que la difficulté liée au paquet mis-à-jour soit résolu.
Rétrograder le noyau
En cas de problème avec un nouveau noyau, les paquets Linux, ceux-ci peuvent être rétrogradés en In case of issue with a new kernel, the Linux packages can be downgraded to the last working ones utilisant le cache de pacman. Ouvrez le dossier /var/cache/pacman/pkg
et rétrogradez au moins les paquets linux, linux-headers ainsi que les modules du noyau. Par exemple:
# pacman -U linux-4.15.8-1-x86_64.pkg.tar.xz linux-headers-4.15.8-1-x86_64.pkg.tar.xz virtualbox-host-modules-arch-5.2.8-4-x86_64.pkg.tar.xz
/mnt
. Si vous avez un /boot
ou /var
sur une partition séparée, montez les également dans /mnt
(par exemple mount /dev/sdc3 /mnt/boot
). Ensuite chrootez dns le système avec: # arch-chroot /mnt /bin/bashEnsuite, vous pouvez vous placer dans le dossier du cache pacman et restaurer les paquets Linux en utilisant les commandes citées ci-dessus. Une fois fait, sortez du chroot (avec
exit
) et redémarrez.Arch Linux Archive
Arch Linux Archive fournit une image quotidienne des mirroirs officiels;, et peut être utilisé pour installer une version précédente d'un paquet, ou restaurer le système à une date antérieure..
Recompiler le paquet
Si le paquet ne se trouve nulle part, trouvez son PKGBUILD et reconstruisez-le avec Makepkg.
Pour les paquets provenant des dépots officiels, récupérez le PKGBUILD avec ABS et modifiez la version du logiciel. Vous pouvez également trouver le paquet sur le site web https://archlinux.org/packages, cliquer sur "View Changes" et naviguer jusqu'à la version souhaitée. Il suffit ensuite de télécharger les fichiers situés dans le répertoire afin de construire le paquet.
Consultez également Arch Build System (Français)#Télécharger une ancienne version d'un paquet|Récupérer une version antérieure d'un paquet]].
Les anciens paquets AUR peuvent être construits en récupérant un ancien commit dans le dépôt Git des paquets AUR. Pour les PKGBUILDs AUR3 antérieurs à 2015, consultez Arch User Repository (Français)#Dépôts Git pour les paquets AUR3.
Automatisation
Le paquet downgrader-gitAUR utilise libalpm, prends en charge le journal pacman et la rétrogradation en utilisant Arch Linux Archive, le cache local et la fonction ARM.
Le script bash downgradeAUR disponible sur AUR permet de rétrograder un (ou plusieurs) paquets, en utilisant le cache de pacman ou Arch Linux Archive. Voir man downgrade
pour plus de détails.
Revenir de [testing]
Consultez Official repositories (Français)#Désactivation des dépôts de test.