LineageOS LogoSuite à une discussion qui a éveillé ma curiosité ;-) , j'ai décidé de faire le "grand saut" (mais avec une sécurité ;-) ) et de tester l'installation de LineageOS sur mon smartphone Samsung Galaxy S4 VE GT-i9515 (et quelques temps après, j'ai fait la même chose pour ma tablette Samsung Galaxy Note 10.1 GT-N8010, voir cet article pour plus de détails).
Toutes ces manipulations ont été faites sous un ordinateur sous Ubuntu 18.04.

Pour cela, je me suis appuyé sur différentes sources :

Remarque : Avec ces manipulations, il n'y a pas besoin de "rooter" son téléphone bien que la procédure pour le faire soit similaire. Il faudra par contre le faire si l'on veut utiliser l'application Titanium Backup (voir la partie III) pour ré-installer proprement ses données après l'installation de LineageOS.

I- État des lieux et préparation

Pour avoir un diagnostic complet, j'ai installé sur mon smartphone l'application CPU-Z. Je vois donc que ma version d'Android est la 5.0.1 et que le processeur est un Krait 300 (Qualcomm Snapdragon 600 1,89 Ghz à 4 coeurs) donc une architecture ARM. Après recherches, ma ROM doit être la JFVELTE.

Il faut aussi activer, si ce n'est déjà fait, sur le smartphone "le mode développeur". Pour cela, il faut aller dans les paramètres du smartphone -> "Plus" -> "À propos de l'appareil" (en bas) et taper plusieurs fois sur la ligne "Numéro de version".

Avant de basculer vers l'inconnu, il vaut mieux faire une sauvegarde de la configuration actuelle : ça serait dommage de se retrouver avec une "brique" ;-) et en cas de dysfonctionnements on pourra toujours réutiliser le smartphone comme avant. Du coup, il faut installer l'application TWRP qui permet de faire des restaurations d'image (en mode recovery) à la place du programme d'origine qui est plus limité. Mais pour cela, il faut un outil qui s'appelle Heimdall sous GNU/Linux (Odin sous Windows). Source : https://doc.ubuntu-fr.org/heimdall

Commençons par l'installer sur notre PC sous Ubuntu à l'aide des lignes de commandes suivante (on peut aussi utiliser Synaptic) :

sudo apt-get install heimdall-flash heimdall-flash-frontend

Ensuite il faut récupérer le fichier nécessaires pour installer TWRP sur notre appareil (attention pour que Heimdall fonctionne il faut que le chemin du répertoire ne contienne aucun caractères spéciaux comme des accents et installer la version TWRP correspondant au modèle de smartphone ! ) :

TWRP : https://androidfilehost.com/?fid=24499762636004615

On décompresse ce fichier et on obtient un fichier "recovery.img".

II- Sauvegarde de la stock Rom du smartphone

La stock Rom est le nom du système natif du téléphone : c'est elle qu'il faudra réinstaller si l'on veut retrouver son téléphone dans l'état où on l'a laissé avant de changer d'OS.

Il faut maintenant démarrer son smartphone en mode "Téléchargement" (Download) pour pouvoir lancer TWPR. Pour cela, on éteint le smartphone puis on le rallume en maintenant simultanément les touches Volume BAS +  Bouton Central + On/Off. Et là on a un bel écran avec des inscriptions en vert avec un panneau d'avertissement en jaune. Là on appuie sur la touche Volume Haut. Un bonhomme Android en vert qui apparaît avec un message d'avertissement "Dowloading... Do not turm off target !!".
On relie le smartphone au PC Ubuntu (attention au type de câble USB utilisé, il faut qu'il soit câblé entièrement, n'utilisez pas un simple câble de chargeur car ça ne marchera pas).

Ensuite sur notre ordinateur, on lance la commande suivante :

heimdall flash --no-reboot --RECOVERY /perso_ssd/Thierry/telephone_lineageos/TWRP/recovery.img

Ce flashage est très rapide. On voit une barre bleue entière indiquant le téléversement du programme.

Maintenant, il faut redémarrer le smartphone en mode recovery en l'allumant en appuyant cette fois-ci sur les touches Volume HAUT + Bouton Central + On/Off. Attention si on redémarre normalement tout sera effacé et demandera de recommencer (il s'agit d'une protection qui fait qu'un redémarrage normal peut rattraper une fausse manip). Si l'opération se déroule bien, on arrive sur le programme TWRP.

Source : https://www.tutoriels-android.com/2015/11/backup-nandroid-avec-twrp.html

