Erreur pour apt-get install et apt-get upgrade

Bonjour,

Je n’arrive pas à résoudre un problème lorsque j’installe une nouvelle app ou fait un (dist-)upgrade. Voilà le message d’erreur:

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Vous pouvez lancer « apt --fix-broken install » pour corriger ces problèmes.
Les paquets suivants contiennent des dépendances non satisfaites :
 mono-complete : Dépend: ca-certificates-mono (= 5.18.0.268-0xamarin7+debian9b1) mais 5.18.0.240-0xamarin1+debian9b1 est installé
 mono-devel : Dépend: ca-certificates-mono (= 5.18.0.268-0xamarin7+debian9b1) mais 5.18.0.240-0xamarin1+debian9b1 est installé
E: Dépendances non satisfaites. Essayez « apt --fix-broken install » sans paquet
   (ou indiquez une solution).

J’ai essayé:

apt --fix-broken install

qui sort aussi des erreurs.

apt-get install mono-complete
apt-get remove --purge mono-complete

sans succès.

1 J'aime

Salut
tu as du installer du mono exotique

apt policy ca-certificates-mono

Voici l’output:

apt policy ca-certificates-mono
 ca-certificates-mono:
  Installé : 5.18.0.240-0xamarin1+debian9b1
  Candidat : 5.18.0.268-0xamarin7+debian9b1
 Table de version :
     5.18.0.268-0xamarin7+debian9b1 500
        500 https://download.mono-project.com/repo/debian stable-stretch/main amd64 Packages
 *** 5.18.0.240-0xamarin1+debian9b1 100
        100 /var/lib/dpkg/status
     4.6.2.7+dfsg-1 500
        500 http://ftp.fr.debian.org/debian stretch/main amd64 Packages
        500 http://deb.debian.org/debian stretch/main amd64 Packages

J’étais entrain d’essayer d’install ce package comme recommandé par leur site. Ça a lancé un debugger qui n’avait à pas faire grand chose j’ai l’impression et qui se conclut par:

=================================================================
	External Debugger Dump:
=================================================================
mono_gdb_render_native_backtraces not supported on this platform, unable to find gdb or lldb
Aborted
E: installing Assembly /usr/share/cli-common/policies.d/libgtk2.0-cil/policy.2.8.pango-sharp.dll failed
E: Installation of policy.2.8.pango-sharp with /usr/share/cli-common/runtimes.d/mono failed
dpkg: erreur de traitement du paquet mono-gac (--configure) :
 le sous-processus script post-installation installé a retourné une erreur de sortie d'état 29
dpkg: des problèmes de dépendances empêchent la configuration de mono-runtime-common :
 mono-runtime-common dépend de mono-gac (= 5.18.0.268-0xamarin7+debian9b1) ; cependant :
 Le paquet mono-gac n'est pas encore configuré.

    dpkg: erreur de traitement du paquet mono-runtime-common (--configure) :
     problèmes de dépendances - laissé non configuré
    Des erreurs ont été rencontrées pendant l'exécution :
     mono-gac
     mono-runtime-common
    E: Sub-process /usr/bin/dpkg returned an error code (1)

https://download.mono-project.com c’est pas Debian donc forcément à un moment ça déraille
pourquoi n’utilises tu pas les paquets fourni par Debian?

Sur leur site j’ai bien utilisé le lien pour debian, non?
C’est bien le lien dans mon /etc/apt/sources.list.d/mono-official-stable.list

Un site qui fourni des paquets .deb et les paquets originaux de Debian c’est pas la même chose

Voici les versions officielles Debian

apt policy ca-certificates-mono 
ca-certificates-mono:
  Installé : (aucun)
  Candidat : 5.18.0.240+dfsg-2
 Table de version :
     5.18.0.240+dfsg-2 990
        990 https://cdn-aws.deb.debian.org/debian buster/main amd64 Packages
        990 https://cdn-aws.deb.debian.org/debian buster/main i386 Packages
        100 https://cdn-aws.deb.debian.org/debian sid/main amd64 Packages
        100 https://cdn-aws.deb.debian.org/debian sid/main i386 Packages
     4.6.2.7+dfsg-1 500
        500 https://cdn-aws.deb.debian.org/debian stretch/main amd64 Packages
        500 https://cdn-aws.deb.debian.org/debian stretch/main i386 Packages

