postmarketOS : la réappropriation des téléphones par Linux

Tux therapy
Mobilité 13 min
postmarketOS : la réappropriation des téléphones par Linux
Crédits : Martijn Braam

postmarketOS (ou pmOS) est un système d’exploitation devant permettre de faire perdurer la durée de vie des smartphones, en installant un véritable Linux, avec de nombreux avantages potentiels. La route sera cependant longue, le projet étant pour l’instant réservé aux passionnés.

Les développeurs de postmarketOS cherchent à résoudre un problème connu de longue date, mais qui prend de plus en plus d'ampleur alors que la durée de vie des produits est de plus en plus importante pour les consommateurs : l’entretien des smartphones Android. Plus précisément, leur manque d’entretien par les constructeurs puisque les mises à jour s’arrêtent souvent trop rapidement, même dans le haut de gamme.

Samsung a donné un exemple récent en annonçant que les Galaxy S, N et Z auraient dorénavant droit à trois nouvelles versions majeures garanties d’Android. C’est-à-dire trois ans de mises à jour fonctionnelles, contre deux actuellement. Beaucoup ont applaudi, d’autres ont levé les yeux au ciel avec un message : en quoi est-ce suffisant ?

L’équipe de postmarketOS fait partie de ceux-là. Le ton employé sur le site du projet est clair, la situation leur paraissant ubuesque : pourquoi tolérer sur smartphone ce qui semblerait scandaleux sur un ordinateur ?

Le problème Android

Google connait le problème de sa plateforme depuis longtemps. Ce n’est pas un hasard si une partie des composants système a glissé progressivement dans les Play Services. Ces derniers étant mis à jour par l’éditeur sur une base fréquente, ils permettent à de nombreux smartphones de continuer à installer des applications récentes et à apporter un peu plus de sécurité même après l’arrêt des mises à jour.

C'était l'une des motivations du projet Treble visant à séparer les couches de l'OS pour n’en laisser qu’un minimum aux mains des constructeurs, implémenté via une API stable fournie par Google, pour normaliser les ajouts. Mais aussi le projet Mainline, spécifique à Android 10, qui déporte un nouveau lot de composants système vers le Play Store, afin qu’ils ne soient plus dépendants du bon vouloir des constructeurs.

Ils sont nombreux : ANGLE, APK, la connexion aux portails captifs, Conscrypt, le résolveur DNS, l’interface de Documents, ExtServices, les codecs et composants du framework Media, la configuration des permissions réseau, des composants réseau, le contrôleur de permissions, le fuseau horaire, les métadonnées des modules. La situation reste complexe, le noyau et les pilotes sont toujours du ressort de l’entreprise commercialisant le téléphone.

En outre, la plupart de ces améliorations sont l’apanage des versions les plus récentes d’Android, laissant sur le carreau de nombreux utilisateurs qui sont encore bloqués sur des générations antérieures.

Google ne peut pas corriger le tir

Les Play Services et le projet Treble ont fait progresser la situation. Pour preuve, les statistiques fournies par StatCounter (Google ne le faisant plus) : environ 26 % des smartphones sont sous Android 10 (dernière version), 31 % sous Android 9. On est cependant loin, très loin, des scores affichés par Apple : 92 % des iPhone sortis au cours des quatre dernières années sont sous iOS 13, la dernière révision stable du système.

Mais au bout du compte, Google n’est que l’un des maillons. Le constructeur reste maître des éléments qu’il intègre dans son produit, y compris la version du système. Chaque appareil Android est donc un « fork », un dérivé issu d’un instantané puis modifié pour les besoins du produit. Cela tient notamment compte des pilotes que le constructeur doit intégrer dans la distribution pour la prise en charge des composants matériels choisis.

Ces pilotes, comme toutes les briques logicielles, doivent ensuite recevoir des mises à jour, que ce soit pour corriger des bugs, améliorer le support proprement dit ou surtout pour colmater des vulnérabilités. À cette situation déjà complexe, le fabricant ajoute souvent sa surcouche, qui doit tenir compte des modifications déjà effectuées. Il y a donc un travail de compatibilité à faire, qui va se répéter pour chaque mise à jour majeure d’Android.

