To content | To menu | To search


Friday 31 May 2019

Archéologie numérique

J'ai retrouvé des feuilles contenant le code source d'un programme C daté de février 2000, autant dire que ça ne nous rajeunis pas.

Un truc que j'aurais pu récupérer directement sur mon tout premier site (dont j'ai malencontreusement perdu les clés...) si l'archive était fonctionnelle. Sans doute une sordide histoire de mode binaire lors de l'upload en FTP. Au passage, numérique 0 - papier analogique 1, qui reste quand même un putain de support de sauvegarde 🙏

Ce programme servait à calculer l'espace pris par un dossier ou une arborescence. Les plus perspicaces me feront remarquer que c'est ce que l'utilitaire du(1) fait, oui mais j'étais jeune et je venais de Windows à l'époque, et je ne savais pas qu'une telle perle pouvait exister. Tout le monde peux faire des erreurs.

BREF j'ai scanné et OCRisé le tout, d'ailleurs sous Linux cette dernière opération est toujours aussi merdique, même le premier site venu fait mieux que tesseract-ocr, pourtant la Rolls du genre, à l'heure ou la numérisation et la reconnaissance optique commence à s'industrialiser chez d'autres.

Une fois le tout réassemblé et corrigé, en enlevant les warnings (que je codais salement à l'époque...), ça compile. Malheureusement le résultat est foireux, je ne sais pas si c'est parce que le code est tordu ou parce que l'OCR a introduit des bugs.

Au final je l'ai inclus dans mon dépôt fourre-tout de scripts, pour la postérité, pas sûr que ça serve à autre chose 🙂

Monday 20 May 2019

Le graph c'est la vie (3)

J'aime pas trop faire du sport, mais il faut admettre que je marche pas mal. Du coup il y a une paire d'années j'ai installé un podomètre sur mon téléphone: Pacer.

Et puis je suis tombé amoureux de Grafana, je veux tout faire avec elle, graffer les choses les plus improbables jusqu'au bout de la nuit.

Malheureusement aucune possibilité d'exporter les données de l'appli Pacer... après avoir tenté sans succès de synchroniser les données avec le site puis d'y accéder via leur API, de synchroniser le compte avec Fitbit et de faire de même, j'ai fini par bidouiller un truc un peu sale mais qui, au moins, marche.

Et comme je suis trop sympa les sources sont fournies. C'est un début, il y a encore pas mal de taf pour rendre ça vraiment confort. C'est sans doute Android-only, je ne sais pas comment marche l'appli iOS, si elle utilise sqlite il y a de bonnes chances que ça fonctionne (retours bienvenus)

Côté implémentation un serveur openssh tourne sur le téléphone avec Termux (je vous cache pas que je flippe un peu pour la batterie...), et la machine hébergeant le script s'occupe de le lancer régulièrement après avoir fait un rsync bien sale de la base sqlite de Pacer. On va dire que c'est du work-in-progress en attendant mieux 🙂

Au final ça donne ça:

marche_ou_creve.png
ça marche 😏

 

Billets connexes

Sunday 12 May 2019

Les maîtres du fédivers

Oui je suis un enfant des années 80. Oui je suis VIEUX.

 

Je viens d'installer une instance Pleroma pour pouvoir rejoindre en toute indépendance la grande famille du fédivers. Un grand merci au passage à Jacques Foucry pour son tuto qui déchire 👍

Bon il faut quand même reconnaître que c'est quand même un peu le bordayl par rapport à Twitter, ne serait-ce que pour suivre des gens, il faut jongler entre les deux sites, c'est un peu pénible...

Autre point gênant, sous Linux il n'y a toujours pas de client unifié Twitter/Mastodon, il faut s'en cogner deux séparés, en l'occurrence Atomic-TweetDeck (un peu le seul potable en même temps) pour Twitter et Whalebird (un peu le seul...tout court) pour le fédivers. Heureusement sous Android il y a Twidere qui gère à la fois Twitter et Mastodon  mon compte Pleroma étant, magie de l'ActivityPub, pleinement compatible avec ce dernier.

Pas moyen non plus de désactiver les boosts, équivalent des retweets, au niveau d'un compte. J'aurais au contraire bien voulu les désactiver au niveau serveur une bonne fois pour toutes, dommage.

Mon nick est donc @n@social.tourmentine.com, passez donc quand vous voulez faire un toot !

Billets connexes

Saturday 4 May 2019

Et Paf le certificat

Ça c'est un peu vu ce matin, chez Mozilla ils se sont vautrés sur un certificat intermédiaire, ayant pour conséquence directe la désactivation de la quasi-totalité des extensions de Firefox. Joli.

J'ai donc serré les fesses très fort en espérant que je n'aurais pas à redémarrer mon brouteur favori, malheureusement la vérification ne se fait visiblement pas toujours qu'au démarrage 🙄

Direction le blog de Mozilla qui indique que le seul hotfix disponible consiste à activer la collecte de données (!) pour pouvoir activer les "studies", studies qui récupéreront le fix...dans les 6 heures (!!):

It may take up to six hours for the Study to be applied to Firefox.

Se planter ça arrive, mais proposer un fix qui arrivera un jour peut être, là j'ai pas les mots.

Heureusement magie du net, quelqu'un dans les commentaires cite un article de Hacker News ainsi que le .xpi qui va bien à télécharger. Installé, réparé, en 10 secondes chrono. Qu'il en soit remercié. Pas vraiment merci Mozilla sur ce coup-là, par contre.

On notera aussi que Firefox ne respecte même pas son propre paramètre xpinstall.signatures.required que j'avais explicitement mis à false.

Home sweet Home

 

Sous Debian, un partitionnement très utilisé (et un des choix par défaut de l'installeur) est de choisir des valeurs arbitraires pour certaines partitions, et de garder tout le reste de l'espace disque pour le /home. C'est très pratique pour une station de travail. Sur la Tourmentine j'utilise FreeBSD mais j'ai gardé le même principe, toutes les "données" sont dans /home, ça permet de ne pas se poser de question sur quoi surveiller et quoi sauvegarder.

L'autre jour on me contacte pour un restore sur un MariaDB qui ne fonctionne plus, et pour cause, le disque était plein (merci innodb_file_per_table qui est à Off par défaut, ce qui provoque la création d'un fichier ibdata1 dont on ne peut jamais réduire la taille...)

Le / faisait 20 Go, dont 80% pris par les bases, et il y avait un /home de 1 To (c'est une Debian...). j'ai donc tout déplacé dans /home, et ajusté le my.cnf en conséquence.

Sauf que MariaDB refusait catégoriquement de redémarrer, avec le fort peu diplomatique message suivant dans le status du service:

ExecStart=/usr/sbin/mysqld --skip-grant-tables (code=exited, status=1/FAILURE)

Le plus étrange étant qu'en lançant manuellement avec "mysqld", MariaDB fonctionnait parfaitement. Et évidemment, tout se passait bien dans les logs.

Le truc qui a fini par me mettre la puce à l'oreille est un des messages dans le status de systemd mon amour:

[Warning] Can't create test file /home/mysql/hostname.lower-test

Un Warning, normalement, c'est pas bloquant... sauf là.

En googlant le truc je fini par apprendre que par défaut le service systemd de MariaDB interdit l'accès aux données situées entre autres...dans /home.

Clap clap clap.

La solution consiste donc à copier le fichier /lib/systemd/system/mariadb.service dans /etc/systemd/system/ (pour qu'il ne soit pas écrasé par les éventuelles mises à jour suivantes), puis l'éditer pour mettre la variable en question à false:

# Prevent accessing /home, /root and /run/user
ProtectHome=false

Ne pas oublier le "systemctl daemon-reload" qui va bien ainsi qu'un redémarrage du service pour rendre le changement effectif.

Saturday 16 March 2019

Big Brother is not watching you anymore

La longue histoire des compteurs de visites vient de se terminer: j'ai retiré les tags de tracking de Les visiteurs phpMyVisites Piwik Matomo de tous les sites hébergés par la Tourmentine.

Exit donc également le vénérable compteur affiché sur le site du TMA depuis 2004 (il utilisait Matomo), une page de tourne...

Parce que la vie privée c'est important, et que c'était important aussi de commencer par balayer devant sa porte 😎

Billets connexes

Saturday 2 March 2019

Le graph c'est la vie (2)

Bon finalement facette n'aura pas fait long feu, je suis finalement revenu sur Grafana pour cause de coredump (décidément...) et j'ai bien fait, je retire mon accusation d'usine à gaz: étant parfaitement modulaire, nul besoin de carbon/graphite/etc. Seul InfluxDB est nécessaire, Grafana ne gérant pas Collectd nativement.

Un petit piège au passage, je pensais garder mon serveur Collectd et balancer les données dans InfluxDB, ça ne marche pas. Il faut activer le "listener" dans InfluxDB et le faire écouter à la place de Collectd...

Malgré une interface quelque peu déroutante c'est au final très fluide, propre et efficace. Adopté !

Billets connexes

Saturday 23 February 2019

Savez-vous planter PHP ?

Ou plutôt, savez-vous le réparer, parce que le planter finalement, c'est plutôt facile, le tout est de s'en rendre compte à ce moment là.

Donc le blog est resté planté en maintenance depuis jeudi après-midi, après un restart de php suite à un petit plaisantin qui cherchait à mettre le serveur par terre. De mon côté suite aux dernières mises à jour je n'ai sans doute pas testé le redémarrage de php, qui provoquait un bug particulièrement sale (segfault...)

Après une matinée de debug j'ai finalement trouvé le coupable: php-openssl, ou plutôt openssl, quand on est né pour faire chier c'est pour la vie. En l'occurrence il s'agit surtout d'openssl 1.1.1, installé pour pouvoir bénéficier du support de TLS 1.3.

J'ai donc été obligé de me rabattre sur la version 1.0.2q qui elle souffre d'une faille de sécurité (SUPAIR) mais qui au moins à la bon goût de ne pas faire planter le site. Mais le mauvais de planter php-curl, on ne peut pas tout avoir. Je suis en train de devenir fou là mais je garde mon calme.

BREF il est possible que ça replante ces prochains jours le temps que je trouve une solution, désolé pour la gène occasionnée 🙁

 

Edit@15:31: après recompilation des différentes composantes dans le bon ordre (j'ai une vie vraiment passionnante), ça segfault toujours au démarrage MAIS ça marche. Va comprendre... je vais aller me coucher moi.

 

Sunday 27 January 2019

Nettoyage de pré-printemps

 

Après avoir remis à niveau mes mots de passe, je passe à l'étape suivante en supprimant les comptes qui ne servent pas, et qui pourraient faire l'objet d'une fuite à plus ou moins long terme.

L'occasion de faire ce que j'aurai déjà du faire il y a bien longtemps, après la suppression d'un compte Instagram éphémère créé pour tester les stories, voici enfin celle de mon compte Facebook, après un énième scandale et le baratin habituel.

So long Zuck, tu me manquera pas !

Billets connexes

Saturday 26 January 2019

Je peux pas j'ai piscine

Gitea n'a décidément plus rien à envier aux plus grands, avec la version 1.7 sortie cette semaine et depuis cet après-midi dans les ports FreeBSD il gagne LE truc qui fait toute la différence, un joli carrelage de piscine comme chez Github/Gitlab:

2019-01-26_19-36.png
commit, commit, push, commit, push

 

Et là je me rends compte que sur l'année j'ai été plutôt régulier, ça fait plaisir !

Billets connexes

- page 6 of 30 -