Donc soit tu sais gérer le problèmes de dépendances mais la preuve que non

Soit tu fais confiance à Debian https://packages.debian.org/stretch/mono-complete

Effectivement jene sais pas gérer les dépendances. Je n’ai même pas essayé.
Faut que j’efface tous les list dans /sources.list.d/?

Et j’ai donc (vraiment) tout cassé?

Comme dit précédemment de façon plus ou moins abrupte il semble que le dépôts depuis lequel tu pioche les paquets mono ne soit pas complet.
Donc le mieux serait effectivement de procéder au nettoyage des paquets installé via ce dépôts et de virer le dépôts, puis un clean du cache et un update de la base d’apt.

Par contre je soupçonne que tu ne soit pas en version buster de debian ?

Si c’est le cas et qu’il te faut une version particulièrement récentes de mono (ce qui ne m’étonnerai pas) il te faudra sans doute soit utilisé du pining avec les dépôts testing de Debian, soit réfléchir à mettre à jour vers la version Buster de Debian qui est en période de gel light actuellement et devrait d’ici quelques mois passer en version stable.

Avant de retirer le source.lis il faut d’abord purger les paquets venant de ce dépôt d’abord en utilisant
la commande

dpkg --purge nom-du-pauet

https://manpages.debian.org/jessie/dpkg/dpkg.1.fr.html

puis quand tout est pugé, retirer le source list et installer la version Debian
apt update
apt install mono

C’est rentré, je crois, dans l’ordre.
Après avoir mis le lien deb https://cdn-aws.deb.debian.org/debian stretch/main amd64 Packages dans sources.list (oui je suis sous stretch et veut suivre la version stable (ce qui est bien loupé…).
J’ai viré le lien présent dans un fichier de /sources.list.d/ puis j’ai tenté un apt-get update qui m’a donné une erreur (alors qu’avant non):

gn:33 https://cdn-aws.deb.debian.org/debian stretch/main/Packages Translation-fr
Ign:34 https://cdn-aws.deb.debian.org/debian stretch/main/Packages Translation-en
Lecture des listes de paquets... Fait
>     W: The repository 'https://cdn-aws.deb.debian.org/debian stretch/main Release' does not have a Release file.
>     N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
>     N: See apt-secure(8) manpage for repository creation and user configuration details.
>     E: Impossible de récupérer https://cdn-aws.deb.debian.org/debian/dists/stretch/main/amd64/binary-amd64/Packages  404  Not Found
>     E: Le téléchargement de quelques fichiers d'index a échoué, ils ont été ignorés, ou les anciens ont été utilisés à la place.

J’ai alors (re)tenté un apt-get upgrade qui a détecté plein de paquets à désinstaller. J’ai annulé l’upgrade et fait, comme indiqué dans le message, un sudo apt autoremove qui m’a purgé beaucoup de paquets mais, je crois, pas tous vu que le “External Debugger Dump” a été déclenché plusieurs fois pendant le traitement.

J’ai ensuite fait un apt-get upgrade et cela s’est réalisé jusqu’au bout et sans erreur :grinning:

J’ai essayé de purger le package mono-complete (ou ce qu’il en restait) et rien n’a été trouvé avec apt-get remove --purge mono-complete ou encore sudo dpkg --purge mono-complete qui a rendu:

dpkg: avertissement: requête ignorée : suppression de mono-complete, qui n’est pas installé

Je n’ose plus toucher à rien :no_mouth:

Je fais autre chose ou ça vous parait bon également?
Pour info, je ne sais même plus pourquoi j’avais installé mono-complete. Probablement pour installer un autre package mais y’a assez longtemps. Si oui, je dois le réinstaller?

ça à l’air bon

pour vérifier

dpkg --audit

Si aucun paquet n’est listé c’est que tout est rentré dans l’ordre

Mono ne sert pas dans une utilisation ordinaire. C’est la version libre de l’outil Microsoft
dotnet

Si un programme que tu as installé en a besoin tu le sauras vite. Moi j’utilise dotnet dans wine pour faire fonctionner des programmes .exe

Pas de paquet listé avec cette commande.
Merci de votre aide ! :grinning: