On y trouve les gnu core utils (users, tr, sed, awk, who, chroot …)
tcl, perl, vim, vimdiff, less, curl …
stfp, ssh, ssh-agent, tdbbuf, cygpath, mount …
Bref, moult outils qui font que l'on se sent comme sur un linux installé avec les outils de base donc git for windows est un plutôt bon environnement de dev à la linux sous windows sans le bloat d'un WSL ou d'une hypervm quand on privilégie la ligne de commande et qui se marrie très bien avec l'usage de scoop pour installer les paquets manquants (genre pandoc).
Alors, je crois pas avoir tout bien compris, mais il me semble qu'en fait git for windows c'est comme un environnement MINGW/MSYS
Ce qui en fait un mini cygwin en usage avec juste quelques logiciels livrés par défault. Peut être même un python en plus du perl et d'un certains nombres de GNU/Utils nécessaires à git.
ça m'a donné envie de regarder les scripts pour m'en inspirer peut être pour une version future quand ma femme et ma fille me laisseront 2 sorties pour coder un peu plus loin.
Alors, j'ai essayé d'utiliser script et scriptrelplay pour vérifier, mais non.
1- j'arrive à comprendre comment mes outils marchent, pas ceux des autres (argument de mauvaise foi, certes, mais recevable)
2- je crois me souvenir que script/replay ne garde par les variables pour évaluation au moment du replay.
ce qui permet dans mon cas de modifier l’exécution et par le scriptage en passant des arguments positionnels, ou en utilisant des variables d'environnement, ou les 2 :D
Je suis tombé sur un chouette lecteur qui en plus faisait des belles illustrations, on a causé, et depuis, le chapitre est maintenant illustré par des illustrations de tagada johns et wtfpl (qui m'a pas laissé de moyen de le trouver facilement pour des commandes)
voilà les liens qui pointent vers ses chouettes illustrations :
Le sujet m'intéresse à deux titres : faire un antispam pour LinuxFr.org (bayésien ou liste de blocage) et pour le service share vers les réseaux sociaux (m'avait bien semblé aussi que la doc était cryptique/peu pédagogique.
La doc de bsky je sais pas si c'est une IA ou un humain qui l'a pondu, mais elle répond à des tas de questions sauf celles que je me pose.
J'ai pas bien dû comprendre les tutos que j'ai trouvé sur le filtrage bayésien car pour moi, la technique que j'ai implémentée n'est pas digne d'une probabilité bayésienne mais correspond à un bête cosinus similarité, que j'implémente nativement pour les dict avec archery.
Cette méthode est utilisée en dernier recours car elle présente moults faux positifs/faux négatifs (~5%, ~10%). Ce qui sur le nombre est beaucoup.
Situation actuelle : une liste de blocage utilisée a posteriori et manuellement d'une part (entrée de suivi quelque part que je ne retrouve pas), et un code pas mis en service d'autre part.
Le code BS à l'air bon au vu de mes (petites) connaissances. Je devrais dire «c'est pas bien d'être sur X», et que vu que t'es en logique de pousser et non de tirer du contenu comme je le fais tu te moques un peu du sporn.
Pour l'instant actuel, le spam est d'origine porn. Ce que je fais, c'est que j'attends que les modos BS l'étiquette porn et je fais la liste de blocage avec les alias bloqués. Ce qui m'oblige à temporairement corriger manuellement (d'où l'interface websocket de gestion).
Pour ton cas, ça nécessite de réagir à chaud, ce qui va à mon avis nécessité une interface d'étiquetage.
Un truc qui aide comme conseillé dans le précédent journal, c'est la détection de langue : un contenu tagué fr en anglais en général c'est pas bon signe. Et c'est pas mal de spam viré :)
Heureusement, les spammeurs varient pas trop leurs adresses d'envois et bien que notables sont faciles à bloquer (ma liste de blocage contient 243 entrées)
# un exemple de la vraie vie
Posté par Jul (site web personnel) . En réponse au journal bake : scripter en bash à la « makefile ». Évalué à 2 (+1/-0).
Un exemple de vraie vie est ici https://gist.github.com/jul/9c3fb387e06a832815cb5de8685217bc
[^] # Re: développement de variable
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 2 (+1/-0).
https://github.com/git-for-windows/git/releases/tag/v2.51.2.windows.1
On y trouve les gnu core utils (users, tr, sed, awk, who, chroot …)
tcl, perl, vim, vimdiff, less, curl …
stfp, ssh, ssh-agent, tdbbuf, cygpath, mount …
Bref, moult outils qui font que l'on se sent comme sur un linux installé avec les outils de base donc git for windows est un plutôt bon environnement de dev à la linux sous windows sans le bloat d'un WSL ou d'une hypervm quand on privilégie la ligne de commande et qui se marrie très bien avec l'usage de scoop pour installer les paquets manquants (genre pandoc).
[^] # Re: développement de variable
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 3 (+2/-0).
Alors, je crois pas avoir tout bien compris, mais il me semble qu'en fait git for windows c'est comme un environnement MINGW/MSYS
Ce qui en fait un mini cygwin en usage avec juste quelques logiciels livrés par défault. Peut être même un python en plus du perl et d'un certains nombres de GNU/Utils nécessaires à git.
[^] # Re: développement de variable
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 4 (+3/-0).
C'est qu'en milieu pro, je me suis aperçu que sur linux/windows, dès que j'ai git installé, j'ai forcément, git, bash, perl, cut …
Et c'est un peu devenu ma stack standard de devops…
Je tente parfois la portabilité linux/windows pour le fun.
# utilisation en framework bash
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 1 (+0/-0).
Peut s'utiliser en librairie shell comme suit:
ensuite :
Ce qui donne :
donnant :
Maintenant il serait bien que je m'y colle sérieusement et positionne le return pour que ces fonctions retournent un code de réussite/erreurs
[^] # Re: kinda asciinema
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 1 (+0/-0).
ça m'a donné envie de regarder les scripts pour m'en inspirer peut être pour une version future quand ma femme et ma fille me laisseront 2 sorties pour coder un peu plus loin.
Merci de l'idée.
[^] # Re: coloration code ici
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 2 (+1/-0).
ah tout de suite, c'est plus classe.
Kudo aux admins.
[^] # Re: kinda asciinema
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 2 (+1/-0).
Alors, j'ai essayé d'utiliser
scriptetscriptrelplaypour vérifier, mais non.1- j'arrive à comprendre comment mes outils marchent, pas ceux des autres (argument de mauvaise foi, certes, mais recevable)
2- je crois me souvenir que script/replay ne garde par les variables pour évaluation au moment du replay.
ce qui permet dans mon cas de modifier l’exécution et par le scriptage en passant des arguments positionnels, ou en utilisant des variables d'environnement, ou les 2 :D
J'ai un peu de perversion que
scriptn'a pas.[^] # Re: Disciple de Mallarmé ?
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 3 (+0/-0).
À vi, cette grosse boulette où j'ai oublié de mettre en chapeau : à quoi ça sert
Ça sert à stocker et rejouer le résultat de commandes passées
J'ai un peu rushé le projet, doc comprise et je suis tête en l'air.
[^] # Re: développement de variable
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 3 (+0/-0).
merci, je vais voir si entre les fonctions inutiles j'ai pas oublié de "" une variable.
N'empêche que j'en apprends tous les jours, même en contournant le problème comme un … ostrogoth.
J'ai codé ça entre 2 sorties de mes femmes et j'ai peut être manqué un peu d'attention.
Ça fait du sens cette pratique de toujours double quotté les vars que je fais mécaniquement sans me souvenir pourquoi :D
ben vi, les bases. Faut les réviser souvent.
[^] # Re: Disciple de Mallarmé ?
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 2 (+0/-0).
Avec l'orthographe, je suis plus disciple des mals armés :D
[^] # Re: Bash méprisé
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 4.
En fait, il y a un guide de programmation en bash fort bien fait et un analyseur de code statique* bien fait lui aussi qui reprend toutes les bonnes pratiques du susdit manuel.
et quand on suit les bonnes pratiques, c'est plus dur de se tirer une balle dans le pied.
[^] # Re: diag.dot
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 2.
ici : je l'avais oublié
https://github.com/jul/FAIM/blob/main/img/diag.dot
[^] # Re: tss tss
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 3.
sambaldap et ldaptools sont des cas à part :)
# ajout d'illustration
Posté par Jul (site web personnel) . En réponse au journal Vibe coding sous toutes ses formes (un nouveau chapitre de sherpa du code). Évalué à 2.
Je suis tombé sur un chouette lecteur qui en plus faisait des belles illustrations, on a causé, et depuis, le chapitre est maintenant illustré par des illustrations de tagada johns et wtfpl (qui m'a pas laissé de moyen de le trouver facilement pour des commandes)
voilà les liens qui pointent vers ses chouettes illustrations :
vide coding sous opium
Intro
coder sous influence d'Alcool (et sexe)
coder sous influence de THC
[^] # Re: Génial ! J'en prends 3 ! (c'est pour offrir)
Posté par Jul (site web personnel) . En réponse au journal sqlramen un remplacement à sqlsoup. Évalué à 2.
tiens je te convertis cet exemple à l'utilisation de sqlramen
https://yahi.readthedocs.io/en/latest/misusing.html#graphing-data-from-a-database
Ça permet de faire un histogramme (top40), une série chronologique, et une heatmap.
Le lien vers la doc indique comment obtenir les graphs.
[^] # Re: typo ?
Posté par Jul (site web personnel) . En réponse au journal sqlramen un remplacement à sqlsoup. Évalué à 1.
Yep typo. Merci de la remonter.
Pour info une DB utilisable pour tester est celle ci (sqlite). C'est même celle que j'ai utilisée.
https://github.com/jul/scam/raw/refs/heads/main/aide
# plus court pour l'exemple 1
Posté par Jul (site web personnel) . En réponse au journal détourner yahi (grapheur de journaux web) pour faire des graphs de CSV. Évalué à 1. Dernière modification le 27 septembre 2025 à 20:17.
Y'avait quasiment un oneliner possible pour l'exemple 1
# oubli
Posté par Jul (site web personnel) . En réponse au journal détourner yahi (grapheur de journaux web) pour faire des graphs de CSV. Évalué à 2.
Pour l'exemple 1 il faut ajouter le fait que le fichier d'entrée est analysée comme suit ::
python test.py < ~/trollometre.csv
[^] # Re: Irremplaçable
Posté par Jul (site web personnel) . En réponse à la dépêche AWStats 8.0 est sorti. Évalué à 2.
J'ai écris un remplaçant (yahi) d'awstats.
Au moins, t'es sûr que le mainteneur existe, est en vie, et peut corriger les bugs, trololol.
En prime, il y a un livre du « making off » (l'envers du décors) : loser du logiciel libre
[^] # Re: Wut da fuk private licence
Posté par Jul (site web personnel) . En réponse au journal Faire son bot bluesky francophone. Évalué à 1.
Proposition acceptée, je te dédie ce commit. Tu veux un @ pour le texte de la licence ?
https://github.com/jul/trollometre/commit/960e3cdc7acb3a5cd1f7d41253ab80809397d579
[^] # Re: Wut da fuk private licence
Posté par Jul (site web personnel) . En réponse au journal Faire son bot bluesky francophone. Évalué à 2.
merci pour avoir écrit une licence libre que j'arrive à écrire de tête en convoyant tout ce que je souhaite convoyer :)
[^] # Re: .
Posté par Jul (site web personnel) . En réponse au journal la chronique du bot bluesky : rétrospective. Évalué à 3.
Évidemment.
[^] # Re: NB maj du README sous peu
Posté par Jul (site web personnel) . En réponse au journal J'ai niqué le p0rn : l'antispam qui marchait (étrangement). Évalué à 2.
J'ai trouvé des stats meilleures que les miennes en RRD et c'est là où l'on voit que je mesure uniquement les POSTS francophones.
[^] # Re: NB maj du README sous peu
Posté par Jul (site web personnel) . En réponse au journal J'ai niqué le p0rn : l'antispam qui marchait (étrangement). Évalué à 2.
La doc de bsky je sais pas si c'est une IA ou un humain qui l'a pondu, mais elle répond à des tas de questions sauf celles que je me pose.
J'ai pas bien dû comprendre les tutos que j'ai trouvé sur le filtrage bayésien car pour moi, la technique que j'ai implémentée n'est pas digne d'une probabilité bayésienne mais correspond à un bête cosinus similarité, que j'implémente nativement pour les dict avec archery.
Cette méthode est utilisée en dernier recours car elle présente moults faux positifs/faux négatifs (~5%, ~10%). Ce qui sur le nombre est beaucoup.
Le code BS à l'air bon au vu de mes (petites) connaissances. Je devrais dire «c'est pas bien d'être sur X», et que vu que t'es en logique de pousser et non de tirer du contenu comme je le fais tu te moques un peu du sporn.
Pour l'instant actuel, le spam est d'origine porn. Ce que je fais, c'est que j'attends que les modos BS l'étiquette porn et je fais la liste de blocage avec les alias bloqués. Ce qui m'oblige à temporairement corriger manuellement (d'où l'interface websocket de gestion).
Pour ton cas, ça nécessite de réagir à chaud, ce qui va à mon avis nécessité une interface d'étiquetage.
Un truc qui aide comme conseillé dans le précédent journal, c'est la détection de langue : un contenu tagué fr en anglais en général c'est pas bon signe. Et c'est pas mal de spam viré :)
Heureusement, les spammeurs varient pas trop leurs adresses d'envois et bien que notables sont faciles à bloquer (ma liste de blocage contient 243 entrées)
Graph d'activité sur le BS francophone