Les développeurs de postmarketOS pestent contre cette situation qui tend à faire des smartphones des objets avec une durée de vie presque définie à l'avance, jetables. Les aficionados d’Apple auront tôt fait de faire remarquer que la situation est différente pour eux : un iPhone est entretenu en moyenne cinq ans par les mises à jour logicielles, parfois six. Certes le système ne fonctionne pas aussi vite que sur des téléphones récents, mais c’est un autre problème. Et on reste loin de ce qu’un ordinateur (même portable) peut offrir

Ce qu’envisage postmarketOS

Pour les auteurs de pmOS : « ce workflow rend presque impossible la mise à jour de tous les appareils Android à temps ou tout court. Et même si le constructeur fournit des mises à jour, ce ne sera que pendant un temps limité, et vous aurez alors à acheter un nouvel appareil pour avoir les correctifs de sécurité ou la dernière version d’Android. Comme c’est pratique ! ». Et de citer la faille Stagefright, qui a rendu vulnérables un milliard d’appareils.

Comment remédier à ce problème ? Plusieurs solutions possibles. Les développeurs évoquent LineageOS, qui parvient à fournir chaque semaine des mises à jour pour un grand nombre d’appareils. Le système « sauve » littéralement d’anciens smartphones en leur permettant d’accéder à un Android récent, au prix bien sûr de nouvelles habitudes à prendre, la surcouche du constructeur étant absente.

Mais ils vantent une autre approche : fournir une distribution Linux unique et authentique pour l’ensemble des smartphones. Sur le même modèle que les ordinateurs, avec un noyau moderne gérant de multiples matériels.

postmarketOSpostmarketOSpostmarketOSpostmarketOS

Après tout, comme le dit l’équipe : « Prenez un PC moyen de 2007 et installez-y une distribution Linux minimale. Vous pourrez accomplir des tâches basiques (surfer sur le web, lire des emails, écouter de la musique, discuter…) comme sur un PC moderne et onéreux. Vous recevrez même des correctifs de sécurité, pour que votre vieux PC soit protégé, comme un nouveau ». Même l’univers Windows permet ce type d’opérations dans une certaine mesure puisque, techniquement, les prérequis techniques de Windows 10 sont presque les mêmes que ceux de Vista.

Ce n’est donc pas un hasard si la récente version 5.9 du noyau Linux comporte de nombreuses et importantes améliorations pour le support ARM. En plus de l’existant, le nouveau noyau ajoute ainsi huit téléphones utilisant des puces Snapdragon (Qualcomm) et deux tablettes Tegra (NVIDIA).

Dès lors, pourquoi ne pas l’utiliser directement sur des équipements Android ? C’est l’avis d’Arnd Bergmann, l’un des développeurs maintenant le noyau : « Pour moi, cela indique que nous avons enfin suffisamment de support pilote, en particulier pour les GPU, pour rendre tout ceci faisable. Cela montre également l’impact qu’un seul développeur amateur peut avoir, puisque la plupart du nouveau support a été soumis par Konrad Dybcio, qui n’a commencé à contribuer aux patchs du noyau principal pour postmarketOS qu’au début de l’année ».

Comment est conçu postmarketOS

postmarketOS est une version modifiée de la distribution Alpine Linux. Un choix guidé par ce qui a fait son succès dans le domaine des conteneurs : son empreinte réduite, une installation de base ne pesant qu’environ 6 Mo.

Le modèle conçu permet à chaque téléphone de n’avoir qu’un seul paquet pour la base du système, tout le reste étant placé dans des paquets supplémentaires ne dépendant pas du matériel utilisé. C’est l’essence même des distributions Linux. Il n’y est plus question de vieilles versions du noyau lourdement personnalisées comme socle Android. En fait, Android n’existe plus : le téléphone fonctionne avec Linux et son noyau le plus récent, en l’occurrence la version 5.9 actuellement. Le support du matériel est à sa charge, tout du moins au début.