Une fois qu'on a démarré le smartphone en mode recovery sur TWPR, on choisit le langage et on clique sur la touche "Lecture seule". De là, on va pouvoir sauvegarder en cliquant sur le bouton idoine. Là on coche toutes les cases (Amorçage, Système, Données, Cache, EFS). On sélectionne l'emplacement de la sauvegarde (carte microSD). Puis on fait glisser le curseur vers la droite pour lancer la sauvegarde qui prend un certain temps (environ 10 minutes jusqu'à l'apparition des boutons "Retour" et "Redémarrer le système").
Une fois la sauvegarde effectuée (elle se stocke sur la carte SD à l'emplacement TWRP/BACKUPS), on peut la rapatrier sur son PC directement via TWRP en revenant sur le menu principal et en cliquant sur le bouton "Montage Partitions" afin que le PC ait accès aux dossiers du téléphone : sur son ordinateur, on doit voir la carte SD du téléphone montée.
Pour info la sauvegarde fait aux alentours de 10 Go.

III- À ÉVITER : Rooter son smartphone pour récupérer des données pour s'en servir sous LineageOS

Remarque : Si l'on ne veut pas récupérer de données, rooter le smartphone n'est pas obligatoire.

AVERTISSEMENT : L'utilisation de Titanium n'a pas été très concluante (blocage, message d'erreurs, ...) du coup je déconseille de l'utiliser et donc il vaut mieux récupérer les données que l'on veut conserver de façon classique (les contacts, les SMS, les photos,...) puis de réinstaller les applications de zéro.
Je laisse les infos ci-dessous pour en garder une trace uniquement.

Afin de ne pas avoir à tout reconfigurer/réinstaller sur LineageOS, il est possible de récupérer des infos que l'on ré-importera après l'installation du nouvel OS.
Pour cela, il faut installer l'application Titanium Backup qui nécessite de disposer des droits "root" sur son smartphone. Il va donc falloir le "rooter".
Source : https://doc.ubuntu-fr.org/heimdall#rooter_le_telephone

Il suffit donc de récupérer le fichier permettant de rooter son téléphone : https://download.chainfire.eu/611/CF-Root/CF-Auto-Root/CF-Auto-Root-jfvelte-jfveltexx-gti9515.zip

On le dézippe, et là il faut faire un certain nombre de manip sur les fichiers contenus dans le zip : on enlève l'extension .md5 du fichier CF-Auto-Root-jfvelte-jfveltexx-gti9515.tar.md5, puis on décompresse ce fichier.

Ensuite, la procédure est exactement la même que pour TWRP donnée ci-dessus ! Une fois le téléphone démarré en mode download avec les touches Volume BAS +  Bouton Central + On/Off , en se plaçant dans le dossier contenant les 2 fichiers venant du zip, on tape la commande suivante :

sudo heimdall flash --RECOVERY recovery.img --CACHE cache.img.ext4

Si tout se passe bien, le smartphone redémarre une première fois avec un bonhomme Android rouge pirate indiquant le rootage du smartphone. Ensuite, il redémarre une deuxième fois normalement et on doit avoir une nouvelle application "SuperSU".

IV- À ÉVITER : Sauvegarder ses applis et ses données avec Titanium Backup

Maintenant on va pouvoir utiliser l'application Titanium Backup (TB) pour sauvegarder ses données. Voir la procédure ici : http://www.lineageosdownloads.com/dirty-flash-alternative-install-lineage-os-without-losing-data/

Info pour Titanium : pour faire la sauvegarde sur la carte SD, il faut aller dans "Préférences" -> "Réglages Sauvegarde" -> "Emplacement dossier sauveg." -> "(Cliquez pour changer)" en haut de page -> Choisir  "Stockage par le biais d'un DocumentProvider" -> puis sélectionner la carte SD.

Lors de la sauvegarde, choisir "Sauvegarder toutes applis utilisateur + données système".

V- Exportation des contacts, des sms, des photos du smartphone vers son ordinateur

Plusieurs précautions valant mieux qu'une, on peut aussi exporter ses contacts dans un fichier au format .vcf (cela peut se faire directement à partir de l'application "Contacts") ainsi que ses sms en installant sur son smartphone l'application "SMS Backup & Restore". Une fois les fichiers de sauvegarde réalisés, il ne faut pas oublier de les récupérer sur son ordinateur. La façon la plus simple est de le faire en reliant les 2 appareils avec un câble USB et en connectant le smartphone en tant que périphérique multimédia MTP (attention, lorsqu'on relie le câble le smartphone peut l'être en tant qu'appareil photo PTP pour permettre le transfert de photo et dans ce cas la récupération des fichiers ne pourra pas se faire).

