Blog de dada

DevOps, bidouilleur et routard plein de logiciels libres

Aide

Fairphone 2 : corriger le GPS de votre téléphone

Rédigé par dada / 06 mars 2017 / 8 commentaires




Alors là, je viens de faire tomber le dernier blocage frustrant de mon Fairphone 2 : le GPS qui ne tournait pas. J'étais devenu fort en lecture de cartes sur OsmAnd~ mais je saturais aussi un peu. C'est marrant de faire le malin en sachant lire un carte dans tous les sens en 2017, mais bon, voilà, hein.
J'avais déjà passé trop de temps sur les moteurs de recherche et le forum Fairphone mais l'autre soir, dans une ultime tentative, j'ai débloqué ma situation ! Voici comment j'ai fait :

En préambule, notez que je me sers de l'Open Source OS du Fairphone, livrée sans les Google Apps. Si vous utilisez la version classique de l'OS, ce tutoriel n'est sans doute pas pour vous. Ah, et j'ai un Fairphone 2, pas le 1.
Et aussi, manipuler votre téléphone est à vos risques et périls ! Ne faites pas n'importe quoi ! Et puis, le GPS ne tourne toujours pas forcément très bien. Si je trouve des astuces pour l'améliorer, ou si vous en avez : je mettrais à jour ce billet.

Passer le téléphone en root

Pas besoin de brancher le téléphone au PC pour lancer le mode debug en ligne de commande depuis un terminal sous GNU/Linux... Pour passer root, il vous suffit de connaître le bon chemin et de taper plusieurs fois sur avec votre doigt sur Numéro de build.
Paramètres -> À propos du téléphone -> Numéro de build 
Tapotez votre écran au niveau de la case plusieurs fois et vous deviendrez le hacker de votre FP2. Retournez dans les paramètres et activez le Root Acces dans le nouveau menu "Options pour développeurs".

Passer Amaze en root

Maintenant, comme il va falloir modifier la configuration du GPS qui se trouve être un simple fichier texte dans les méandres de votre appareil, autorisez l'application Amaze à faire n'importe quoi.
Amaze -> Paramètres -> Divers 
Activez l'option "Gestionnaire Root" et le tour est joué : vous pouvez maintenant aller trifouiller dans la " / Racine" de votre Android.

Modifier le fichier gps.conf

Ce filou se trouve dans /system/etc/gps.conf.

