Le développement de CyanogenMod (CM) a été arrêté. LineageOS en prend la suite. Techniquement parlant, il en est la continuation1).
Les arguments en faveur du remplacement du système propriétaire d'origine par un système open source sont les mêmes que pour un ordi. LineageOS présente les mêmes avantages que ceux que présentait CM, en son temps.
Pour les personnes ayant déjà installé CM, il est impératif de le remplacer par LineagesOS. Pour des raisons élémentaires de sécurité, on ne peut pas se reposer sur un système qui n'est plus maintenu! De plus, LineageOS permettra de bénéficier de versions récentes d'Android.
Certains androphones bénéficient d'une procédure de migration de CM à LineageOS qui permet de changer le système sans perdre ses données2). Ce n'est pas le cas du Honor 5x. On doit donc réaliser une installation complète qui entraînera l'effacement de toutes les données internes.
La cas d'utilisation décrit ci-après est celui d'une installation de LineageOS en remplacement de la dernière mise à jour disponible de CM13 disponible pour le Honor 5x.
On peut tout faire depuis son androphone mais nous allons partir du principe qu'on utilise un ordi.
La vérification des md5 peut s'effectuer directement sur l'androphone.
Si votre androphone est équipé d'une App (par exemple ES File Explorer) permettant de calculer la somme de contrôle (md5) des fichier copiés, Cette option est intéressante si l'on télécharge directement sur l'androphone, sans passer par un ordi.
Une fois le fichier téléchargé sur l'ordi, on peut enregistrer la somme de contrôle dans un fichier texte. Dans un terminal, on tapera la commande suivante :
$ md5sum mon_fichier_téléchargé.zip > mon_fichier_téléchargé.zip.md5
On procède ainsi pour les trois fichiers téléchargés. On dispose alors de trois fichiers zip et de trois fichiers md5. On copie ces six fichiers sur la carte SD.
Lorsqu'on demandera au Recovery d'installer un fichier zip présent sur la carte SD, il trouvera lui-même le fichier md5 associé et vérifiera automatiquement que la somme de contrôle est correcte, c'est-à-dire que le fichier n'a pas été altéré lors de l'enregistrement sur la carte SD.
Les pré-requis sont les mêmes que pour installer n'importe quelle ROM custom sur le Honor 5x :
Le premier [re]démarrage après une mise à jour est inhabituellement long. Ne pas s'alarmer.
LineageOS signale automatiquement l'existence de mises à jour que l'on peut télécharger via le réseau9). Vu la taille des fichiers à télécharger, faites la mise jour à travers une connexion WiFi. Ces mises à jour apportent des améliorations et des correctifs à la version déjà installée. Elles ne permettent pas de passer de la version 13 (Android 6) à la version 14 (Android 7).
Lorsqu'une mise à jour est signalée, il suffit de la lancer. Tout se fera automatiquement jusqu'au moment où le Recovery présentera un écran permettant de rebooter l'androphone.
À la date de la rédaction, je n'ai réalisé aucune mise à jour manuelle. Dans ce cas, le surcoût de reflashage de l'extension SU étant minime j'aurais tendance à l'effectuer…
sources :
L'application de mise à jour OTA signale la montée de version mais ne permet pas de l'effectuer. Il faut procéder à une installation manuelle. Tout peut se faire depuis votre androphone mais il est préférable14) d'utiliser un ordi relié à l'androphone.
Pour ce type d'opération, il est vivement conseillé de lire l'intégralité de la prcédure avant de commencer à l'éxécuter.
Les traces d'exécution donnent une idée des temps de transfert. Commencer par un md5 permet de s'assurer que le transfert est instantané.
$ adb devices List of devices attached IMTP1F2JDYJK02051 device $adb push lineage-15.1-20190101-nightly-kiwi-signed.zip.md5 /sdcard/ 20 KB/s (80 bytes in 0.003s) $ adb push lineage-15.1-20190101-nightly-kiwi-signed.zip /sdcard/ 6067 KB/s (508181146 bytes in 81.791s) [...] $ adb push addonsu-15.1-arm64-signed.zip /sdcard/ 5451 KB/s (1019556 bytes in 0.182s) $ adb push addonsu-15.1-arm64-signed.zip.md5 /sdcard/ 7 KB/s (64 bytes in 0.008s)
Après la première mise à jour de montée de version (décrite ci-avant) satisfaisante, mon Honor 5X a mal supporté la première mise à jour Il restait utilisable mais avec une forte instabilité après chaque redémarrage (freeze, reboot intempestif, apps bloquées…).
Aucun !!! Les fonctionnalités d'économie d'énergie intégrées à Oréo n'atteignent pas l'efficacité de Greenify. On perd un lanceur d'application qui permettait de construire des écrans complémentaires à gauche et droite de l'écran d'accueil16).
L'unique “bénéfice” est de disposer de mises à jour régulières. Le passage à LOS 15 n'est pas un choix mais une contrainte puisque LOS 14 n'est plus maintenue.
Pour en avoir le cœur net, j'ai rejoué une première installation de LOS 1418) et tout refonctionnait parfaitement. C'est donc bien LOS 15 qui est merdique sur Honor 5X !
Une mise à jour dont je me serais bien passée : aucun avantage fonctionnel et une pile d'emmerdements.
Après encore quelques mois d'utilisation et de mises à jour regulières, certaines fonctionnalités sont revenues :
Je n'ai pas tenté de réinstaller les autres application défaillantes sous LOS 15.1
La procédure officielle pour le Honor 5X (kiwi) a été suivie avec succès, après y avoir apporté quelques adaptations. L'androphone de test utilisant les GApps sous LOS 15.1, il en a été tenu compte, comme l'indique la procédure.
Cette procédure utilise une connexion par câble USB entre l'ordi et l'androphone. En théorie, une fois les deux appareils connectés, l'installation s'effectue exclusivement depuis l'ordi (en ligne de commande, depuis un terminal). On n'est pas censées toucher à l'androphone. Les fichiers à installer ayant été récupérés sur l'ordi, on n'aura pas besoin de les recopier sur l'androphone, ni sur la mémoire interne, ni sur la carte-SD. Les commandes d'installation lancées depuis l'ordi effectuent à la fois le transfert et le flashage du système et des applications.
source : What is ADB Sideload and how can I use it ? (twrp.me) (en)
Le prérequis absolu est donc de disposer d'une connexion ADB19) fiable et fonctionnelle entre l'ordi et l'androphone. Cette connexion peut emprunter plusieurs canaux. Le canal le mieux documenté et le plus couramment utilisé est une liaison par câble USB. C'est celui qui a été utilisé dans le cas décrit ci-après.
L'établissement d'une connexion ordi-androphone a déjà été décris dans une fiche précédente.
De plus, il faut vérifier que la version de l'application adb installée sur l'ordi est au minimum 1.0.32 :
$ adb version Android Debug Bridge version 1.0.32
Si tel n'est pas le cas, la procédure décrite ici n'est pas applicable.
Dans le cas relaté, la procédure officielle n'a pas pu être déroulée telle quelle. En effet, elle suppose :
Le fait que la première condition ne soit pas remplie20) s'observe dès la toute première commande de la procédure :
$ adb reboot sideload 'adb root' is required for 'adb reboot sideload'.
Dans le cas testé, les deux conditions n'étaient pas vérifiées. Les configurations étaient les suivantes :
En conséquence, l'androphone a dû être placé en mode sideload depuis TWRP, avant chaque commande d'installation.
L'essentiel du mode d'installation a cependant été préservé dans la mesure où les commandes d'installation qui ont été utilisées (adb sideload <fichier>) sont exactement celles que préconise la procédure officielle21)
Avant chaque commande d'installation, on s'assure que l'androphone est bien en mode sideload
$ adb devices List of devices attached IMTP1F2JDYJK02051 sideload
le mot sideload atteste que l'androphone est bien mon de sideload22) et non en mode recovery.
Ce qui donne la séquence d'opérations suivante (les lignes commençant par “@” désignent des actions sur l'androphone, les lignes commençant par “$” désignent des commandes saisies sur l'ordi) :
@ Advanced > ADB sideload > swipe $ adb devices $ adb sideload lineage-16.0-20190712-nightly-kiwi-signed.zip @ Back > Advanced > ADB sideload > swipe $ adb devices $ adb sideload open_gapps-arm64-9.0-nano-20190712.zip @ Back > Advanced > ADB sideload > swipe $ adb devices $ adb sideload addonsu-16.0-arm64-signed.zip $ adb reboot
Le premier redémarrage est toujours long…
Toutes les données applicatives, les comptes et autres configurations des applications sont conservées. Seul l'écran d'accueil (et les écrans satellites) se retrouve fatalement en vrac, d'où l'intérêt d'avoir fait des captures d'écran.
À première vue, aucune des applications tierces installées n'a cessé de fonctionner. TitaniumBackup répond présent et OTG n'a pas disparu. La mise à jour OTA fonctionne.
L'affichage des applications est plus lent sans qu'il soit possible de dire si c'est dû aux effets graphiques inutiles et pénibles ou à un ralentissement plus profond. Une fois l'application chargée, la réactivité semble identique à celle observée sous LOS 15.1. Heureusement, on n'observe pas le ralentissement très net qui avait accompagné le passage de LOS 14 à 15.
LOS 15 n'a été qu'une version de transition qui aura vécu à peine quelques mois. Elle ne m'aura laissé aucun bon souvenir, bien que Pie annonce quelques améliorations régressions, tel l'affichage de l'historique en mode exclusif “pas trop d'informations, il me reste 3 neurones”…
Cette mise à jour est censée conserver les données et les comptes enregistrés sur le Honor 5X. C'est effectivement ce que j'ai constaté après une installation qui s'est déroulée sans problème. Comme toujours avant ce type d'opération, il est plus que recommandé d'effectuer une sauvegarde aussi ample que possible.
Tant que l'information est en ligne sur le site de LineageOS, je reproduis et documente les informations disponibles.
Sources :
La procédure officielle suppose que la mise à jour se fait en utilisant la dernière version du recovery de LineageOS pour Honor 5X. S'il n'est pas déjà installé, la procédure officielle stipule qu'il faut l'installer23).
La procédure de mise à jour24)ne traite pas du rootage du système. C'est d'autant plus regrettable que la technique utilisée jusqu'ici (LOS 16) est inopérante25).
Le Honor 5X n'étant plus maintenu par LineageOS, aucun paquetage officiel d'installation n'est proposé au téléchargement. On peut toutefois se procurer un paquetage de deux manières :
Si l'on souhaite utiliser des paquetages complémentaires (par exemple, les Google Apps) il est impératif de se les procurer avant de procéder à la mise à jour de LOS.
sur le Honor 5X : Paramètres > Système > Options avancées > Options pour les développeurs > Débogage Android : oui Paramètres > Système > Options avancées > Options pour les développeurs > Accès root : ADB uniquement Sur l'ordi : adb -d root adb -d reboot sideload adb -d sideload /path/to/zip (inserting the path to your LineageOS package). !!! NE PAS redémarrer le Honor 5X !!! Sur le Honor 5X : Apply Update > Apply from ADB Sur l'ordi : adb -d sideload /path/to/zip those packages in sequence. Once you have installed everything successfully, click the back arrow in the top left of the screen, then “Reboot system now”
Je décris ici la procédure que j'ai suivie.
La version de TWRP installée étant la dernière produite pour le Honor 5X (3.4.0.0), je ne change pas de recovery.
OpenGapps signalant des instabilités sous Android 10 et ayant atteint une taille colossale (289 Mio contre 168 Mio lors de l'installation de LOS-16), je bascule sur MinTheGapps (127 Mio).
Je choisis d'installer Magisk suivant la procédure “périmée” (via TWRP + run) qui semble la plus sûre (déjà validé sur le Poco F3 et recommandée par ailleurs
Le recovery installé étant TWRP, il est impossible de suivre scrupuleusement la procédure officielle. Les principes fondamentaux sont néanmoins respectés. Dans la procédure ci-après, le préfixe de chaque action précise sur quoi on agit :
@ Paramètres > Système > Options avancées > Options pour les développeurs > Débogage Android = coché @ Paramètres > Système > Options avancées > Options pour les développeurs > Accès root > ADB et applications $ adb devices // pour vérifier que ça fonctionne $ adb reboot recovery // adb sous TWRP tourne automatiquement sous root $ adb reboot sideload // attendre l'écran de sideload sur l'androphone $ adb sideload OS/lineage-17.1-20210311-nightly-kiwi-signed.zip $ adb reboot sideload // attendre l'écran de sideload sur l'androphone $ adb sideload OpenGapps/MindTheGapps-10.0.0-arm64-20220224_161733.zip $ adb reboot sideload // attendre l'écran de sideload sur l'androphone $ adb sideload Magisk/Magisk-v27.0.zip @ Reboot > System @ Magisk >>> se laisser guider par Magisk pour terminer l'installation et le rootage
La radio-FM faisant partie du cahier des charges de cet androphone, j'arrête les tests.
L'androphone n'étant pas équipé d'une carte SIM, les fonctionnalités suivantes n'ont pas été testées :
Mais aussi :
Ayant effectué une sauvegarde complète préalable, sous TWRP, il m'a suffit de la restaurer pour retrouver un Honor 5X exactement dans l'état où il était avant la montée de version en LOS-17 : système, applis32), données, réglages !