[Linux-bruxelles] Distribution non reconnue

Frederic Peters fpeters at entrouvert.com
Jeu 29 Juil 19:58:14 CEST 2004


Eric Freyens écrivait :

> Lorsque j'ouvre certains menus comme Applications -> Outils Système ->
> Services, il y a un message signalant qu'il ne reconnait pas ma
> distribution.
> 
> http://home.tiscali.be/famille_freyens/images/distri_inconnue.png
> 
> Quelqu'un a-t-il une solution à ce petit problème mineur ?

C'est une application issue des gnome-system-tools; découvrons
ensemble son fonctionnement et comment réparer ça.

1. Récupérer les sources

 $ apt-get source gnome-system-tools
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Nécessité de prendre 2739ko dans les sources.
Réception de : 1 http://ftp.debian.skynet.be unstable/main gnome-system-tools 0.33.0-1 (dsc) [821B]
Réception de : 2 http://ftp.debian.skynet.be unstable/main gnome-system-tools 0.33.0-1 (tar) [2727kB]
Réception de : 3 http://ftp.debian.skynet.be unstable/main gnome-system-tools 0.33.0-1 (diff) [11,6kB]
2739ko réceptionnés en 8s (337ko/s)                                                                 
dpkg-source: extracting gnome-system-tools in gnome-system-tools-0.33.0


2. Trouver où est affiché le message

vi po/fr.po
recherche de "La distribution que vous utilis..."
La v.o. est The platform you are running is not supported by this
tool; une chaîne définie dans interfaces/common.glade.in.h

glade-2 interfaces/common.glade.in 
 -> l'identifiant de la fenêtre qui nous intéresse est "platform_dialog"

grep platform_dialog src/*/*.c
 -> résultats dans src/common/gst-tool.c
    il y a une fonction gst_tool_run_platform_dialog()

Encore des grep mais aucune trace d'un code de détection dans
src/*/*.c; zut.

Ah, mais il y a un répertoire backends/.  Et dedans, un script
platform.pl.in; une fonction check_debian.  Elle procède de la seule
manière possible, en regardant le contenu de /etc/debian_version.  Il
s'attend à y trouver "testing/unstable".

3. Correction

Le contenu de /etc/debian_version est (depuis base-files 3.1) "3.1",
c'est récent:

base-files (3.1) unstable; urgency=high

  * Changed issue, issue.net and debian_version to read "3.1".

 -- Santiago Vila <sanvila at debian.org>  Mon, 26 Jul 2004 20:25:32 +0200

Maintenant, c'est immédiat, hop, on remet testing/unstable dans le
fichier et basta.  Sauf que ce n'est pas très propre, corrigeons
plutôt gnome-system-tools.

cp platform.pl.in platforms.pl.in.orig
vi platform.pl.in

  my %vermap =
      ("testing/unstable" => "sarge");
devient:
    my %vermap =
      ("testing/unstable" => "sarge",
       "3.1"              => "sarge");

diff -u platform.pl.in.orig platform.pl.in


4. Envoyer le correctif

reportbug gnome-system-tools
 - "Distribution no longer detected properly"
 - priorité: grave
 - tags: patch
 - trois lignes
 - attacher le patch
 - envoyer


5. Se refaire un paquet en attendant

Pour profiter dès maintenant de notre correction, créons un paquet.
 debuild -r fakeroot
 cd ..
 dpkg -i gnome-system-tools...deb


Et voilà,


        Frédéric





Plus d'informations sur la liste de diffusion Linux-bruxelles