Là, vous trouverez une ligne à commenter (en plaçant un # devant) une autre à dé-commenter et un 0 à remplacer par un 1 :
NTP_SERVER=time.gpsonextra.net
# NTP_SERVER=europe.pool.ntp.org
devient :
# NTP_SERVER=time.gpsonextra.net 
NTP_SERVER=europe.pool.ntp.org
Ensuite :
INTERMEDIATE_POS=0
devient :
INTERMEDIATE_POS=1
Vous pouvez enregistrer les modifications et redémarrer votre téléphone pour qu'elles soient prises en compte.

Un fois relancé, je vous invite à tester (depuis un endroit où vous pouvez capter du GPS !) votre nouvelle configuration avec l'application SatStat, disponible depuis F-Droid. Si tout va bien, vous devriez voir le nombre de satellites auxquels votre téléphone est connecté !

Maintenant, profitez enfin de OsmAnd~ et oubliez l'insupportable "Position Inconnue" quand vous voulez vous géolocaliser sur la carte. Bonheur.
 

Nginx et Let's Encrypt

Rédigé par dada / 22 décembre 2016 / 3 commentaires


Ces derniers temps, j'ai changé pas mal de choses sur ce serveur. Ceci étant, je ne me suis pas rendu compte tout de suite que j'avais cassé le flux RSS de ce blog en configurant Nginx en proxy pour le SSL. #Boulette. Pourtant, j'avais bien remarqué que les applications Wallabag et EasyRSS ne fonctionnaient plus. Ça aurait du me mettre la puce à l'oreille.

M'enfin, Cypouz m'a gentiment remonté le bug en m'envoyant un message privé sur diaspora* pour me rappeler que je devais faire quelque chose, l'erreur suivante commençant à se voir :
cURL error 60: SSL certificate problem: unable to get local issuer certificate [https://www.dadall.info/blog/feed.php?rss]
C'est maintenant chose faite et voici l'astuce : Let's Encypt dans Nginx demande un peu plus de lignes pour fonctionner qu'avec un Apache :

        ssl_certificate /chemin/vers/letsencrypt/live/dadall.info/fullchain.pem;
        ssl_certificate_key /chemin/vers/letsencrypt/live/dadall.info/privkey.pem;
 
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_trusted_certificate /chemin/vers/letsencrypt/live/dadall.info/fullchain.pem;

Voila !

Vous remarquerez que le certificat est délivré par le fullchain.pem et non le cert.pem.

Bon, je n'ai pas incroyablement creusé la question, mais comme j'ai l'habitude de dire : chez moi ça marche ;-)

Passer son C1 Scaleway sous PHP 7

Rédigé par dada / 12 décembre 2016 / 2 commentaires


Je laisse PHP 7 dans le titre mais je précise ici que je parle de PHP 7.0 et pas de PHP 7.1.

Notez que passer outre les dépôts officiels de Debian et qu'utiliser un dépôt maintenu par un tiers engage la stabilité de votre serveur et de votre installation. J'ai pas de souci chez moi, mais ça ne veut rien dire !

Les C1 de Scaleway sont des serveurs tournant sur une architecture ARM et si c'est sympa dans les faits, c'est un problème quand on veut utiliser PHP 7 avec sa Debian 8 Jessie.
Les dépôts bonus classiques que les debianneux doivent tous connaître sont les dotdeb. On y retrouve les dernières versions de PHP packagés avec sérieux par Guillaume Plessis, pour les architectures x86 et x86_64 mais pas d'ARM. Pas de support du C1 donc.

Pour remédier au problème, vous pouvez passer par le travail de mati75.
deb http://repozytorium.mati75.eu/raspbian jessie-backports main contrib non-free 
Pour ajouter la clé GPG :
gpg --keyserver pgpkeys.mit.edu --recv-key CCD91D6111A06851
gpg --armor --export CCD91D6111A06851 | apt-key add -
Ceci-dit, comme ce ne sont pas des dépôts officiels et qu'il n'y a pas que PHP dedans, je n'ai pas ajouté cette clé pour empêcher APT d'aller taper dedans sans une double validation. C'est pas super propre, mais bon.

Notez que la totalité des modules PHP ne sont pas encore disponibles : j'ai en tête memcached puisque je m'en servais. Tant pis.

J'ai passé le serveur de ce blog sous PHP 7.0 ce week-end : RAS jusqu’à maintenant. Le gain de performance est légèrement notable mais je ne m'attendais pas non plus à une révolution compte tenu des caractéristiques faibles du C1.

Voici la liste des services qui tournent sur ce serveur et que je certifie fonctionner avec cette version de PHP :

Par contre, Sticky-Notes est dans les choux. Il va me falloir un autre pastbin-like !

Android, Nextcloud, son application Contacts, DAVdroid et l'erreur 15

Rédigé par dada / 07 septembre 2016 / 2 commentaires


Il y a des trucs qui m'ont gonflé ces derniers jours et cette erreur en fait partie :
java.lang.IllegalStateException: [Error 15] PREF parameter value is malformed 
Pas très claire, pas super bavarde, y'a pas pire comme type d'erreur, surtout quand on aime bien gérer son propre serveur pour pouvoir profiter de la synchronisation des contacts de son téléphone avec son instance Nextcloud. Bon, je triche un peu, c'est une erreur Java, c'est plus verbeux que ça, mais j'allais pas déformer ce billet avec son blabla.
J'ai commencé par faire les trucs de base : sauvegarder mes contacts sur le téléphone, vider le carnet d'adresses, vider l'application Contacts de son contenu et lancer une synchronisation après avoir fait ce grand ménage. Rien à faire, ça pétait toujours. #Tristitude

En traînant sur l'internet mondial, j'apprends qu'il y a plusieurs versions du protocole VCard, le format ouvert qui permet l’échange des cartes visites, ou dit plus clairement, l’échange de nos contacts du téléphone. C'est lui que CardDav manipule. On ne va pas rentrer les détails mais, comme tout machin avec une RFC, une ligne de conduite claire, faut filer droit. A priori, les applications qui se cognent la manipulation des VCard savent ce qu'elles font, ou pas.
Je ne sais pas vraiment depuis quand la valeur PREF traîne dans les informations de mes contacts, mais ce merdeux est presque partout et il est mal utilisé. Exemple :
BEGIN:VCARD
VERSION:2.1
N:Johansson;Scarlett;;;
FN:Scarlett Johansson
TEL;CELL;PREF:+42612345678
END:VCARD
Remarquez bien ce maudit PREF qui se balade entre CELL et le numéro de téléphone : il n'a rien à faire ! La ligne TEL doit contenir les informations relatives au 06 du contact, ce que le squatteur ne comprend pas.
Bref, pour corriger la synchro avec Contacts de Nextcloud via DAVdroid, il suffit de le faire sauter. C'est comme ça que j'ai fait, ce n'est sans doute pas la façon la plus propre de faire, mais ça m'a défrustré.

La solution la plus simple, si vous êtes sous GNU/Linux et que vous savez un tout petit peu vous servir d'un terminal, c'est de :
  • Extraire son carnet d'adresse au format VCF
  • Ouvrir un terminal
  • Exécuter la commande suivante :
 sed -i "s/TEL;CELL;PREF:/TEL;VOICE:/g" contacts.vcf 
Avec cette simple manipulation, vous venez de faire sauter la totalité des occurrences de PREF; de votre carnet d'adresse en la remplaçant par VOICE;, qui ne pose pas de souci. Notez qu'il doit existe d'autre formats corrects pour la ligne TEL, vous pouvez fouiller si l'envie vous prend.
Enfin, vous pouvez tranquillement réimporter ce fichier édité dans le carnet d'adresse de votre téléphone et dans Nextcloud, ça marchera tout seul, sans cette fichue error 15.

L'extension Grammalecte enfin disponible pour Firefox

Rédigé par dada / 17 mai 2016 / 7 commentaires




Oh joie, oh bonheur ! Grammalecte est enfin disponible en tant qu'extension pour Firefox ! L'annonce officielle est disponible ici et l'extension est téléchargeable ici.

Avec cette extension, vous n'avez plus d'excuse si vous laissez passer des fautes dans vos billets, et moi le premier. J'ai l'habitude de laisser les commentaires qui me signalent des coquilles et d'attendre les messages privés de Phipe via diaspora* pour corriger mes billets.

Bon, après, je dis ça alors que je découvre tristement que la fenêtre de saisie du texte d'un billet de PluXml n'est pas prise en compte par Grammalecte alors que la zone de saisie du titre du billet l'est. #Tristitude

Nul doute que ça sera corrigé dans une future version de l'extension ou dans la prochaine version du CMS. Ça se trouve, ce n'est qu'une histoire de balise HTML mal placée.

j'en profite pour fanfaronner : cette extension n'est disponible que sous Firefox. Si ça, ce n'est pas une bonne raison pour bon nombre d'entre nous qui aurait lâché le butineur de Mozilla au profit de celui de Google pour revenir dans le droit chemin, j'sais pas ce qu'il faut pour vous convaincre ! ;-)