Miracle, une mise à jour m'est proposée, sans indication précise sur la version du système. Je l'accepte, et le téléchargement commence. Je le laisse faire, et, une fois terminé, accepte le redémarrage proposé, finalisant cette mise à jour.

Et là, c'est le drame !

Il y a bien une mise à jour à installer, mais elle reste « coincée » à 7%, et plus rien ne se passe. Il semble bien que le téléphone soit « brické », c'est-à-dire qu'il est devenu à peu près aussi utile qu'une brique ( chère, la brique ! )

Enfer et Damnation !

Dans ce cas, normalement, il ne reste qu'une solution : faire appel au SAV de son opérateur. Mais le mien, j'ai bien peur qu'il ne sache pas faire, contrairement à ce qu'indique son nom.

Ô ! Dieux du Grand Nord !

J'ai donc cherché à débloquer la situation de moi-même ; Android ayant attiré de nombreux bidouilleurs, on trouve très facilement des tonnes d'informations, le gros problème étant de trier ces informations. Le premier élément trouvé est que Samsung utilise un outil, en interne, pour pouvoir flasher les smartphones. Cet outil s'appelle Odin, et il est sorti, par la bande, des Labs de Samsung, et se retrouve donc disponible pour les bidouilleurs. Seulement, cet outil ne fonctionne que sous MS-Windows, et ne m’intéresse donc pas.

Odin, dans la mythologie nordique, est le dieu de la guerre et de la mort, alors qu'un de ses fils, Heimdall est le dieu du feu bienveillant et de l'ordre sacré. Et oui, vous l'avez compris, un logiciel libre a été écrit pour se substituer à Odin, et ce logiciel s'appelle Heimdall.

Heimdall se télécharge librement, que ce soit dans ses versions binaires ou sources, il existe même des paquets Debian, qui s'installent parfaitement bien sûr un système Ubuntu. À noter que nous n'utiliserons pas la partie « frontend ».

La Bonne Image !

Mais cet outil ne sert qu'à installer une image d'Android sur le smartphone, il ne fournit pas l'image. Je me mets donc en quête d'une image, si possible, une image fournie par Samsung. Par l'intermédiaire d'un article du site web galaxys2.fr, je peux récupérer le fichier I9100XXLPQ_I9100OXALPQ_XEO.zip qui correspond à ce que Samsung est en train de proposer. Il s'agit bien, au moment ou j'écris cet article, de la dernière version d'Android pour le Galaxy S II.

Contenu

L'archive ZIP contient une archive TAR, qui elle-même contient des images binaires du système Android :
$ unzip -l I9100XXLPQ_I9100OXALPQ_XEO.zip
Archive:  I9100XXLPQ_I9100OXALPQ_XEO.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
637614157  2012-03-13 03:25   I9100XXLPQ_I9100OXALPQ_I9100XXLPQ_HOME.tar.md5
   276480  2012-03-13 03:26   SS_DL.dll
---------                     -------
637890637                     2 files
$ tar tf I9100XXLPQ_I9100OXALPQ_I9100XXLPQ_HOME.tar.md5
boot.bin
Sbl.bin
param.lfs
factoryfs.img
zImage
hidden.img
cache.img
modem.bin
$ ls -1sh I9100XXLPQ_I9100OXALPQ_I9100XXLPQ_HOME
total 609M
128K boot.bin
 19M cache.img
472M factoryfs.img
 96M hidden.img
 13M modem.bin
1.1M param.lfs
1.3M Sbl.bin
8.0M zImage

Flash !

Pour installer cette image, il suffit de démarrer le téléphone en mode « Odin », en appuyant simultanément sur les touches VOLUME BAS, HOME et démarrage, comme expliqué dans l'article de galaxys2.fr.

Une fois le câble USB branché entre le smartphone et l'ordinateur, la commande suivante installe les images sur le smartphone :

$ sudo heimdall flash --factoryfs factoryfs.img \ 
           --cache cache.img \
           --kernel zImage \ 
           --modem modem.bin \
           --param param.lfs \
           --primary-boot boot.bin \
           --hidden hidden.img  \
           --secondary-boot Sbl.bin

Le smartphone affiche alors une barre de progression, le premier démarrage finalise l'installation, et enfin, le téléphone est complètement utilisable.

Dans mon cas, je n'ai perdu aucune donnée, ni application, mais je ne sais pas si c'est dû à l'image ou à l'outil, ou les deux.