La trame de fond est que les pilotes Intel GPU normaux ne font pas les différentes extensions OpenGL que mon codage de passe-temps et certains jeux veulent. Je dois donc installer xorg-edgers et puis c'est content. Cependant, mercredi dernier, il y a eu une mise à jour de xorg-edgers - beaucoup de paquets - et elle s'est mal cassée; les chauffeurs se verrouillent et emportent tout l'ordinateur avec eux; réinitialisation matérielle requise.
Alors, comment pouvez-vous rétrograder - sélectionner des versions de package dans un PPA qui représentent un point dans le passé, en ignorant les versions plus récentes que cela?
sudo ppa-purge ppa:someppa/ppa
J'ai eu le même problème aujourd'hui, j'ai remarqué qu'il y a environ 2 semaines, j'ai installé des mises à jour sur mon système et j'avais toujours ubuntu-x-swat ppa activé qui avait un nouveau pilote nvidia. L'ancien allait bien, le nouveau a cassé mon système (seulement légèrement, il m'a fallu un certain temps pour le remarquer).
J'ai donc regardé dans /var/log/apt/history.log pour trouver le numéro de version précédente du package de pilotes nvidia que j'avais installé, puis j'ai essayé de trouver le package dans / var / cache / apt / archives, où vous aurez normalement trouver tous les paquets téléchargés par apt, mais il n'y était pas. Et le ppa ne conserve pas la version précédente de ses packages une fois qu'ils sont remplacés par une version plus récente, je ne peux donc pas l'obtenir non plus.
Mais, le diff de la version précédente du package à la plus récente est conservé dans le ppa pour toutes les versions, et avec l'archive tar d'origine et ses correctifs Debian, il est possible d'annuler toutes les modifications de la version la plus récente et d'obtenir les sources de la version précédente.
Je décrirai brièvement les étapes nécessaires:
Allez sur le ppa, trouvez la dernière version du paquet et téléchargez l'archive tar d'origine et les correctifs Debian (facultatifs), dans mon cas, ceux-ci ont été trouvés sur cette page:
L'archive tar d'origine est nommée:
Les correctifs Debian qui font un paquet constructible à partir de l'archive tar sont:
Extrayez-les quelque part de préférence dans un nouveau répertoire vide, puis appliquez les correctifs à l'arborescence source
Vous ne devriez pas obtenir de morceaux rejetés lors du patch.
Sur la même page ppa, vous trouverez un diff de la version précédente du package à celle que vous regardez, sous la section "Available Diffs".
Pour moi, c'était:
Téléchargez-le, extrayez et inversez-le pour l'appliquer aux sources originales corrigées:
Presto! Maintenant, vous devriez avoir l'arborescence source de la version précédente prête à construire un package:
Ce qui devrait vous donner un package de la version précédente qui peut être installé avec dpkg:
la source
À l'avenir, si vous utilisez synaptique (en supposant que vous pouvez démarrer dans X), vous pouvez sélectionner parmi les versions disponibles en mettant en surbrillance le package à modifier, puis en sélectionnant `` forcer la version '' dans le menu. De là, vous devriez pouvoir rétrograder.
la source
[Affiche originale]
N'ayant pas beaucoup de plaisir, j'ai écrit un script pour calculer la différence et exécuter la commande de restauration; il y avait environ 100 paquets impliqués. Malheureusement, ma rétrogradation a échoué car de nombreux packages ne sont plus disponibles :(
la source
/var/log/apt/history.log
?dpkg
alors directement? Synaptic est un frontal deapt-get
.