Downgrading packages (Français)

From ArchWiki
Jump to navigation Jump to search

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.

Attention:
  • 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, sa hez 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
Astuce: S'il vous est impossible de démarrer le système après une régression du noyau, vous pouvez rétrograder le noyau en chrootant dans le système. Démarrer depuis une image Arch Linux sur un media USB et montez la partition sur laquelle votre sytème est installé dans /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/bash
Ensuite, 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

Tango-preferences-desktop-locale.pngCet article ou section a besoin d'être traduit(e).Tango-preferences-desktop-locale.png

Notes: ce paragraphe est un travail en cours Nophke (talk) 10:52, 25 July 2021 (UTC) (Discuss in Talk:Downgrading packages (Français)#)

Si le paquet ne se trouve nulle part, trouvez son [[PKGBUILD (Français)|] et reconstruisez-le avec [[makepkg [Français)|]].

Pour les paquets des dépôts officiels, vous pourriez modifier le PKGBUILD existant fourni par ABS de façon à utiliser des sources plus anciennes ou vous pouvez visiter https://archlinux.org/packages/ et rechercher le paquet que vous souhaitez rétrograder. Une fois trouvé, cliquez sur "View Changes". Localisez la version dont vous avez besoin et cliquez sur le chemin correspondant. Il suffit ensuite de télécharger les fichiers situés dans le répertoire et construire le paquet avec makepkg.

Les anciennes versions des paquets AUR peuvent être obtenues sur http://pkgbuild.com/git/aur-mirror.git/ .

If the package is unavailable, find the correct PKGBUILD and rebuild it with makepkg.

For packages from the official repositories, retrieve the PKGBUILD with ABS and change the software version. Alternatively, find the package on the Packages website, click "View Changes", and navigate to the desired version. The files are available through a .tar.gz snapshot, and via the Tree view.

See also Arch Build System#Checkout an older version of a package.

Old AUR packages can be built by checking out an old commit in the AUR package Git repository. For pre-2015 AUR3 PKGBUILDs, see Arch User Repository#Git repositories for AUR3 packages.

Automatisation

Le paquet downgrader-gitAUR utilise libalpm, supporte 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]

Voir Official repositories#Disabling testing repositories.