Vous avez envie de voir à quoi ressemble Googlebook OS, mais pas du tout envie de dégainer +1000 balles pour un ordi bridé ? Ça tombe bien, un développeur a codé
gbos-vm
, un outil open source sous licence MIT qui lance sur un Mac Apple Silicon l'image de recovery de Google (conçu à l'origine pour le Dell Googlebook), dans une machine virtuelle boostée par le GPU.
Ce n'est donc pas un Android générique habillé en Googlebook mais un script qui télécharge l'image officielle (la build 16471258, ARM64, Android 17), en vérifiant l'empreinte, puis la fait démarrer sous QEMU avec Vulkan traduit vers Metal. Et rien de chez Google n'est redistribué dans le dépôt (pas de Playstore de base donc...).
Côté Mac, il vous faut donc un Mac avec archi Silicon, Homebrew, les outils en ligne de commande de Xcode, un JDK et le SDK Android (plateforme API 34 minimum) avec son NDK. Et comptez 16 Go de RAM en pratique car la VM en squatte 4 mais les compilations successives en auront besoin d'un peu plus. Et le script installera de lui-même tout ce qui vous manquera côté Homebrew, sans jamais vous demander un accès via sudo. Comptez environ 9 Go pour le download de tout ça et minimum 60 Go de libre pour la VM.
git clone https://github.com/skylartaylor/gbos-vm.git
cd gbos-vm
./install.sh
Ensuite, vous ouvrez l'application construite (dispo dans work/host/Googlebook VM.app), dont la mission est de lancer la VM et de l'éteindre proprement quand vous la quittez.
Le premier boot prendra environ 45 secondes sur un MacBook M5 et si un sélecteur d'utilisateur s'affiche, cliquez juste sur "User" et y'a pas de mot de passe. Notez que la souris est capturée par défaut, et que le raccourci ⌃⌥ la libèrera.
Voilà, c'est pas encore parfait car le bluetooth peut crasher, on est limité à 60 images par seconde max et que les échanges entre la VM et l'hôte (le mac) sont un peu instables mais j'imagine que tout ceci se bonifiera avec le temps...
J'sais pas si vous avez vu, mais Google vient de mettre en ligne une
page d'aide
qui explique comment déverrouiller le bootloader d'un Googlebook ! Je pensais pas écrire ça un jour. Les Googlebook, ce sont des portables mi-Android mi-ChromeOS qui sont commercialisé en France depuis hier, pour la modique somme de 1 099 euros.
Perso, je ne vois toujours pas l'intérêt d'acheter ce truc...
Je vois vraiment ça comme un PC bridé, ou un Android avec un gros clavier et je pense que c'est bien se compliquer la vie que d'acheter ce truc plutôt que de prendre un vrai PC ou un petit Macbook. Sauf, évidemment, si on est une personne qui n'a pas envie de s'emmerder la vie à apprendre quoique ce soit de nouveau, et qu'on veut juste aller sur le site de La Poste consulter le prix des timbres, ou faire un Mappy pour savoir comment se rendre au bureau de vote le plus proche.
Mais grâce à cette "possibilité" de déverrouillage, John Wu, le créateur de
Magisk
, a annoncé travailler sur une version de Magisk pour ces machines.
Pour déverrouiller le Googlebook, vous devez donc activer le déverrouillage OEM dans les options pour développeurs, vous passez ensuite en mode récupération avec Échap + F2 puis le bouton d'alimentation, et l'option "Unlock bootloader" se trouvera dans les options avancées. Google précise également que ça efface toutes les données, que ça désactive la sécurité de l'appareil, que les modifications ne sont pas supportées et que la garantie peut y passer.
Et côté root,
Wu
a posté dans la nuit du 4 au 5 octobre "Magisk on Googlebook", en promettant du code et des instructions dans les jours suivants.
Son profil indique d'ailleurs qu'il bosse sur Android chez Google, et il voit dans le Googlebook la plateforme idéale pour bidouiller ! En effet, sur un téléphone rooté, les applis bancaires et de paiement cassent, alors qu'ici vous pouvez y accédez depuis le navigateur, comme sur n'importe quel portable.
Le blocage, selon lui, vient du mode utilisateur du système. Googlebook OS fait tourner Android en Headless System User Mode, c'est-à-dire que l'utilisateur 0 reste en arrière-plan et que vous travaillez sur un compte secondaire, alors que Magisk part du principe qu'il n'y a qu'un utilisateur principal. Le support de ce mode a été fusionné dans la branche principale du dépôt dans la nuit du 5 au 6 octobre, par contre, aucun commit ne cite pour le moment le Googlebook.
Reste que rien n'est livré officiellement encore... La dernière version stable de Magisk, la 30.7, date de février et donc aucune version stable ne contient ce code. Sans oublier que pour flasher la machine, Wu explique que le fastboot par USB ne marche pas sans câbles spécialisés. Cependant, il dit avoir trouvé une solution, sans la détailler.
Donc voilà... aujourd'hui, le root d'un Googlebook n'a aucune méthode publique, et le déverrouiller maintenant en suivant la technique de Google, revient à couper la sécurité de la machine sans rien pouvoir en faire de plus côté root. Donc autant attendre les instructions de Wu pour Magisk qui devraient arriver dans les jours qui viennent.
PipePipe
est un client Android libre qui permet de regarder YouTube, mais aussi les plateformes asiatiques comme NicoNico et BiliBili. Vous l'aurez compris, c'est un fork de NewPipe que son auteur a sorti début 2022 pour le développer de son côté avec les trucs dont il avait envie. Comme PipePipe ne reprend pas les mises à jour de NewPipe et ne lui en envoie pas non plus, cela veut dire qu'un changement fait dans NewPipe n'arrive pas forcément dans PipePipe et vice versa.
Ceci étant dit, ce qui va vous intéresser, c'est qu'il intègre avant tout le fameux
SponsorBlock
, une base collaborative qui recense les passages sponsorisés des vidéos pour les sauter tout seul comme un grand. Ça fonctionne aussi bien sur YouTube comme sur BiliBili.
Et vous pouvez aussi y masquer les (poom poom) Shorts, les vidéos payantes ou tout ce qui contient un mot-clé de votre choix ou en provenance d'une chaîne dont vous ne voulez plus entendre parler !! Et pour ceux qui écoutent plus qu'ils ne regardent, il y a même un mode lecteur de musique en arrière-plan avec, s'il vous plait, minuteur de sommeil, histoire que ça ne tourne pas toute la nuit.
Le panneau SponsorBlock de PipePipe, avec les segments repérés dans la vidéo et l'interrupteur pour les sauter
Alors peut-être que ça ne vous touche une sans faire bouger l'autre, mais par exemple SponsorBlock, l'équipe de NewPipe
n'en veut pas
afin de ne pas pénaliser les créateurs de contenu.
Après, attention si vous filtrez la pub au niveau du DNS, avec un Pi-hole, un AdGuard Home ou NextDNS. Ces trucs-là bloquent parfois les domaines googleapis.com / google.com, ce qui fait planter la lecture de YouTube. Donc, il faut les mettre dans votre liste d'exceptions, plutôt que de stopper tout le filtrage si ça ne marche pas la lecture sur votre téléphone. Et si ça foire toujours
le wiki du projet
liste d'autres causes, comme le blocage anti-bot de YouTube.
Côté compte, PipePipe n'en demande aucun et ne synchronise absolument rien vers un cloud quelconque. Tous vos abonnements, votre historique et vos playlists restent stockées bien au chaud sur votre smartphone. Et surtout, ce que j'apprécie, c'est que la connexion à YouTube est facultative. En fait, il n'est conseillé de l'activer que lorsque vous rencontrez des blocages IP ou une limite liée à votre âge, ah et aussi pouvoir extraire de l'audio à partir des vidéos de ce que j'ai compris.
Voilà, pour ceux qui utilisent des
Tubular
qui, malheureusement,
est à l'arrêt
, c'est peut-être une bonne alternative, tout comme
BravePipe
qui intègre lui aussi SponsorBlock.
Voilà, pour installer BravePipe, il vous faudra Android 6 minimum et vous rendre sur la fiche
F-Droid
ou directement télécharger
l'APK sur GitHub
.
C'est l'histoire d'un smartphone Pixel de Google sur lequel il n'y a absolument rien... Vous l'allumez, pas une icône d'application, rien à faire défiler, pas de widget météo et ce genre de conneries... Non, vous avez juste l'heure, un gros bouton "micro" au milieu de l'écran et une ligne de saisie tout en bas pour ceux qui préfèrent taper.
L'écran d'accueil au complet : l'heure, le bouton à maintenir pour parler, et la ligne de saisie pour ceux qui préfèrent taper.
Ce truc ça s'appelle RistOS, et c'est un firmware pour Google Pixel 10a qui a pour objectif de remplacer le lanceur d'Android par un assistant vocal. Tout ce qui reste ensuite du téléphone tient dans un menu qui apparaît sur le côté : Téléphone, messages, appareil photo, galerie, cartes hors ligne (c'est Organic Maps, embarqué dans l'image), lampe torche et réglages.
Sept accès, et c'est fini. Pas d'app store, pas de navigateur, pas de compte Google, et évidemment aucun moyen d'ajouter quoi que ce soit.
Le menu sorti sur le côté, ses sept entrées, et rien d'autre à faire glisser.
Le projet repose sur GrapheneOS, sans être affilié ni à celui-ci ni à Google, et il ne tourne que sur le
Pixel 10a
(lien affilié), que Google vend encore la "modique" somme de 389 €.
Bref, par défaut, si vous appuyez sur ce gros bouton micro, absolument rien n'écoutera ce que vous avez dit, parce que l'image publique ne contient aucune adresse de serveur. Pour que cela fonctionne, vous devrez aller dans les réglages et remplir le champ dédié afin de lui indiquer l'URL de votre backend Rist. C'est donc le serveur,
que vous devez installer comme ceci
, qui récupèrera l'audio encodé et qui ensuite vous répondra au travers du téléphone.
L'idée, c'est que comme ça, on peut changer de téléphone sans souci, puisque tout est centralisé sur le serveur. C'est donc assez tranché comme usage, surtout que l'install efface tout ce qui est sur l'appareil. Mais bon, c'est peut-être ça le futur... Une coquille vide qui discute avec un serveur IA personnel, qui se trouve chez vous.
Par contre, n'espérez plus pouvoir utiliser votre téléphone pour appeler, par exemple, un service d'urgence, ça ne fonctionnera pas. Et si vous préférez simplement virer l'emprise de Google de votre téléphone sans avoir à vous monter un serveur entier derrière,
/e/OS fera le travail
.
Il y a 2 jours, GrapheneOS que vous connaissez tous parce que c'est l'Android que la police déteste, a détaillé une fonction baptisée secure paste, qui change la façon dont Android sert le contenu du presse-papiers aux applications. Le principe c'est qu'une application peut relire ce qu'elle a copié elle-même, mais rien de ce que les autres ont copié.
Android dans sa version de base n'est pas resté les bras croisés sur ce sujet, mais il s'est arrêté en chemin et depuis Android 10, seules l'application affichée à l'écran et le clavier par défaut peuvent lire le presse-papiers, ce qui a fermé la porte à celles qui tournent en arrière-plan. Puis Android 12 a ajouté une notification à la première lecture d'un contenu venu d'ailleurs, et enfin Android 13 vide le presse-papiers au bout d'un moment.
Mais depuis, plus rien...
Le trou qui reste,
Microsoft l'a documenté
en mars 2023. La version 7.9.2 de l'application SHEIN (oui, le site de fringues), téléchargée plus de cent millions de fois, lisait périodiquement le presse-papiers, et si elle y trouvait en même temps un signe dollar et un "://", elle expédiait le contenu vers un serveur distant.
Et la restriction d'Android 10 n'a rien empêché, tout simplement parce que l'application tournait au premier plan. Le comportement problématique de l'app SHEIN a ensuite disparu en mai 2022, après un signalement à Google, mais le problème de fond n'a jamais été réglé. Et j'imagine que d'autres apps actuellement sur le PlayStore appliquent la même technique sans que personne ne l'ait encore remarqué.
Secure paste de GrapheneOS s'attaque donc à ça en changeant la règle plutôt qu'en ajoutant un avertissement, et cette fois être affiché à l'écran ne donne plus droit à rien. Une application privée d'accès sait toujours qu'un élément est disponible, et peut en inspecter le type, l'horodatage de copie et la présence de mise en forme. Mais le contenu lui-même, son libellé et ses données annexes ne lui sont plus offerts sur un plateau d'argent.
Et le "collage" continue de marcher lui, parce que c'est vous qui l'autorisez. Que vous colliez depuis la barre de sélection de texte, depuis le clavier, depuis un service d'accessibilité ou avec un raccourci clavier, le système délivre une autorisation courte, liée à l'application qui reçoit et à l'élément en cours. Et pour les applications qui dessinent leur propre barre de sélection, comme celles codées en Flutter, un bouton "Coller" est visible dans le clavier par défaut.
Le plus vif d'esprit qui me lisent sont déjà debouts sur leur chaise et hurlent à travers leur écran : Et comment ça se passe pour "couper" ? Qui décide ?? Hé bien le réglage existe en version globale et par application, et il est autorisé par défaut, pour ne rien casser des applications déjà installées. Autrement dit, personne ne sera protégé sans l'avoir décidé et c'est à vous d'aller basculer en collage seulement celles à qui vous ne faites pas confiance.
Maintenant, calmez-vous les groupies de GrapheneOS parce que rien de tout ça n'est encore livré. Le code est visible dans
une pull request ouverte
depuis le 22 août dernier mais toujours pas fusionnée. GrapheneOS dit vouloir l'intégrer bientôt, sans donner de date et le mécanisme ne porte que sur la lecture, donc il ne dira rien des applications qui écrivent dans le presse-papiers pour y remplacer ce que vous venez de copier (coucou les détourneurs de transactions crypto)...
La même annonce parle aussi de l'application Messaging, dont l'interface vient d'être refaite en Compose, et le projet lâche au passage un chantier autrement plus lourd : faire du RCS directement dedans, chiffrement de bout en bout compris, pour ne plus avoir besoin de Google Messages. Héhé... Aujourd'hui, RCS marche très bien sur GrapheneOS, mais uniquement avec l'application de Google et sa couche Google Play isolée et c'est de ça dont ils veulent se passer.
Comme le RCS n'est pas une plateforme ouverte en pratique (pas autant que le SMS et le MMS quoi) et que tout cela repose sur l'infrastructure de Google et des opérateurs, le plan, c'est donc de refaire d'abord la partie que Google Messages assure, en gardant Google Play isolé pour l'activation, puis de s'en passer chez les opérateurs qui le permettent... à condition qu'ils acceptent le client de GrapheneOS, ce qui n'est pas gagné...
Quand je pense que Google, ces grands hypocrites qui ont passé des années à réclamer qu'Apple adopte RCS au nom de l'ouverture,
coupe lui-même le service
depuis 2024 sur les téléphones rootés et une partie des ROM alternatives. GrapheneOS y échappe mais ça donne quand même l'idée de l'accueil qu'un client maison pourrait espérer... On verra bien.
Mais bon, si vous êtes sur GrapheneOS, je serais vous, je surveillerais cette histoire de presse-papiers sécurisé parce que quand ça arrivera, vous serez encore plus béton face aux apps problématiques.
Gadgetbridge
est une application Android libre qui va vous faire zizir parce qu'elle permet de remplacer l'app merdique du fabricant de votre bracelet ou montre connectée ou encore de vos écouteurs Bluetooth. Comme ça, terminé le compte obligatoire pour utiliser vos "wearables" et fini les serveurs du constructeur localisés en Chine ou je ne sais où qui reçoivent vos heures de sommeil ou votre fréquence cardiaque minute par minute... Puis surtout, ça permet de n'avoir plus qu'une seule application Android pour tous vos appareils et ça c'est cool aussi !
Surtout que ça fonctionne en OFFLINE... Hé oui, le manifeste de cette app indique bien que jamais, Ô grand jamais, elle ne se connectera au net. Y'a même pas la permission dans l'app, c'est bloqué au niveau du code.
Maintenant, concrètement, Gadgetbridge permet de recevoir vos notifications à votre poignet, de répondre aux appels avec réponses préenregistrées, de paramétrer des alarmes, de lancer une lecture de musique, d'avoir du suivi d'activité et de sommeil, ainsi que vos tracés GPS de vos trop rares séances de sport. Et bien sûr, tout reste en local sur votre téléphone. Notez que
AsteroidOS
, dont je vous ai déjà parlé, fait pareil mais un cran plus bas, uniquement dans la montre.
Gadgetbridge supporte actuellement 529 modèles de 74 fabricants, d'Amazfit à Garmin, avec Pebble, Sony, Huawei et Xiaomi. Mais prenez le temps de lire la fiche technique de votre modèle car tous ne sont pas supportés en intégralité.
Reste maintenant le prix à payer, et il ne vient pas de Gadgetbridge.
En effet, sur les Amazfit et Xiaomi récents, l'appairage se négocie avec les serveurs du constructeur. Il faut donc appairer une première fois avec l'appli officielle, puis en extraire la clé. Même histoire chez Fossil, dont les montres HR sortent en plus avec un firmware de démo que seule l'appli maison sait remplacer. Chez Nothing aussi, la CMF Watch Pro veut une clé extraite d'un téléphone rooté, alors que les Pro 2 et Pro 3 s'en passent.
Une appli qui aurait la permission d'aller sur Internet irait chercher cette clé toute seule mais comme celle-ci ne peut pas, faudra le faire vous-même (c'est expliqué comment dans la doc).
De leur côté, les Garmin s'appairent directement, sauf quelques modèles qui veulent avoir vu l'appli officielle une fois. Mais la météo, et l'AGPS sur certaines montres, réclament des identifiants à renouveler tous les 90 jours, et Gadgetbridge propose d'y répondre avec de faux jetons OAuth. Après si vous voulez revenir ensuite à celle du constructeur, faudra peut-être relancer une remise à zéro d'usine.
Après pour les irréductibles qui voudraient quand même du réseau, un module séparé, Internet Helper, est arrivé début 2026. Il relaie les requêtes des applications de la montre, s'installe à part, et nécessite sa propre autorisation.
Voilà, tout cela s'installe depuis F-Droid sur tout Android 6.0 ou plus récent, sous licence AGPLv3, et le code est dispo sur Codeberg.