Blog de dada

DevOps, bidouilleur et routard plein de logiciels libres

Aide

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 ! ;-)

Adapter les commentaires de PluXml 5.5 à son thème

Rédigé par dada / 29 avril 2016 / Aucun commentaire




Avec la sortie de la version 5.5 de PluXml est arrivée une nouvelle gestion des commentaires. C'est principalement la gestion de la réponse à un commentaire existant qui est mieux mise en avant. Je vous laisse traîner dans les commentaires des derniers billets de ce blog pour voir le changement simple mais bienvenu.

Quand on utilise un thème perso, comme celui de ce blog, cette nouveauté n'est pas effective. Pluxopolis nous a sorti un billet expliquant comment faire pour en profiter : c'est par ici. La manipulation est simple, foncez vous mettre à jour.

Je profite de cette mise à jour du thème pour pousser ces modifications sur son dépôt Github. Ce n'est pas grand chose, mais ça me permet de vous rappeler que ce thème n'est pas seulement le mien, c'est aussi le votre si vous le voulez.