Ne pas oublier de sauvegarder ses photos et vidéos.

Suite au dysfonctionnement de Titanium, j'ai décidé de plutôt ré-installer les applications de zéro et donc de les lister pour m'en souvenir (voir la liste de mes applications).

VI- Installation de LineageOS

Maintenant que toutes les étapes préalables ont été réalisées, on peut passer à l'installation de LineageOS proprement dite.

Source : http://www.lineageosdownloads.com/download-galaxy-s4-ve-i9515-lineage-os/

Il faut tout d'abord récupérer la version LineageOS pour son portable. Nous avons besoin de 2 fichiers :

  1. Une fois les 2 fichiers téléchargés, il faut les rapatrier sur son smartphone (stockage interne).
  2. Il faut démarrer son smartphone en mode "recovery" avec TWRP (voir plus haut).
  3. Dans TWRP, cliquer sur "Formater" (Wipe) -> "Formatage avancé". Ne sélectionner en aucun prix l'option "Mémoire interne" (ni "Carte microSD") car cela écrasera TOUT y compris votre fichier de ROM personnalisée. Ensuite, il faut sélectionner les options suivantes : Cache Dalvik / ART, Système, Données, Cache.
  4. Revenir sur le menu principal de TWRP, cliquer sur "Installer" et sélectionner le fichier zip de LineageOS que vous avez transféré auparavant.
  5. Après avoir sélectionné le fichier zip, faire coulisser le bouton pour lancer le flashage qui prend un certain temps.
  6. Une fois le flashage de la custom ROM réussi, vous verrez apparaître le bouton "Effacer cache/dalvik", sélectionnez-le et faites glisser le bouton pour formater.
  7. Maintenant, il faut flasher de la même façon le fichier Gapps.
  8. Une fois les 2 fichiers flashés, il faut redémarrer le système ce qui prend un certain temps et ...

... Ça marche !!! Il faut donc configurer l'appareil comme s'il était neuf. pour cela, il suffit de se laisser guider par les messages qui s'affichent sur l'écran du smartphone (notamment le compte Google lié ).

VII- Peaufinage de l'installation + récupération des anciennes données

Maintenant, il faut "rooter" son nouvel OS pour pouvoir utiliser Titanium Backup.

Il faut passer en mode développeur : aller dans "Paramètres" -> "À propos du téléphone" -> Cliquer plusieurs fois de suite sur la ligne "Numéro de build". Une fois le mode développeur activé, aller dans "Paramètres" -> "Options pour les développeurs" -> "Accès root" et choisir "Applications et ADB".

Toujours dans "Options pour les développeurs", il faut aussi activer le débogage USB, en cochant "Débogage Android".

Dans "Paramètres" -> "Sécurité" -> et autoriser "Sources inconnues".

L'utilisation de Titanium n'a pas été évidente : problème avec utilisateur "root", beaucoup de plantages, de blocages... Bref, ça a pris pas mal de temps avec au final un message "android.process.media" de dysfonctionnement apparaissant régulièrement et que je n'ai pu résoudre en vidant les caches ou autres manips trouvées sur Internet... Avec le recul, je pense qu'il vaut mieux éviter d'utiliser Titanium et faire des installations de zéro en sauvegardant au préalable ses SMS/MMS et contacts.

Il faut ré-installer ses applications (voir la liste) et ensuite récupérer ses anciens SMS avec l'application "SMS Backup & Restore", éventuellement ses contacts en important le fichier .vcf obtenu via leur exportation.

Ensuite, on reparamètre son smartphone notamment les liens vers les serveurs externes via DAVdroid, Nextcloud pour ses annuaires de contacts, ses calendriers,...

VIII- Retour d'utilisation / Conclusion

Au bout de 15 jours d'utilisation, je dois dire que je suis très agréablement surpris par mon smartphone qui a retrouvé une seconde jeunesse sous Android 7.1.1. Il faut cependant trouver d'autres repères, ce qui redemande un léger apprentissage, c'est le seul inconvénient à mon sens... mais j'aurais eu le même problème avec un smartphone neuf.
Je n'ai eu aucun souci, aucun plantage, les applications fonctionnent toutes notamment la synchronisation des calendriers et des contacts. Au début, j'ai eu peur à cause d'une autonomie réduite mais en jouant sur les paramètres, on retrouve les mêmes performances à ce niveau-là.
Bref, à tous ceux et toutes celles ayant un Galaxy S4, je ne peux que recommander de sauter le pas, ils/elles ne le regretteront pas. Et bravo aux développeurs de Lineage OS pour le superbe boulot et leur partage !