Avec une empreinte aussi faible, les développeurs ont développé un bootstrap (pmbootstrap, écrit en Python) – programme très simple servant à gérer des routines plus complexes – capable de tout abstraire en chroot. Conséquence, le système hôte n’a pas besoin d’être modifié lors de l’installation des programmes requis, pas plus qu’il n’est nécessaire de les intégrer dans la distribution.

L’état actuel de postmarketOS

Même si le système est en travaux depuis des années, il reste un projet loin d’être utilisable en l’état par le grand public. Il s’agit pour l’instant avant tout d’un système à destination des bidouilleurs. Et pour cause : un Linux sur téléphone ne signifie pas nécessairement que ledit téléphone va pouvoir être utilisé au quotidien.

Comme indiqué sur la page officielle du projet, toute aide est appréciée. Les développeurs et autres bidouilleurs sont invités à tester postmarketOS sur des téléphones dédiés à cet usage, afin de récupérer les sources, compiler le système puis modifier les paquets pour les adapter à leurs besoins.

Avantage du bootstrap utilisé, la commande zap peut être utilisée pour réinitialiser le chroot. Cette petite quantité de code rend le projet manipulable et compilable sur de petits ordinateurs. À chacun en effet de faire sa propre installation, même si de nombreux éléments sont déjà donnés par le site du projet.

La question de l’interface reste entière. Suivant la philosophie Linux, rien n’est imposé. L’équipe de développement met surtout en avant Plasma Mobile, car le projet est suffisamment avancé pour permettre une exploitation plus rapide de l’appareil. Et pour les applications ? Il est possible dans l’absolu d’y faire tourner celles conçues pour Android, mais pas nativement. Actuellement, la solution la plus efficace semble être Anbox, de toute façon poussée pour le fonctionnement des applications Linux elles-mêmes.

Cependant, même ainsi la consommation des ressources sera supérieure, car il faudra un environnement Android quasi complet, faisant grimper la consommation RAM et CPU de l’ensemble.

postmarketOSpostmarketOS

En outre, les développeurs pointent l’aspect propriétaire d’une grande majorité d’applications Android, ne correspondant donc pas à l’esprit de postmarketOS. Pour mieux vous représenter l’état actuel de postmarketOS, un billet du 31 mai sur le site officiel se réjouissant du fonctionnement des appels audio avec puce MSM8916, autrement dit le Snapdragon 430, premier SoC 64 bits de Qualcomm, annoncé en décembre 2013.

Actuellement, 200 téléphones peuvent démarrer avec postmarketOS. Mais comme l’équipe le reconnait très volontiers, « démarrer » ne représente pas nécessairement la réalité. Certains modèles vont pouvoir pleinement exécuter Linux et lancer des applications, pas d’autres. Et quand bien même les applications sont lancées, elles ont souvent une interface héritée de la plateforme pour laquelle elles ont été prévues : l’ordinateur.

On le voit aisément sur le test réalisé par Kryštof Černý sur son Lumia 950, fonctionnant sous postmarketOS et Xfce, un environnement qui n’a clairement pas été pensé pour les écrans de téléphone. Mais ça fonctionne, comme @kalubeee le montrait le 2 juillet, dans une vidéo. Un OnePlus 6 y démarre le système très rapidement.

Ce n’est pas vraiment un problème aujourd’hui. Une majeure partie du travail consiste toujours à assurer les bases techniques du projet et à rendre le concept viable pour un maximum d’appareils. Le concept central est simple – un système d’exploitation commun capable d’être mis à jour uniformément et un unique paquet supplémentaire pour tout ce qui touche à l’appareil visé – mais réclame beaucoup de travail.

Et même sur un téléphone neuf

Si postmarketOS se destine avant tout aux anciens appareils, pour « en reprendre le contrôle » jusqu’à ce que le seul facteur limitant soit l’âge des pièces, cela n’empêche pas Pine64 de proposer un téléphone conçu spécialement pour cet usage, commercialisée depuis le 15 juillet pour 149,99 dollars.

