Le Pinephone à une eMMC interne. Le backup est chez GNUtoo.
Ce qui est dessus est sans doute libre, donc on devrait pouvoir le publier tel quel à condition de demander les sources à Pine64.
A noter qu'on à pas encore de backup du modem donc vaux mieux pas changer l'OS du modem. GNUtoo à essayé de faire un backup d'un autre Pinephone (Pinephone “convergence” avec 3GB de RAM), et n'a pas réussi à backuper certaines partitions. Et le backup était fait à travers /dev/mtdblock* alors qu'il nous faudrait les fichiers ubifs.
Logiciel | Instructions d'installation officielles | Lien de téléchargement | uSD | eMMC |
GloDroid | https://github.com/GloDroidCommunity/pine64-pinephone | https://github.com/GloDroidCommunity/pine64-pinephone/releases | Oui | Oui |
Mobian | https://wiki.mobian.org/doku.php?id=install-linux | https://images.mobian-project.org/pinephone/ | Oui | Oui |
Tow-Boot | https://tow-boot.org/devices/pine64-pinephoneA64.html | https://github.com/Tow-Boot/Tow-Boot/releases | Non[1] | Oui |
[1] On peut quand même utiliser Tow-Boot sur une carte microSD. Pour ça il faut d'abbord effacer Tow-boot de /dev/mmcblk2boot0 (ça se fait facilement l'installeur de TowBoot). Ensuite il faut utiliser le MBR pour la microSD car avec GPT ça va effacer la table GPT (y'a quand même un backup à la fin de la microSD), et même avec les options avancées[2] on voit bien qu'on peut pas rajouter une partition avant. Donc on peut convertir en MBR avec gdisk en selectionnant 'r (recovery and transformation options (experts only))' puis 'g' (convert GPT into MBR and exit). Y'a peut être moyen de faire marcher avec le GPT si la bootrom essaie aussi à d'autres offsets mais faudrait trouver la documentation pour ça (dans le wiki sunxi, ou dans les manuels du SOC, etc). Ensuite on peut installer Tow-Boot avec 'dd if=Tow-Boot.mmcboot.bin of=/dev/sdN bs=8k seek=1'
[2] gdisk /dev/sdbN + 'x' pour Expert Command + 'l' pour 'set the sector alignment value', si on met le 'sector alignment value' à 1 ça la première partition commence au secteur 34, et la bootrom regarde à l'offset 16 (2048k / 512 == 16)
Distribution | Installation |
PostmarketOS | ? |
Mobian | Plusieurs méthodes possibles, testé en gravant une image sur une microSD |
PureOS Amber | debootstrap OK mais le kernel est trop vieux pour le Pinephone (pas de dts pour le pinephone) |
PureOS byzantium | Kernel assez récent et à normalement le bon dts avec support écran mais le debootstrap rate en second stage (ça rate au niveau des certificats et pourant le keyring est installé et j'avais rajouté ca-certificates dans la liste des paquets supplémentaires, faut peut être un keyring en tant que paquet supplémentaire ou d'autres paquets qui manquent) |
Distribution | date | Informations utiles | Commentaires |
PostmarketOS | Ancien | Installé par Dino? Utilisait KDE, N'était pas super bien intégré | |
Mobian | 25/04/2020 | mot de passe par défaut: 1234, u-boot n'a pas la commande ums compilé dedans | Gnome 3, à l'air pas mal, mieux intégré que le KDE du PostmaketOS mais par défaut certaines applications par défaut comme le désarchiveur ne marchent pas bien en portrait (d'autres marchent parfaitement). Attention: si on change le mot de passe et rajoute des lettres on ne peux plus dévérouiller l'écran car le dévérouilleur à un clavier qui n'a que des chiffres. L'interface est aussi moins efficace que Android. Par exemple pour le multi-tache c'est plus long pour changer d'application et il faut quand on utilise des applications non adaptées comme le désarchiveur il faut souvent passer du mode portrait au mode paysage et vice versa. |
GloDroid est une distribution Android qui supporte le Pinephone. La version testée ici est la 2023w12.
L'installation demande:
L'installation est assez simple si on à pas déjà installé tow-boot (https://github.com/Tow-Boot/Tow-Boot). On peut l'installer soit sur une carte microSD soit sur le stoquage interne.
Certaines cartes microSD sont assez lente donc (elle peuvent ralentir le téléphone au point de le bloquer quand on fait un backup du stoquage interne avec dd par exemple), donc il vaux mieux privilégier le stoquage interne si possible.
Si on à déjà installé towboot (c'est maintenant requis pour les versions récented de Mobian par exemple), towboot sera installé sur le stoquage interne dans /dev/block/mmcblk2boot0 et il va prendre la précédence sur l'endroit ou glodroid installe son bootloader (/dev/block/mmcblk2), et l'installation de GloDroid sur la mémoire interne va rater.
Vu que le bootloader sur une microSD prend la précédence par rapport à la mémoire interne, Pour régler le problème, il suffit soit:
$ adb root $ abd shell # echo 0 > /sys/class/block/mmcblk2boot0/force_ro # dd if=/dev/zero of=/dev/block/mmcblk2boot0 # sync # echo 1 > /sys/class/block/mmcblk2boot0/force_ro
Puis on peut recommencer l'installation sur la mémoire interne depuis le début.
Le modem peut disparaitre à n'importe quel moment et crashe souvent au boot du téléphone. Quand ça arrive on ne peut plus envoyer de SMS (a noter que les SMS sont limités à 127 charactères) mais on voit encore la barre de réseau.
Quand le modem est la, on peut le voir avec lsusb: pine64_pinephone:/ # lsusb
Bus 003 Device 001: ID 1d6b:0001 Bus 002 Device 003: ID 2c7c:0125 Bus 001 Device 001: ID 1d6b:0002 Bus 004 Device 001: ID 1d6b:0001 Bus 002 Device 001: ID 1d6b:0002
Sinon quand il est pas la le lsusb ressemble à ça:
Bus 003 Device 001: ID 1d6b:0001 Bus 001 Device 001: ID 1d6b:0002 Bus 004 Device 001: ID 1d6b:0001 Bus 002 Device 001: ID 1d6b:0002
La commande lsusb peut être tapée soit dans une application terminal (comme termoneplus trouvable sous f-droid), soit avec adb. A noter que la plus part des applications F-Droid ont des dépendances non libres (comme le SDK officiel Android).
Par exemple avec adb si on veut voir quand/si le modem disparait durant le boot on peut taper:
watch adb shell lsusb
Pas mal de tutoriaux pour le pinephone mentionnent l'usage de mmcli. GloDroid utilise maintenant ModemMamager donc on peut aussi utiliser mmcli. Ça marche aussi sans root par adb ou dans un émulateur de terminal.