Forum Linux.debian/ubuntu Réinstaller/reconfigurer tous les paquets installés

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
2
15
mar.
2014

Suite, je crois, à un crash au beau milieu d'un aptitude safe-upgrade mon gnome est tout cassé. Plus précisément, les widgets de mots de passe sont cassés. Par exemple, au login de gdm3, je tape mon login, clique sur "next", et il me demande mon mot de passe. Je tape mon mot de passe, clique sur "submit", la fenêtre se grise, mais rien ne se passe. Le seul choix que j'ai, c'est de cliquer "cancel".
De même, si je tue gdm et lance X à la main via startx, puis lance evolution, il me demande mon mot de passe pour accéder au trousseau de clefs. Ici aussi, une fois le mot de passe rentré, ą se grise, et rien d'autre ne se passe. Pareil avec seahorse.
Les applis qui ne sont pas liées à GTK n'ont elles aucun problème.

Je souhaite donc réinstaller/mettre à jour tout ce qui touche de pres ou de loin a gnome, voire tous mes paquets. Comment faire ?
J'ai apparemment des paquets ignorés par les upgrades d'aptitudes, et d'autres problèmes du même acabit.
Faire un reinstall de la sortie filtrée de dpkg -l ne donne pas de bons résultats cqr il tente de réinstaller les mêmes versions, parfois périmées de mes paquets…

Question 1 : Selon vous, quel paquet cause mon problème? les callbacks de GTK? DBUS? Autre chose ?

Question 2 : Comment reconfigurer (eg, dpkg-reconfigure) la totalité des paquets de ma machine ?

Merci.

  • # résolu

    Posté par  (site web personnel) . Évalué à 2.

    Bon, ben j'avais du temps à perdre alors j'ai résolu mon problème…
    La méthode fut en gros la suivante:

    • récup des paquets installés: dpkg -l | grep ii | awk '{print $2}' > all
    • sauvegarde: cp all all1
    • Boucle
    • sudo aptitude reinstall cat all1 2>&1 | grep "find a source" | awk '{print $11}' | head -1 | sed -e "s/'//g" > pkg
    • l'aptitude ci-dessus échoue, car debian ne peut pas réinstaller un paquet obsolète dont on a pas les sources. Par ailleurs, ce paquet est en conflit avec une version plus récente, installée mais pas configurée. Je récupère donc son nom.
    • Retirage du paquet conflictuel de ma liste des paquets à réinstaller: cat all1 | grep -v cat pkg | sed -e's/:i386//' -e's/:amd64//' > all2
    • mv all2 all1
    • Ajout du paquet à la liste des paquets à désinstaller: cat pkg >> toDelete
    • puis je désinstalle les paquets conflictuels, et je peux enfin faire un aptitude reinstall de tous les autres, maintenant que ça ne va plus planter. Un reboot, et youpi ca marche \o/

    Bilan 1 : c'est nul qu'on puisse pas detecter les conflits et automatiser la désinstallation des versions obsolètes.
    Bilan 2 : les scripts, ça fait vraiment gagner du temps!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.