Elle fournit une dalle 5,95" IPS (1440 x 720 pixels), un CPU 64 bits à quatre cœurs 1,2 GHz Cortex A-53, un GPU Mali-400MP2, 2 Go de mémoire, 16 Go de stockage, des caméras arrière et avant de respectivement 5 et 2 Mpixels, du Bluetooth 4.0, du Wi-Fi 4 (802.11n), une batterie de 3 000 mAh ou encore un port USB Type-C.

Il s’agit clairement d’un appareil conçu pour les tests, en aucun cas pour une utilisation au quotidien. Toutes les applications ne fonctionnent pas forcément, y compris les appels téléphoniques.

Pour 50 dollars de plus, Pine64 commercialise un Convergence Package, qui commence par augmenter légèrement les caractéristiques : 3 Go de RAM et 32 Go de stockage. Il fournit surtout un dock USB-C proposant la recharge pour le téléphone, deux ports USB2 Type A, un Ethernet 100 Mb/s et un HDMI. Rien de très excitant, ni même particulièrement beau à regarder, mais l’objectif est ailleurs : travailler sur postmarketOS comme système de convergence, qui serait à terme capable de piloter des périphériques.

Martijn Braam, l’un des développeurs de pmOS, a publié plusieurs vidéos sur YouTube où l’on peut voir le système et le PinePhone en action. Celle du 16 juin montre notamment le hub et la connexion d’un écran externe. On y voit facilement l’aspect « bidouille » car l’ensemble ne peut pas être utilisé en l’état pour des tâches quotidiennes.

De nombreuses années de travaux encore en perspective

L’aspect « bêta » du système est totalement revendiqué. Personne ici ne cherchera à faire passer des vessies pour des lanternes. Pour preuve, le tweet épinglé sur le compte officiel de postmarketOS est un billet de blog d’un développeur israélien, Oz Tamir, qui a souhaité installer le système sur son vieux Nokia N900.

L’opération lui paraissait simple, il a vite déchanté. Mais si le billet est poussé, c’est bien parce qu’il fait la synthèse de l’approche : la recherche d’une solution, la consultation de la documentation et une demande d’aide dans le canal IRC des développeurs du projet. L’aspect le plus intéressant du projet n’est pas tant le plaisir qu’il fournira aux développeurs ou bidouilleurs intéressés, mais aux conséquences s’il venait à acquérir suffisamment de maturité pour se répandre auprès du grand public, même s’il ne s’agissait que des passionnés.

Que de tels projets puissent se développer va de pair avec une évolution du paysage Android, aussi bien via les initiatives de Google (Play Services, Treble, Mainline…) que des décisions plus récentes comme celle de Samsung. Un mouvement de contestation plus prégnant, qui s’inscrit dans une réflexion plus vaste sur l’écologie et la consommation. Un nombre croissant de gouvernements se penchant sur la réparabilité des produits – donc sur leur longévité – il est nécessaire que la partie logicielle suive.

Ils posent également la question de la relation au smartphone. Il est commun de constater un remplacement tous les deux à trois ans, alors que l’on attend beaucoup plus de n’importe quel autre équipement électronique. Bien qu’outil, le smartphone est pour certains une interface avec le monde, pour d’autres un objet de mode ou de statut social. Les constructeurs ont appris depuis longtemps à faire miroiter le miracle d’un nouvel achat.

Il reste une longue route à parcourir à postmarketOS, et il est possible que le projet ne dépasse jamais réellement la sphère des passionnés, mais il met sur la table le sujet de la réappropriation du téléphone. En attendant, celles et ceux souhaitant participer y sont bienvenus : « il y a du travail pour tout le monde » mentionne le site.

Vous n'avez pas encore de notification

Page d'accueil
Options d'affichage
Abonné
Actualités
Abonné
Des thèmes sont disponibles :
Thème de baseThème de baseThème sombreThème sombreThème yinyang clairThème yinyang clairThème yinyang sombreThème yinyang sombreThème orange mécanique clairThème orange mécanique clairThème orange mécanique sombreThème orange mécanique sombreThème rose clairThème rose clairThème rose sombreThème rose sombre

Vous n'êtes pas encore INpactien ?

Inscrivez-vous !