<?xml version="1.0"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Blog par Arnaud Ouvrier</title>
        <link>https://blog.arnaudouvrier.fr/</link>
        <atom:link href="https://blog.arnaudouvrier.fr/" rel="alternate" type="text/html" />
        <atom:link href="https://blog.arnaudouvrier.fr/rss" rel="self" type="application/rss+xml" />
        <description>Mon blog à propos d'informatique, d'électronique, de tout, de rien.</description>
        <language>fr-fr</language>
        <docs>https://www.rssboard.org/rss-specification</docs>
        <image>
            <url>https://blog.arnaudouvrier.fr/img/logo.png</url>
            <title>Blog par Arnaud Ouvrier</title>
            <link>https://blog.arnaudouvrier.fr/</link>
        </image>
        <item>
    <title>Créer un QR code à partir d&#x27;un fichier de contact (sur Linux)</title>
    <link>https://blog.arnaudouvrier.fr/generer-qr-code-depuis-vcard</link>
    <description>

&lt;p&gt;Cet article n&amp;#x27;est qu&amp;#x27;une petite astuce, pour transformer un ficher de contact au format vCard en un QR code scannable par un smartphone. Ça permet ensuite de pouvoir partager facilement ses données de contact, par exemple en imprimant le QR code sur une carte de visite.&lt;/p&gt;

&lt;h2&gt;1. Qu&amp;#x27;est ce qu&amp;#x27;un fichier de contact vCard ?&lt;/h2&gt;

&lt;p&gt;Un fichier de contact vCard est un fichier texte écrit suivant le standard RFC 6350 et portant l&amp;#x27;extension &amp;quot;.vcf&amp;quot; ou &amp;quot;.vcard&amp;quot;. C&amp;#x27;est le format le plus commun de partage d&amp;#x27;information de contact. Il permet entre autre de spécifier des informations telles qu&amp;#x27;un nom, numéro de téléphone, adresse postale et email, etc.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc6350&quot;&gt;La RFC 6350 définissant le format vCard&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ci-dessous, l&amp;#x27;exemple de fichier de contact que nous utiliserons dans cette astuce (dénommé &amp;quot;exemple.vcf&amp;quot;, créé à partir de données aléatoires) :&lt;/p&gt;

&lt;pre&gt;
BEGIN:VCARD
VERSION:3.0
FN:Erika Jones
N:Jones;Erika;;;
EMAIL;type=HOME:polly68@example.com
TEL;TYPE=CELL:1-473-306-4792
ADR;TYPE=HOME:;;164 Pansy Turnpike;Mayerstad;;1234;Spain
END:VCARD
&lt;/pre&gt;

&lt;h2&gt;2. Qu&amp;#x27;est ce qu&amp;#x27;un QR code ?&lt;/h2&gt;

&lt;p&gt;Un QR code est un type de code-barre multidimensionnel permettant de stocker du texte ou des données au format binaire. Vous en avez déjà sûrement vu sur des affiches publicitaires ou depuis le Covid, sur les tables de cafés ou de restaurants.&lt;/p&gt;

&lt;p&gt;Ce type de code est fait pour être décodé par des appareils photos. Aujourd&amp;#x27;hui, la plupart des applications photos sur les smartphones permettent de les lire. Elles peuvent aussi créer des contacts dans votre répertoire à partir d&amp;#x27;un QR code contenant un fichier vCard.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://fr.wikipedia.org/wiki/Code_QR&quot;&gt;La page Wikipédia décrivant les QR code&lt;/a&gt;&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/files/home-qr.png&quot; alt=&quot;Un QR code pointant vers la page d&#x27;accueil de ce blog&quot;&gt;&lt;p&gt;&lt;small&gt;Un QR code pointant vers la page d&#x27;accueil de ce blog&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;

&lt;h2&gt;3. Comment générer un QRcode à partir du fichier vCard ?&lt;/h2&gt;

&lt;p&gt;Pour générer un QR code à partir d&amp;#x27;un fichier sous Linux, c&amp;#x27;est tout simple : il faut utiliser la commande &amp;quot;qrencode&amp;quot;.&lt;/p&gt;

&lt;p&gt;Vous pouvez l&amp;#x27;installer au moyen de la commande suivante :&lt;/p&gt;
&lt;pre&gt;
sudo apt install qrencode
&lt;/pre&gt;

&lt;p&gt;Ensuite, il suffit de se rendre dans le répertoire où se trouve le fichier vCard (ici &amp;quot;/tmp/&amp;quot;) et de lancer la commande suivante :&lt;/p&gt;
&lt;pre&gt;
cd /tmp

qrencode -r exemple.vcf -o exemple-qr.png -m 1
&lt;/pre&gt;
&lt;p&gt;Voilà, vous devriez avoir une image au format PNG s&amp;#x27;appelant &amp;quot;exemple-qr.png&amp;quot; dans le répertoire &amp;quot;/tmp&amp;quot;. Vous pouvez ensuite l&amp;#x27;utiliser où vous le souhaiter, comme un fichier image normal. Si vous scannez ce QR code avec votre smartphone, vous devriez voir les informations spécifiées dans la première partie s&amp;#x27;afficher.&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/files/exemple-qr.png&quot; alt=&quot;Le QR code généré à partir du fichier de contact d&#x27;exemple&quot;&gt;&lt;p&gt;&lt;small&gt;Le QR code généré à partir du fichier de contact d&#x27;exemple&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;

&lt;p&gt;Et pour l&amp;#x27;explication des options de la commande :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;-r permet de spécifier le fichier source, ici notre fichier vCard d&amp;#x27;exemple&lt;/li&gt;
&lt;li&gt;-o permet de spécifier le fichier de sortie et son format (d&amp;#x27;après l&amp;#x27;extension)&lt;/li&gt;
&lt;li&gt;-m permet de spécifier la largeur des marges blanches autour du QR code&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;Pour plus d&amp;#x27;informations sur l&amp;#x27;utilisation de la commande &amp;quot;qrencode&amp;quot;, consultez la page man de la commande (&amp;quot;man qrencode&amp;quot; dans votre terminal).&lt;/p&gt;
</description>
    <pubDate>Mon, 29 Dec 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/generer-qr-code-depuis-vcard</guid>
</item>
<item>
    <title>Politique de confidentialité, usage des cookies et recours aux IA de ce blog</title>
    <link>https://blog.arnaudouvrier.fr/politique-confidentialite-recours-ia</link>
    <description>

&lt;p&gt;Pour faire simple, il n&amp;#x27;y a ni collecte de données, ni utilisation de cookies et je ne recours pas aux intelligences artificielles pour créer des contenus sur ce blog.&lt;/p&gt;

&lt;p&gt;Ci-après, l&amp;#x27;explication détaillée :&lt;/p&gt;

&lt;h2&gt;Politique de confidentialité et cookies&lt;/h2&gt;

&lt;p&gt;Une politique de confidentialité sert à définir quelles sont les données collectées lors de la visite d&amp;#x27;un site internet. Les cookies sont, entre autre, un moyen technique d&amp;#x27;identifier un visiteur pour pouvoir collecter des données spécifiques à sa visite sur un site internet.&lt;/p&gt;

&lt;p&gt;Ma position a évolué au fil des années, mais aujourd&amp;#x27;hui, je n&amp;#x27;ai plus aucune statistique de visite sur mon blog. Que je sois lu par zéro ou des milliers de personnes m&amp;#x27;importe peu. J&amp;#x27;écris principalement pour moi et je ne cherche pas à optimiser la performance de mes articles sur les réseaux sociaux. Je n&amp;#x27;ai donc recours à aucun moyen de suivi des visites sur mon blog et par conséquent, je ne recours pas à des cookies de suivi.&lt;/p&gt;

&lt;p&gt;Je ne collecte pas non plus de données personnelles par d&amp;#x27;autres moyens. Mon blog ne permet pas à des visiteurs de commenter mes articles. Je n&amp;#x27;ai pas de newsletter et donc pas de collecte d&amp;#x27;adresses de courriel. Je n&amp;#x27;ai pas non plus de formulaire de contact : si vous souhaitez me contacter, vous pouvez le faire par courriel (mon adresse est sur ma page à propos). Les informations que vous pourriez me transmettre par courriel ne peuvent être utilisés à d’autres fins que ce qui a trait à la communication. Les courriels sont aussi soumis au secret des correspondances et si vous les envoyez chiffrés, ne peuvent être lus que par vous et le destinataire.&lt;/p&gt;

&lt;p&gt;À savoir : les bannières d&amp;#x27;acceptation de cookies que nous voyons sur internet ne sont pas requises par la loi. La loi stipule uniquement par défaut, que les cookies techniques strictement nécessaires peuvent être activés par défaut. Pour tous les autres cookies, le consentement de l&amp;#x27;utilisateur doit être demandé avant leur activation. Les bannières de cookies sont uniquement un moyen de &amp;quot;forcer&amp;quot; les utilisateurs à se faire pister.&lt;/p&gt;

&lt;h2&gt;Recours à l&amp;#x27;intelligence artificielle&lt;/h2&gt;

&lt;p&gt;Je tiens à n’avoir aucun contenu généré par intelligence artificielle sur mon blog. Faire une recherche sur internet est devenu impossible et je ne souhaite pas contribuer à ce problème. Nous ne pouvons plus faire confiance à aucune source. Je ne comprends pas non plus le point d’écrire avec une IA. S’il faut déjà écrire un prompt pour écrire avec l’IA, autant le publier directement. Et pour les illustrations aussi : si on doit les générer par IA, c’est qu’elles ne sont pas utiles à la compréhension du texte.&lt;/p&gt;

&lt;p&gt;Surtout que les IA type ChatGPT ne font pas de recherche à votre place. Leur fonctionnement est plus simple que ça : à un prompt donné, elles ne génèrent que le texte le plus probable qui lui correspond. Ce n’est que des machines statistiques, elles n’ont aucune capacité de réflexion. Et le texte et les images que nous leur fournissons pour les “instruire” ne sert qu’à affiner les probabilités.&lt;/p&gt;

&lt;p&gt;Pour être tout à fait honnête, j’ai tenté d’utiliser l’IA pour m’aider à écrire. J’ai testé de l’utiliser pour corriger mes textes. Dans les prompts, je spécifiais explicitement à l’IA de corriger uniquement l’orthographe et la grammaire, sans faire aucune autre modification au texte. Résultat des courses : après relecture du travail de l’IA, il restait encore des fautes, voire même l’IA en avait créé. J’ai donc très vite arrêté son utilisation et je suis retourné sur le très fameux site &amp;quot;bonpatron.com&amp;quot;.&lt;/p&gt;

</description>
    <pubDate>Tue, 02 Dec 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/politique-confidentialite-recours-ia</guid>
</item>
<item>
    <title>Petit outil pratique pour connaître son IP publique</title>
    <link>https://blog.arnaudouvrier.fr/outil-pour-connaitre-son-ip-publique</link>
    <description>

&lt;p&gt;Parfois, il est nécessaire de connaître son adresse IP publique (l&amp;#x27;adresse d&amp;#x27;un ordinateur sur internet). Cela peut servir pour paramétrer un pare-feu par exemple.&lt;/p&gt;

&lt;p&gt;Il y a plusieurs façons de la faire. Jusqu&amp;#x27;à présent, j&amp;#x27;utilisais des outils comme mon-ip.com. Pratique, mais nécessite un navigateur et n&amp;#x27;est pas utilisable en console.&lt;/p&gt;

&lt;p&gt;Pour me simplifier la vie, j&amp;#x27;ai donc créé la page suivante :&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://myip.arnouv.fr&quot;&gt;myip.arnouv.fr&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cette page est accessible en HTTP et HTTPS depuis un navigateur. Elle ne retourne que votre adresse IP en format texte, vous pouvez donc aussi l&amp;#x27;utiliser en console de cette manière :&lt;/p&gt;

&lt;pre&gt;
curl myip.arnouv.fr; echo
&lt;/pre&gt;

&lt;p&gt;Voilà voilà pour la petite présentation de ce petit outil qui vous sera  probablement pas très utile.&lt;/p&gt;
</description>
    <pubDate>Wed, 26 Nov 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/outil-pour-connaitre-son-ip-publique</guid>
</item>
<item>
    <title>La poursuite de la réduction de ma dépendance numérique</title>
    <link>https://blog.arnaudouvrier.fr/poursuite-reduction-dependance-numerique</link>
    <description>

&lt;p&gt;En juillet 2024, j&amp;#x27;écrivais sur mon abandon progressif des monopoles¹. Dans cet article, je parlais principalement de réduire ma dépendance aux GAFAM, mais aussi plus généralement de réduire ma dépendance numérique.&lt;/p&gt;

&lt;p&gt;Plus d&amp;#x27;un an après, je fais le bilan d&amp;#x27;où j&amp;#x27;en suis.&lt;/p&gt;

&lt;h2&gt;Réseaux sociaux&lt;/h2&gt;

&lt;p&gt;C&amp;#x27;est la catégorie où j&amp;#x27;ai maintenant le moins de dépendance. Je ne suis plus sur aucun réseau social. Je n&amp;#x27;ai pas forcément encore supprimé mes comptes, mais ils sont tous au moins désactivés.&lt;/p&gt;

&lt;p&gt;Pour LinkedIn, je disais que c&amp;#x27;était utile pour avoir de la visibilité dans mon secteur de travail : avoir désactivé mon compte ne m&amp;#x27;a pas empêché de trouver un nouveau poste. C&amp;#x27;est une illusion que ces réseaux nous font croire, mais en principe cela sert uniquement à nous détourner d&amp;#x27;autres moyens d&amp;#x27;être visibles.&lt;/p&gt;

&lt;h2&gt;Communication&lt;/h2&gt;

&lt;p&gt;C&amp;#x27;est là où j&amp;#x27;ai fais le moins de changements. J&amp;#x27;utilise en priorité le SMS ou Signal pour communiquer avec les personnes que je connais, mais je suis toujours dépendant de Messenger où se trouvent la majorité de mes amis et de WhatsApp pour mes activités plutôt associatives.&lt;/p&gt;

&lt;p&gt;Seule mon utilisation de Snapchat a bougée : je viens de supprimer l&amp;#x27;application pendant l&amp;#x27;écriture de cet article.&lt;/p&gt;

&lt;h2&gt;Divertissement&lt;/h2&gt;

&lt;p&gt;Là aussi, beaucoup de changements. Je vais reprendre, source par sources, ce qui a changé :&lt;/p&gt;

&lt;h3&gt;Netflix&lt;/h3&gt;

&lt;p&gt;J&amp;#x27;ai arrêté mon abonnement. Ma famille et moi n&amp;#x27;utilisions quasiment plus la plateforme. Principalement à cause de la fatigue induite par la disponibilité constante de nouveaux contenus et la baisse de leur qualité au fil du temps. J&amp;#x27;utilise donc maintenant uniquement un serveur Plex.&lt;/p&gt;

&lt;h3&gt;YouTube&lt;/h3&gt;

&lt;p&gt;C&amp;#x27;est toujours une plateforme à laquelle je dédie beaucoup de temps d&amp;#x27;écran. J&amp;#x27;ai par contre réduis au strict minimum les chaînes auxquelles je suis abonné. Je suis passé de plusieurs nouvelles vidéos disponibles par jour dans mes abonnements à quelques vidéos par semaines.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai aussi installé l&amp;#x27;extension &amp;quot;Unhook&amp;quot;² dans mon navigateur pour masquer toutes suggestions de vidéos et les shorts YouTube. Je ne regarde YouTube que depuis mon ordinateur (je l&amp;#x27;ai supprimé de mon smartphone).&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai ainsi réduis par 10 environ mon temps sur cette plateforme.&lt;/p&gt;

&lt;h3&gt;Spotify&lt;/h3&gt;

&lt;p&gt;Je disais que j&amp;#x27;aurais du mal à m&amp;#x27;en défaire : je m&amp;#x27;en suis défait. Mes sources de musique sont maintenant les concerts (principalement au Brise Glace³, salle de concert gérée par une association à Annecy), les vinyles que j&amp;#x27;achète principalement directement aux groupes que je vois en concert, Bandcamp pour la musique au format numérique et les CD pour la musique que j&amp;#x27;achète d&amp;#x27;occasion.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;écoute la musique numérique et les CD (que je numérise) depuis mon vieil iPod qui fonctionne toujours très bien.&lt;/p&gt;

&lt;h2&gt;Bureautique et informatique&lt;/h2&gt;

&lt;p&gt;Pas de grands changements par rapport à mon article précédent. J&amp;#x27;utilise toujours Debian comme système d&amp;#x27;exploitation sur tous mes PC. J&amp;#x27;ai toujours un PC avec en plus, Windows installé pour les jeux vidéo.&lt;/p&gt;

&lt;p&gt;Par contre, j&amp;#x27;ai migré tous mes projets de programmation de GitHub à SourceHut⁴. C&amp;#x27;est une entreprise privée, mais elle est loin d&amp;#x27;avoir l&amp;#x27;envergure de Microsoft (GitHub leur appartenant). La plateforme est aussi complètement open source et leurs valeurs sont plus proches des miennes.&lt;/p&gt;

&lt;p&gt;Et côté DNS (là c&amp;#x27;est vraiment technique xD), je suis passé à Quad9. DNS0 a cessé son service et FDN ne le propose plus qu&amp;#x27;à leurs abonnés internet.&lt;/p&gt;

&lt;h2&gt;Utilisation de mon smartphone&lt;/h2&gt;

&lt;p&gt;J&amp;#x27;ai commencé par rajouter des limites de temps sur les applications de mon smartphone. Je l&amp;#x27;ai aussi passé en noir et blanc, sauf pour les applications qui nécessitent vraiment de la couleur (galerie photo par exemple).&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai aussi remplacé le lanceur d&amp;#x27;application par défaut par un lanceur minimaliste⁵ : pas d’icônes, uniquement une liste de nom d&amp;#x27;applications. Les icônes aussi sont des distractions...&lt;/p&gt;

&lt;p&gt;Ces changements m&amp;#x27;ont permis de passer de plus de deux heures par jour sur mon téléphone à moins de 30 minutes.&lt;/p&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;En essayant d&amp;#x27;analyser mon usage des plateformes numériques, je me suis rendu compte de plusieurs choses :&lt;/p&gt;

&lt;p&gt;Premièrement, nous pouvons toujours justifier l&amp;#x27;usage des plateformes numériques par une raison à première vue valable. Par exemple, que nous regardons YouTube pour apprendre de nouvelles choses. Avec du recul, on se rend vite compte que les heures passées à &amp;quot;apprendre&amp;quot; sur YouTube n&amp;#x27;ont pas servi à grand-chose : de combien de nouvelles choses nous souvenons-nous, quelques heures ou quelques jours après les avoir vues en vidéo ?&lt;/p&gt;

&lt;p&gt;Deuxièmement, en utilisant ces plateformes, nous avons vite tendance à le faire pendant que nous faisons autre chose : de la musique en fond de lecture, une vidéo YouTube en fond de travail, etc. Malheureusement, je me suis aperçu en réduisant mon usage du numérique, que ça induit plus de fatigue qu&amp;#x27;autre chose. Nous ne pouvons pas nous concentrer sur deux tâches en même temps et cela occupe notre cerveau même pendant ses temps morts. Il ne se repose donc jamais.&lt;/p&gt;

&lt;p&gt;En réduisant mon usage des plateformes numériques, j&amp;#x27;ai diminué mon impression de fatigue et de &amp;quot;burn-out&amp;quot; permanent. J&amp;#x27;ai aussi l&amp;#x27;impression d&amp;#x27;avoir retrouvé un peu de créativité et surtout, de la motivation. Je me sens aussi beaucoup plus en accord avec mes valeurs, surtout avec l&amp;#x27;utilisation quasiment systématique d&amp;#x27;alternatives libres aux logiciels des monopoles du numérique.&lt;/p&gt;

&lt;p&gt;Si je fais une mise à jour à cet article un jour, peut-être que j&amp;#x27;y expliquerais comment vivre dans une grotte sans électricité... xP&lt;/p&gt;

&lt;h2&gt;Liens&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;/abandon-progressif-monopoles&quot;&gt;¹: Mon abandon progressif des monopoles&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://unhook.app/&quot;&gt;²: Extension Unhook pour réduire les distractions sur YouTube&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.le-brise-glace.com/&quot;&gt;³: Le Brise Glace, scène de musiques actuelles à Annecy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://git.sr.ht/~arnakazim/&quot;&gt;⁴: Mon profil sur SourceHut&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://play.google.com/store/apps/details?id=app.olauncher&quot;&gt;⁵: Olauncher, lanceur d&#x27;application minimaliste pour Android&lt;/a&gt;&lt;/p&gt;
</description>
    <pubDate>Sun, 23 Nov 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/poursuite-reduction-dependance-numerique</guid>
</item>
<item>
    <title>Regarder la télé depuis un ordinateur sous Linux avec un décodeur USB</title>
    <link>https://blog.arnaudouvrier.fr/regarder-tv-linux-decodeur-usb</link>
    <description>

&lt;p&gt;En faisant du tri dans mon matériel informatique, je suis retombé sur un décodeur TNT USB. Je ne regarde plus la télé, mais par curiosité, je voulais voir s&amp;#x27;il fonctionnait correctement. Je me souviens qu&amp;#x27;à l&amp;#x27;époque, ce n&amp;#x27;était pas simple de le faire fonctionner, mais je suis tombé sur une méthode facile pour le faire fonctionner sous Linux.&lt;/p&gt;

&lt;p&gt;C&amp;#x27;est un décodeur USB basé sur une puce de démodulateur Realtek RTL2832U. Il permet la réception de la télévision DVB-T (la TNT en France). La méthode fonctionne sur Debian ou les distributions basées dessus (Ubuntu par exemple).&lt;/p&gt;

&lt;p&gt;Il suffit d&amp;#x27;installer &amp;quot;w_scan&amp;quot;, un scanner de fréquence DVB-T, et de l&amp;#x27;utiliser pour créer une liste de lecture VLC. Cette liste de lecture contiendra la liste des chaînes captées par le décodeur. On utilisera ensuite VLC pour regarder les chaînes de télé.&lt;/p&gt;

&lt;p&gt;Voici les commandes à utiliser :&lt;/p&gt;

&lt;pre&gt;
# Installation de w_scan et VLC :
sudo apt install w-scan vlc

# Scan des fréquences DVB-T (prend un peu de temps) et écriture dans une liste de lecture :
# (Pensez à remplacer le &amp;quot;FR&amp;quot; par le code du pays dans lequel vous vous trouvez)
w_scan -c FR -L &amp;gt; chaines.xspf

# Ouverture de la liste de lecture avec VLC
vlc chaines.xspf
&lt;/pre&gt;

&lt;p&gt;Voilà, ce n&amp;#x27;est pas plus compliqué que ça. Il n&amp;#x27;y a plus qu&amp;#x27;à sélectionner une chaîne dans VLC et la regarder.&lt;/p&gt;

&lt;p&gt;S&amp;#x27;il manque des chaînes, que l&amp;#x27;image se fige ou est de mauvaise qualité, c&amp;#x27;est que le décodeur ne capte pas un bon signal. Essayez de déplacer l&amp;#x27;antenne pour avoir une meilleure réception.&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/files/tv-dans-vlc.png&quot; alt=&quot;Capture d&#x27;écran de VLC en train de lire une chaîne de télé&quot;&gt;&lt;p&gt;&lt;small&gt;Capture d&#x27;écran de VLC en train de lire une chaîne de télé&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;

&lt;p&gt;Ma source :&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://jannecederberg.fi/2017/04/08/dvb-t-reception-using-vlc/&quot;&gt;Le blog de Janne Cederberg&lt;/a&gt;&lt;/p&gt;
</description>
    <pubDate>Thu, 09 Oct 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/regarder-tv-linux-decodeur-usb</guid>
</item>
<item>
    <title>Sauvegarder un CD ou DVD en image ISO depuis Linux</title>
    <link>https://blog.arnaudouvrier.fr/sauvegarder-cd-en-iso</link>
    <description>

&lt;p&gt;Au fil des ans, j&amp;#x27;ai accumulé quelques CD et DVD de musique, jeux, films ou données. Mon PC principal a encore un lecteur DVD (et un lecteur de disquette), mais en 2025, c&amp;#x27;est une exception. Pour pouvoir utiliser mes disques sur d&amp;#x27;autres PC et aussi en garder une sauvegarde (les disques s&amp;#x27;abîment au fil du temps, ce n&amp;#x27;est pas un support éternel), j&amp;#x27;en fais des images ISO.&lt;/p&gt;

&lt;p&gt;Les images ISO sont des disques virutels. Elles peuvent être montées par le système comme si elles étaient des disques physique. Elles peuvent aussi être directement regravées sur un autre disque.&lt;/p&gt;

&lt;p&gt;Voici les commandes à utiliser pour créer une image ISO depuis un disque :&lt;/p&gt;

&lt;p&gt;1. Vérifiez si le lecteur CD est monté sur le système :&lt;/p&gt;

&lt;pre&gt;
mount
&lt;/pre&gt;

&lt;p&gt;(Cherchez /dev/sr0, /dev/cdrom ou un autre device correspondant au lecteur DVD sur votre PC)&lt;/p&gt;

&lt;p&gt;2. S&amp;#x27;il est monté, le démonter&lt;/p&gt;

&lt;pre&gt;
umount /dev/sr0
# ou /dev/cdrom...
&lt;/pre&gt;

&lt;p&gt;3. Lancez la commande DD pour copier le disque en ISO&lt;/p&gt;

&lt;p&gt;Si c&amp;#x27;est un CD-ROM, DVD-ROM ou Blu-ray, lancer cette commande :&lt;/p&gt;

&lt;pre&gt;
dd if=/dev/sr0 of=/chemin/vers/fichier.iso bs=2048 count=$(sudo isosize -d 2048 /dev/sr0) status=progress
&lt;/pre&gt;
&lt;p&gt;Pensez à modifier le chemin source (/dev/sr0, deux fois dans la commande) s&amp;#x27;il est différent sur votre PC. Il faut aussi modifier le nom de fichier de sortie (option &amp;quot;of&amp;quot; dans la commande).&lt;/p&gt;

&lt;p&gt;La commande copie, par blocs de 2048 bits (option &amp;quot;bs&amp;quot;), les données du disque. L&amp;#x27;option count contient une commande qui sert à déterminer le nombre de blocs de 2048 bits sur le disque. La dernière option, &amp;quot;status&amp;quot;, permet d&amp;#x27;afficher une barre de progression.&lt;/p&gt;

&lt;p&gt;Si c&amp;#x27;est un CD ou DVD de données (format FAT), lancer cette commande :&lt;/p&gt;

&lt;pre&gt;
dd if=/dev/sr0 of=/chemin/vers/fichier.iso status=progress
&lt;/pre&gt;

&lt;p&gt;4. C&amp;#x27;est tout, vous avez un fichier image ISO de votre disque. La commande &amp;quot;dd&amp;quot; peut aussi être utilisée pour faire des des copies de lecteurs USB, disques durs ou même disquettes.&lt;/p&gt;
</description>
    <pubDate>Fri, 19 Sep 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/sauvegarder-cd-en-iso</guid>
</item>
<item>
    <title>Et encore une refonte de ce blog</title>
    <link>https://blog.arnaudouvrier.fr/encore-une-refonte-du-blog</link>
    <description>

&lt;p&gt;Bientôt, je vais faire des refontes plus fréquemment que je ne publie des articles. Cette fois-ci, la refonte n&amp;#x27;est que purement technique et invisible au visiteur. Pas de changement ni de nom, ni de nom de domaine. Pas même un changement de style.&lt;/p&gt;

&lt;p&gt;Mais du coup, en quoi consiste cette refonte ?&lt;/p&gt;

&lt;p&gt;C&amp;#x27;est une refonte du backend du site. Plus particulièrement du moteur de génération des pages. Depuis un bon moment et jusqu&amp;#x27;à aujourd&amp;#x27;hui, mon (mes) blog tournait avec un CMS (Content Management System) en PHP (que ce soit un CMS maison¹ ou WordPress). C&amp;#x27;était un site dynamique, où chaque page était générée au moment où un visiteur demandait à l&amp;#x27;afficher. Les données contenues sur ces pages étaient stockées en base de données. À partir d&amp;#x27;aujourd&amp;#x27;hui, ce site est statique. Chaque page est un fichier enregistré sur le serveur.&lt;/p&gt;

&lt;p&gt;Les pages ne sont donc plus générées à la demande, mais sont prégénérées au format HTML via un script Python². Ce script s&amp;#x27;occupe de générer les pages statiques du blog sur mon PC, à partir des différents articles, eux aussi stockés sur mon PC. Une fois les pages statiques générées, je les mets en ligne sur mon serveur web. Le serveur n&amp;#x27;a plus qu&amp;#x27;à servir les pages statiques.&lt;/p&gt;

&lt;p&gt;En soi, ça ne change pas grand-chose. Le blog s&amp;#x27;affiche un peu plus rapidement car il n&amp;#x27;y a plus de requêtes vers la base de données. Il demande aussi un peu moins de ressources. Soyons clairs, vu le faible trafic que ce blog subit, le changement est minime.&lt;/p&gt;

&lt;p&gt;Au final, ce n&amp;#x27;est qu&amp;#x27;un système de cache. Un cache garde en mémoire les pages générées jusqu&amp;#x27;à ce qu&amp;#x27;elles soient mises à jour. Seulement, ce n&amp;#x27;est pas le serveur, mais moi qui le gère. Vu la fréquence à laquelle je le mets à jour, ça n&amp;#x27;est pas beaucoup plus de travail pour moi. L&amp;#x27;envoi des pages sur le serveur après génération étant automatisé, ça ne me demande pas plus de travail.&lt;/p&gt;

&lt;p&gt;Le gain principal est plutôt dans l&amp;#x27;écriture des articles. Je ne suis pas dépendant d&amp;#x27;internet pour écrire, vu que j&amp;#x27;écris plus les articles sur le serveur, mais sur mon PC. J&amp;#x27;ai juste besoin d&amp;#x27;internet au moment où je veux publier l&amp;#x27;article.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai aussi rajouté la prise en charge des articles au format gemtext. Bien que je ne sois pas complètement convaincu par le protocole gemini³ et ce format de mise en page, pour des articles simples, il est amplement suffisant pour des articles simples (comme celui-ci). J&amp;#x27;ai juste ajouté à mon interpréteur une fonctionnalité pour gérer l&amp;#x27;affichage d&amp;#x27;images. Pour les articles plus complexes, je continuerai à les écrire directement en HTML.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;aurais aussi pu ajouter toutes ces fonctionnalités à mon CMS PHP. Mes blogs, depuis toujours, sont plus une excuse pour faire un peu de programmation et d&amp;#x27;administration système. Alors j&amp;#x27;en ai profité pour faire un peu de Python pour changer.&lt;/p&gt;

&lt;p&gt;Les références de cet article :&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://git.sr.ht/~arnakazim/arnouv-blog-old&quot;&gt;¹ : Sources de l&#x27;ancien CMS de mon blog&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://git.sr.ht/~arnakazim/arnouv-blog&quot;&gt;² : Sources de mon script de génération de contenu&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;/mon-avis-protocole-gemini&quot;&gt;³ : Mon article où je donne mon avis sur le protocole Gemini&lt;/a&gt;&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/files/chèvres-dans-champ.jpg&quot; alt=&quot;Et en prime, une image pour illustrer la fonctionnalité d&#x27;affichage des images ajoutée à mon interpréteur gemtext (des chèvres dans un champ)&quot;&gt;&lt;p&gt;&lt;small&gt;Et en prime, une image pour illustrer la fonctionnalité d&#x27;affichage des images ajoutée à mon interpréteur gemtext (des chèvres dans un champ)&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;
</description>
    <pubDate>Thu, 18 Sep 2025 00:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/encore-une-refonte-du-blog</guid>
</item>
<item>
    <title>Synchroniser un dépôt SourceHut vers GitHub avec un build automatique</title>
    <link>https://blog.arnaudouvrier.fr/synchroniser-depot-sourcehut-github</link>
    <description>
&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;En migrant mes dépôts GitHub vers SourceHut, je suis tombé sur un problème : sur GitHub, j&#x27;ai un dépôt servant à
  gérer une bibliothèque Arduino. Cette bibliothèque est référencée et installable via le gestionnaire de bibliothèques
  Arduino inclus avec l&#x27;IDE Arduino. La synchronisation d&#x27;une bibliothèque vers le gestionnaire de bibliothèques Arduino
  ne peut se faire que via un dépôt GitHub, GitLab ou BitBucket...&lt;/p&gt;

&lt;p&gt;Je ne voulais ni supprimer ma bibliothèque du gestionnaire, ni devoir continuer de la maintenir sur GitHub, vu que
  tous mes autres projets sont maintenant sur SourceHut. Pour ce faire, j&#x27;ai ajouté un build automatique à mon projet,
  afin que dès qu&#x27;un commit est publié sur SourceHut, il soit dupliqué sur GitHub.&lt;/p&gt;

&lt;p&gt;J&#x27;ai trouvé cette solution sur le blog de Stephen Waits : &lt;a
    href=&quot;https://swaits.com/mirroring-sourcehut-to-github/&quot;&gt;Mirroring SourceHut repos to Github&lt;/a&gt;. Cet article n&#x27;est
  majoritairement qu&#x27;une traduction du sien.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Remarque&lt;/b&gt; : Vous devez avoir un abonnement payant à SourceHut pour pouvoir utiliser cette solution.

&lt;h2&gt;Comment activer la synchronisation d&#x27;un dépôt SourceHut vers GitHub avec un build automatique&lt;/h2&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;Générez une clé SSH dédiée à cette synchronisation SourceHut ↔ GitHub (elle peut être réutilisée sur plusieurs
        dépôts). Pour ce faire, lancez la commande suivante et n&#x27;ajoutez pas de mot de passe à la clé :&lt;/p&gt;
    &lt;pre&gt;ssh-keygen -C sourcehut-sync -f sourcehut-sync_ed25519&lt;/pre&gt;
    &lt;p&gt;Cette commande va créer une paire clé privée/clé publique. Faites attention à ce que vous faites avec la clé
      privée, celle-ci donnera accès à tous vos dépôts GitHub...&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Ajoutez la clé publique à votre compte GitHub sur cette page : &lt;a
        href=&quot;https://github.com/settings/keys&quot;&gt;https://github.com/settings/keys&lt;/a&gt;. Pour l&#x27;afficher dans votre
      terminal, exécutez :&lt;/p&gt;
    &lt;pre&gt;cat sourcehut-sync_ed25519.pub&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Ajoutez ensuite la clé privée à vos secrets sur SourceHut sur la page suivante : &lt;a
        href=&quot;https://builds.sr.ht/secrets&quot;&gt;https://builds.sr.ht/secrets&lt;/a&gt;. Pour l&#x27;afficher dans votre terminal,
      exécutez cette fois là commande suivante :&lt;/p&gt;
    &lt;pre&gt;cat sourcehut_ed25519&lt;/pre&gt;
    &lt;p&gt;Une fois la clé privée ajoutée, SourceHut devrait vous donner un ID pour pouvoir la référencer dans vos fichiers
      de build. Il ressemble à ça : f2f8a99-cdf7-4286-b50f-7493o21bbxae. Copiez-le pour l&#x27;ajouter plus tard au fichier
      de build.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Optionnel : créez un dépôt vide sur GitHub (sans aucun fichier, même pas de README) pour l&#x27;utiliser pour la
      synchronisation du dépôt SourceHut.&lt;/p&gt;
    &lt;p&gt;Si vous désirez plutôt synchroniser un dépôt déjà existant sur GitHub, assurez-vous avant que le dépôt SourceHut
      ne soit pas en retard sur les commits.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Dans votre dépôt SourceHut, créez un fichier nommé &quot;.build.yml&quot;. Ajoutez-y le contenu suivant (en remplaçant les
      informations entre crochets) :&lt;/p&gt;
    &lt;pre&gt;image: alpine/edge
secrets:
  - [l&#x27;ID de votre secret]
sources:
  - git+ssh://git@git.sr.ht/~[votre nom d&#x27;utilisateur]/[nom de votre dépôt]
tasks:
  - mirror-to-github: |
      cd ~/[nom de votre dépôt]
      ssh-keyscan -t rsa github.com &gt;&gt; ~/.ssh/known_hosts
      git remote add github git@github.com:[votre nom d&#x27;utilisateur]/[nom de votre dépôt].git
      git push --mirror github&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Vous pouvez maintenant créer un commit et le pousser sur votre dépôt SourceHut. Le build devrait s&#x27;exécuter
      automatiquement et être répliqué sur GitHub. Vous pouvez suivre le statut du build sur la page &lt;a
        href=&quot;https://builds.sr.ht&quot;&gt;https://builds.sr.ht&lt;/a&gt;.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Si comme pour moi, votre build échoue et vous obtenez une erreur du genre : &quot;push declined due to email privacy
  restrictions&quot;, pensez à désactiver l&#x27;option &quot;Block command line pushes that expose my email&quot; dans vos paramètres email
  sur GitHub.&lt;/p&gt;

&lt;p&gt;Voilà, c&#x27;est tout ce qu&#x27;il y a à faire pour synchroniser un dépôt SourceHut vers GitHub !&lt;/p&gt;

</description>
    <pubDate>Thu, 28 Aug 2025 19:23:57 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/synchroniser-depot-sourcehut-github</guid>
</item>
<item>
    <title>Installer copyparty sur Alpine Linux (pour avoir un serveur de fichiers performant sur un vieux PC)</title>
    <link>https://blog.arnaudouvrier.fr/installer-copyparty-sur-alpine</link>
    <description>
&lt;h2&gt;Introduction&lt;/h2&gt;

&lt;p&gt;J&amp;#x27;ai récemment récupéré un client léger HP ThinClient t520. C&amp;#x27;est un petit ordinateur de 2014, avec peu de ressources ayant pour but de se connecter sur des bureaux à distance. En soi, c&amp;#x27;est juste un PC avec des ressources limitées (CPU double cœur de 1,2 GHz, 2 Go de RAM et un SSD de 8 Go). J&amp;#x27;ai aussi besoin d&amp;#x27;un NAS local et j&amp;#x27;ai des disques durs USB qui traînent.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai donc décidé d&amp;#x27;installer Alpine Linux sur le client léger et de brancher un disque USB dessus pour tester le tout récent serveur de fichiers copyparty. Si le test est concluant, je connecterai un boîtier USB RAID à la place du disque dur simple pour plus de sécurité.&lt;/p&gt;

&lt;p&gt;copyparty est un serveur de fichiers performant et peu gourmand en ressources et contenu dans un seul script Python. Son installation est donc simple et rapide (moins de 30 minutes dans mon cas, en comptant l&amp;#x27;installation d&amp;#x27;Alpine Linux sur le serveur). Il devrait aussi tourner sans problème sur un petit système, tel que ce client léger.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/9001/copyparty&quot;&gt;Plus d&#x27;informations sur la page GitHub du projet copyparty&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Prérequis&lt;/h2&gt;

&lt;p&gt;Pour procéder à l&amp;#x27;installation de copyparty, il vous faudra au préalable :&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Un serveur. Dans mon cas un client léger HP, mais n&amp;#x27;importe quel vieux PC, serveur, Raspberry Pi pourra faire l&amp;#x27;affaire&lt;/li&gt;
&lt;li&gt;Alpine Linux installé sur ce serveur&lt;/li&gt;
&lt;li&gt;Un accès à internet depuis ce serveur&lt;/li&gt;
&lt;li&gt;Un disque dur externe USB formaté en EXT4&lt;/li&gt;


&lt;/ul&gt;&lt;h2&gt;Installation&lt;/h2&gt;

&lt;p&gt;Pour commencer, nous allons créer le répertoire de montage du disque dur et modifier le fichier &amp;quot;/etc/fstab&amp;quot; pour monter le disque dur automatiquement au démarrage du serveur :&lt;/p&gt;
&lt;pre&gt;
# Création du répertoire de montage 
mkdir -p /mnt/usb

# Récupération de l&amp;#x27;UUID du disque (liste les UUID de tous les disques)
ls -al /dev/disk/by-uuid*
&lt;/pre&gt;
&lt;p&gt;Nous modifions ensuite le fichier &amp;quot;/etc/fstab&amp;quot; :&lt;/p&gt;
&lt;pre&gt;
vi /etc/fstab
&lt;/pre&gt;
&lt;p&gt;Pour y ajouter à la fin :&lt;/p&gt;
&lt;pre&gt;
# Disque externe                                                           
UUID=[UUID du disque récupéré précédemment] /mnt/usb ext4 defaults,nofail 0 0
&lt;/pre&gt;
&lt;p&gt;([ECHAP] puis &amp;quot;:wq&amp;quot; pour sauvegarder et quitter)&lt;/p&gt;

&lt;p&gt;Et pour finir, nous montons le disque :&lt;/p&gt;
&lt;pre&gt;
mount -a
&lt;/pre&gt;

&lt;p&gt;Le disque devrait maintenant être accessible depuis le répertoire &amp;quot;/mnt/usb/&amp;quot;. Ce répertoire servira de racine à copyparty.&lt;/p&gt;
&lt;p&gt;Nous passons ensuite à l&amp;#x27;installation des paquets requis et optionnels, mais conseillés, pour faire tourner copyparty :&lt;/p&gt;
&lt;pre&gt;
# Installer les paquets requis
apk add build-base python3-dev openssl-dev libffi-dev

# Et les paquets optionnels (voir la documentation de copyparty)
apk add py3-pillow ffmpeg
&lt;/pre&gt;

&lt;p&gt;Puis nous téléchargeons le script copyparty dans le bon répertoire et le rendons exécutable :&lt;/p&gt;
&lt;pre&gt;
# Télécharger copyparty
wget -O /usr/local/bin/copyparty-sfx.py https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py
chmod +x /usr/local/bin/copyparty-sfx.py
&lt;/pre&gt;

&lt;p&gt;Nous pourrions nous arrêter là et simplement lancer le script pour démarrer le serveur. Pour que l&amp;#x27;installation soit plus propre, nous allons créer un service. Cela permettra que le serveur se lance automatiquement au redémarrage de la machine.&lt;/p&gt;
&lt;p&gt;Pour ce faire, nous téléchargeons le script de service officiel et nous le rendons exécutable :&lt;/p&gt;
&lt;pre&gt;
wget -O /etc/init.d/copyparty https://github.com/9001/copyparty/raw/refs/heads/hovudstraum/contrib/openrc/copyparty
chmod +x /etc/init.d/copyparty 
&lt;/pre&gt;

&lt;p&gt;Puis nous l&amp;#x27;ouvrons avec un éditeur pour le modifier :&lt;/p&gt;
&lt;pre&gt;
vi /etc/init.d/copyparty
&lt;/pre&gt;

&lt;p&gt;Il faut modifier la dernière ligne comme suit, pour définir la racine du serveur sur notre disque dur USB et activer l&amp;#x27;indexation des fichiers :&lt;/p&gt;
&lt;pre&gt;
command_args=&amp;quot;-q -e2dsa -v /mnt/usb::rw&amp;quot;
&lt;/pre&gt;

&lt;p&gt;Puis nous enregistrons le service au démarrage du système et le lançons :&lt;/p&gt;
&lt;pre&gt;
rc-update add copyparty
service start copyparty
&lt;/pre&gt;

&lt;p&gt;Et voilà, c&amp;#x27;est tout. Vous devriez avoir un serveur de fichiers fonctionnel. Il doit être accessible depuis votre réseau local sur l&amp;#x27;URL &amp;quot;http://[IP de votre serveur]:3923/&amp;quot; (commande &amp;quot;ip a&amp;quot; pour connaître l&amp;#x27;IP de votre serveur).&lt;/p&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;copyparty est vraiment un serveur de fichiers simple à installer. Il y a peu de configuration préalable pour l&amp;#x27;exécuter. Ce tutoriel pourrait s&amp;#x27;arrêter au téléchargement du script Python et votre serveur fonctionnerait tout aussi bien.&lt;/p&gt;
&lt;p&gt;Concernant les performances, pour l&amp;#x27;instant j&amp;#x27;ai seulement envoyé sur le serveur un fichier vide de 10 Gb  et l&amp;#x27;ai re-téléchargé. Le temps d&amp;#x27;envoi d&amp;#x27;une minute environ et de téléchargement de deux minutes sont prometteurs. Je continuerai mes tests un peu avant de l&amp;#x27;adopter définitivement, mais à première vue ce serveur de fichiers est vraiment performant.&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;/files/544_page_accueil_copyparty.png&quot; alt=&quot;Page d&#x27;accueil de copyparty&quot;&gt;&lt;p&gt;&lt;small&gt;Page d&#x27;accueil de copyparty&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;

&lt;p&gt;N&amp;#x27;hésitez pas à lire la documentation de copyparty, pour configurer plus finement votre serveur.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/9001/copyparty&quot;&gt;La documentation est sur la page GitHub du projet copyparty&lt;/a&gt;&lt;/p&gt;



</description>
    <pubDate>Mon, 04 Aug 2025 18:32:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/installer-copyparty-sur-alpine</guid>
</item>
<item>
    <title>Le robot d'indexation web de Facebook est joueur</title>
    <link>https://blog.arnaudouvrier.fr/robot-exploration-web-facebook-joueur</link>
    <description>
&lt;p&gt;J&#x27;ai remarqué qu&#x27;un de mes serveurs web était particulièrement lent dernièrement. Le chargement des pages web prenait environ une minute à chaque fois. Je n&#x27;arrivais pas à trouver la cause jusqu&#x27;à ce que je regarde les journaux d&#x27;accès de mes sites.&lt;/p&gt;

&lt;p&gt;Dans celui correspondant à mon proxy Gemini (&lt;a href=&quot;https://gemweb.arnaudouvrier.fr/&quot;&gt;https://gemweb.arnaudouvrier.fr/&lt;/a&gt;), je suis tombé sur ces lignes, montrant une grosse quantité de requêtes provenant du robot d&#x27;indexation web de Facebook (Meta) :&lt;/p&gt;

&lt;pre style=&quot;white-space: pre-wrap;&quot;&gt;
[...]
2a03:2880:f800:1a:: - - [05/Nov/2024:12:06:16 +0100] &quot;GET /?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FBCGkDFJaheLI1456207301212102FL HTTP/1.1&quot; 200 12540 &quot;-&quot; &quot;meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)&quot;
2a03:2880:f800:1b:: - - [05/Nov/2024:12:06:16 +0100] &quot;GET /?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FeJAGicDLfkhB4362057120122212UF HTTP/1.1&quot; 200 12539 &quot;-&quot; &quot;meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)&quot;
2a03:2880:f800:16:: - - [05/Nov/2024:12:06:16 +0100] &quot;GET /raw.php?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FBCDFELHGKJIA1725460302120100DB HTTP/1.1&quot; 200 9910 &quot;-&quot; &quot;meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)&quot;
2a03:2880:f800:1b:: - - [05/Nov/2024:12:06:16 +0100] &quot;GET /?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FhcgkFELDjaIB2756341022011000LB HTTP/1.1&quot; 200 12540 &quot;-&quot; &quot;meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)&quot;
2a03:2880:f800:a:: - - [05/Nov/2024:12:06:16 +0100] &quot;GET /?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FdaCLeBHGiFJK3276015410000101LB HTTP/1.1&quot; 200 12540 &quot;-&quot; &quot;meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)&quot;
[...]
&lt;/pre&gt;

&lt;p&gt;Mon proxy Gemini permet, en théorie, d&#x27;explorer tout le contenu Gemini publiquement accessible. Sur la page d&#x27;accueil, j&#x27;ai des liens vers des capsules Gemini. Le robot n&#x27;ayant pas identifié qu&#x27;il était sur un proxy, il ouvre tous les liens sur lesquels il tombe. Il est pratiquement dans un piège infini.&lt;/p&gt;

&lt;p&gt;Ce qui pour le coup est encore plus marrant, c&#x27;est qu&#x27;en regardant de plus près les URLs qu&#x27;il ouvre en boucle, il est tombé sur une capsule contenant un Rubik&#x27;s cube à résoudre ! Ce Rubik&#x27;s cube textuel se résout en cliquant sur des liens hypertext, correspondant chacun aux actions qu&#x27;il est possible de faire. Chaque page chargée correspond donc à un état différent du Rubik&#x27;s cube.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;jsreed5 Rubik&#x27;s cube en Gemini : &lt;a href=&quot;gemini://jsreed5.org/live/cgi-bin/twisty/rubiks.cgi?daCLeBHGiFJK3276015410000101LB&quot;&gt;gemini://jsreed5.org/live/cgi-bin/twisty/rubiks.cgi?daCLeBHGiFJK3276015410000101LB&lt;/a&gt; (&lt;a href=&quot;https://gemweb.arnaudouvrier.fr//?url=gemini%3A%2F%2Fjsreed5.org%2Flive%2Fcgi-bin%2Ftwisty%2Frubiks.cgi%3FdaCLeBHGiFJK3276015410000101LB&quot;&gt;ou ici en HTTP via mon proxy&lt;/a&gt;)&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;D&#x27;après la documentation Facebook, ce robot d&#x27;indexation est utilisé pour l&#x27;entraînement d&#x27;intelligences artificielles :&lt;/p&gt;
&lt;div&gt;&lt;blockquote cite=&quot;&quot;&gt;
Le robot d&#x27;indexation Meta-ExternalAgent indexe le Web pour des cas d&#x27;utilisation tels que l&#x27;entraînement de modèles d&#x27;IA ou l&#x27;amélioration de produits en indexant directement le contenu.
&lt;/blockquote&gt;
&lt;p&gt;— Documentation Facebook (&lt;a href=&quot;https://developers.facebook.com/docs/sharing/webmasters/web-crawlers&quot;&gt;https://developers.facebook.com/docs/sharing/webmasters/web-crawlers&lt;/a&gt;)&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Une IA serait-elle en train de s&#x27;entraîner à la résolution des Rubik&#x27;s cubes sans même le savoir ?&lt;/p&gt;
&lt;p&gt;Bon maintenant je n&#x27;ai plus qu&#x27;à trouver comment arrêter le robot Facebook et tous les suivant de recommencer. C&#x27;est bien drôle de gaspiller des ressources de Facebook en piégeant inintentionnellement des robots, mais je gaspille aussi les ressources de mon serveur et celles de jsreed5...&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Bonus :  en regardant les journaux d&#x27;accès du proxy, je suis aussi tombé sur un robot qui charge périodiquement le même gemlog à propos de pornographie...&lt;/i&gt;&lt;/p&gt;


</description>
    <pubDate>Tue, 05 Nov 2024 13:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/robot-exploration-web-facebook-joueur</guid>
</item>
<item>
    <title>Mon avis sur le protocole gemini</title>
    <link>https://blog.arnaudouvrier.fr/mon-avis-protocole-gemini</link>
    <description>
&lt;h2&gt;Le protocole gemini&lt;/h2&gt;

&lt;p&gt;Pour commencer, voici la description du protocole tel que donnée par ses créateurs et qui résume très bien leur vision :&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Gemini est une nouvelle technologie internet qui prend en charge une bibliothèque électronique de documents texte interconnectés. Ce n&amp;#x27;est pas une idée nouvelle, mais elle n&amp;#x27;a pas d&amp;#x27;ancienneté non plus. Il est intemporel et mérite des outils qui le traitent comme un concept de première classe, pas un cas vestigial dans un coin. Gemini n&amp;#x27;est pas sur l&amp;#x27;innovation ou la perturbation, il s&amp;#x27;agit de donner un peu de repos à ceux qui sentent qu&amp;#x27;internet a déjà été assez perturbé. Nous ne sommes pas là pour changer le monde ou détruire d&amp;#x27;autres technologies. Nous voulons construire un espace en ligne simple où les documents ne sont que des documents, dans l&amp;#x27;intérêt de la vie privée, de l&amp;#x27;attention et de la bande passante de chaque lecteur.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;- (Traduction de la description de page d&amp;#x27;accueil du projet tel qu&amp;#x27;affichée au 30/06/2024)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;gemini://geminiprotocol.net/&quot;&gt;La page d&#x27;accueil du projet en gemini&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://geminiprotocol.net/&quot;&gt;La page d&#x27;accueil du projet en HTTP&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pour résumer simplement : le protocole gemini se veut simple, tant que par son implémentation côté client et serveur, que par son utilisation. Il se veut à contresens d&amp;#x27;un web qui se complexifie de jours en jours. Il est là pour aider à redistribuer aux utilisateurs la diffusion de l&amp;#x27;information sur internet.&lt;/p&gt;

&lt;p&gt;Les spécifications protocolaires sont très courtes : il n&amp;#x27;y a pas de fonction superflue. L&amp;#x27;écriture de documents servis par gemini est minimaliste. On pourrait presque dire que le langage d&amp;#x27;écriture est un markdown simplifié : il n&amp;#x27;y que quelques éléments de mise en page qui sont balisés en début de ligne. L&amp;#x27;écriture est simple, interprétation et la lecture l&amp;#x27;est tout autant.&lt;/p&gt;

&lt;p&gt;La navigation sur gemini se fait avec des clients dédiés. Les navigateurs web actuels ne permettent pas pour la majorité de charger des documents via le protocole gemini. De par sa simplicité, il existe beaucoup de clients en ligne de commande dans un terminal. C&amp;#x27;est aussi dans une optique de décomplexification, le protocole étant tellement simple qu&amp;#x27;il ne nécessite que d&amp;#x27;un affichage textuel pour visualiser des documents.&lt;/p&gt;

&lt;p&gt;On peut séparer le protocole gemini en deux sous protocoles : le protocole réseau gemini et le protocole de documents hypertextes &amp;quot;gemtext&amp;quot;.&lt;/p&gt;

&lt;h3&gt;Le gemtext&lt;/h3&gt;

&lt;p&gt;En gemini, un texte ne peut être formaté qu&amp;#x27;avec les éléments suivants :&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Lignes de texte&lt;/li&gt;
&lt;li&gt;Liens hypertexte&lt;/li&gt;
&lt;li&gt;Titres&lt;/li&gt;
&lt;li&gt;Liste à puce&lt;/li&gt;
&lt;li&gt;Blocs de citation&lt;/li&gt;
&lt;li&gt;Blocs préformatés (blocs de code)&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;Il ne peut y avoir qu&amp;#x27;un élément par ligne : on ne peut pas insérer un lien au milieu d&amp;#x27;une ligne de texte par exemple. Il ne peut pas non plus y avoir d&amp;#x27;image au milieu d&amp;#x27;un texte : pour afficher une image à l&amp;#x27;utilisateur, il faut lui donner un lien vers cette image.&lt;/p&gt;

&lt;p&gt;Les balises de formatage sont les suivantes :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;#, ##, ou ### Pour les titres de niveau 1, 2 ou 3&lt;/li&gt;
&lt;li&gt;=&amp;gt; pour les liens&lt;/li&gt;
&lt;li&gt;* pour les lignes de liste à puce&lt;/li&gt;
&lt;li&gt;&amp;gt; pour les lignes de citation&lt;/li&gt;
&lt;li&gt;``` pour le texte préformaté (une ligne avant le début du texte préformaté pour ouvrir le bloc, une ligne après pour le fermer)&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;On peut voir une légère ressemblance avec markdown. La ressemblance s&amp;#x27;arrête là. Les deux formats n&amp;#x27;ont pas la même vocation. Markdown est là pour permettre de rendre lisible un document dans un editeur de texte, mais aussi pour pouvoir être affiché de façon &amp;quot;traditionnelle&amp;quot; en HTML dans un navigateur. Markdown est beaucoup plus complexe à interpréter par un client pour être convenablement affiché.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;gemini://geminiprotocol.net/docs/gemtext-specification.gmi&quot;&gt;Spécifications techniques du &quot;gemtext&quot; en gemini&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://geminiprotocol.net/docs/gemtext-specification.gmi&quot;&gt;Spécifications techniques du &quot;gemtext&quot; en HTTP&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;Le protocole réseau gemini&lt;/h3&gt;

&lt;p&gt;Le protocole réseau gemini a un fonctionnement assez proche du protocole HTTP, en beaucoup plus minimaliste. Le client ne peut qu&amp;#x27;envoyer des simple. Ces requêtes contiennent uniquement l&amp;#x27;URL de la page à afficher et optionnellement une donnée texte fourni par l&amp;#x27;utilisateur. En retour, le serveur peut répondre avec cinq types de réponses différentes. Seul les réponses de type &amp;quot;success&amp;quot; retournent un document gemtext ou autre. Les plages de codes de réponse sont définies, mais pas tous les codes sont spécifiés.&lt;/p&gt;

&lt;p&gt;Ces types de réponses sont les suivantes :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Code 10 à 19 (10 et 11 spécifiés) : le serveur demande à l&amp;#x27;utilisateur de saisir une donnée.&lt;/li&gt;
&lt;li&gt;Code 20 à 29 (20 spécifié) : le serveur renvoi un document gemtext ou un autre type de document défini par un type MIME.&lt;/li&gt;
&lt;li&gt;Code 30 à 39 (30 et 31 spécifiés) : code de redirection temporaire ou permanente.&lt;/li&gt;
&lt;li&gt;Code 40 à 49 (40 à 44 spécifiés) : erreur temporaire du serveur.&lt;/li&gt;
&lt;li&gt;Code 50 à 59 (50 à 53 et 59 spécifiés) : erreur permanente du serveur.&lt;/li&gt;
&lt;li&gt;Code 60 à 69 (60 à 62 spécifiés) : gestion des certificats clients.&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;Et c&amp;#x27;est tout. Un client n&amp;#x27;aura qu&amp;#x27;un nombre très restreint de réponses, qu&amp;#x27;un serveur pourra lui fournir, à savoir gérer. La communication client/serveur gemini se fait uniquement en TLS, il n&amp;#x27;y a donc pas d&amp;#x27;informations &amp;quot;en clair&amp;quot; transitant entre les deux.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;gemini://geminiprotocol.net/docs/protocol-specification.gmi&quot;&gt;Spécifications techniques du protocole réseau gemini en gemini&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://geminiprotocol.net/docs/protocol-specification.gmi&quot;&gt;Spécifications techniques du protocole réseau gemini en HTTP&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;Mon expérience avec gemini&lt;/h2&gt;

&lt;p&gt;Je n&amp;#x27;ai connaissance de ce protocole que depuis 2022 environ. Depuis, je n&amp;#x27;avais jamais vraiment interagis avec tout en ayant une certaine familiarité avec le gemtext : je lis quelques blogs qui ont une version web pour l&amp;#x27;affichage de leurs contenus gemini. Ces contenus, bien qu&amp;#x27;écrits en HTML, respectent donc les restrictions du gemtext.&lt;/p&gt;

&lt;p&gt;En 2024, trouvant aussi qu&amp;#x27;internet est devenu très (trop) complexe, j&amp;#x27;ai décidé de m&amp;#x27;y intéresser de plus près.&lt;/p&gt;

&lt;p&gt;J&amp;#x27;ai donc décidé de créer un client web pour naviguer sur le protocole (voir plus loin, mon avis sur le protocole, pour connaître ma raison de créer un client web pour le protocole). Je l&amp;#x27;ai écrit en PHP. Il respecte quasiment complètement le standard. Il gère tous les codes de réponse serveur (sauf les 6x, j&amp;#x27;en reparle dans mon avis). Il ne lui manque plus qu&amp;#x27;une gestion des types MIME, ce qui sera peut-être réglé avant la publication de cet article.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gemweb.arnaudouvrier.fr&quot;&gt;Mon client web permettant de naviguer sur Gemini depuis son navigateur&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En programmant mon client, j&amp;#x27;ai vraiment pu me rendre compte de la simplicité du protocole. Il ne faut que quelques dizaines de lignes pour communiquer avec un serveur et quelques dizaines d&amp;#x27;autres pour l&amp;#x27;interprétation du gemtext en HTML. La simplicité du protocole est bien là.&lt;/p&gt;

&lt;p&gt;De cette façon, je peux continuer mon exploration du monde gemini, avec un accès direct au contenu distribué par ce protocole.&lt;/p&gt;

&lt;h2&gt;Mon avis sur le protocole&lt;/h2&gt;

&lt;p&gt;Mon avis est mitigé : d&amp;#x27;un côté, consulter du contenu textuel sans fioritures est une bonne chose, d&amp;#x27;un autre je trouve le protocole redondant, ajoutant un outil supplémentaire à internet alors que tant d&amp;#x27;autres existent déjà.&lt;/p&gt;

&lt;p&gt;C&amp;#x27;est un peu comme l&amp;#x27;invention de nouvelles technologies pour combattre le réchauffement climatique, alors que la solution existe déjà et est simplement de réduire notre consommation. Ici, la solution serait de tout simplement faire des sites web plus léger au lieu d&amp;#x27;inventer un protocole qui en impose l&amp;#x27;usage.&lt;/p&gt;

&lt;p&gt;Je constate aussi que beaucoup de sites sont servis en HTTP en plus de gemini : je ne suis pas sûr que dédoubler l&amp;#x27;information soit une solution pour la décomplexifier. Cela montre peut-être aussi un problème lié au manque de fonctionnalités fournies par le protocole.&lt;/p&gt;

&lt;p&gt;Les blogueurs devenus gemlogueurs, car ils trouvent que le web est trop chargé, n&amp;#x27;auraient-ils pas pu seulement simplifier leur blogs ? L&amp;#x27;HTML permet très facilement de mettre en page du contenu de façon simple. Rien que les feuilles de style sont optionnelles... Je trouve aussi un peu dommage qu&amp;#x27;on pert la personnalisation (presque personnalité) du contenu par l&amp;#x27;auteur, même si je comprends que le but de gemini est de réduire les informations superflues.&lt;/p&gt;

&lt;p&gt;Côté fonctionnement du protocole et du gemtext plus particulièrement, là aussi j&amp;#x27;ai quelques réserves. Globalement, les options de formatage sont suffisante. Pouvoir mettre un texte en gras ou en italique aurait pu être un plus, mais pas une nécessité. Par contre, ce que je trouve qui manque grandement, c&amp;#x27;est une gestion des images. Une balise pour indiquer un lien vers une image serait une bonne chose. Les images peuvent être un plus pour la compréhension d&amp;#x27;un texte, du moment où les règles d&amp;#x27;accessibilité soient bien respectées de façon à ne pas pénaliser la compréhension des personnes mal ou non-voyantes.&lt;/p&gt;

&lt;p&gt;Le point positif majeur de gemini, c&amp;#x27;est le regroupement de contenus simples. Il est compliqué aujourd&amp;#x27;hui de naviguer sur internet uniquement sur des sites internet légers et sans fioritures. À part cela, un agrégateur de contenus centrés sur les blogs et site internet légers n&amp;#x27;aurait-il pas suffi ? Ou définir une surcouche HTML ou un guide d&amp;#x27;écriture spécifique pour générer des sites internet d&amp;#x27;une façon suffisamment simple pour pouvoir être lu via un terminal n&amp;#x27;aurait pas pu être une autre solution ?&lt;/p&gt;

&lt;p&gt;Un autre problème, mais là causé par la &amp;quot;jeunesse&amp;quot; du protocole : à quoi servent les certificats clients gérés avec les codes réponse 60 à 69 ? Je ne suis pas sûr de comprendre, surtout que les certificats clients sont uniques par sous-chemin d&amp;#x27;une URL sur un serveur, mais sont données par le client et non pas le serveur. Je n&amp;#x27;ai pas trouvé les spécifications du protocole suffisamment clair pour comprendre.&lt;/p&gt;

&lt;p&gt;Bien entendu mon avis n&amp;#x27;est pas figé. Il est susceptible de changer au fil de mes expériences avec gemini, mais aussi avec le web en général.&lt;/p&gt;


</description>
    <pubDate>Mon, 29 Jul 2024 08:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/mon-avis-protocole-gemini</guid>
</item>
<item>
    <title>Héberger un serveur NTP public pour le projet NTP Pool</title>
    <link>https://blog.arnaudouvrier.fr/heberger-serveur-pool-ntp</link>
    <description>


&lt;h2&gt;Qu&#x27;est-ce que NTP et le projet NTP Pool ?&lt;/h2&gt;

&lt;p&gt;Comme vous le savez peut-être, pour fonctionner correctement, les ordinateurs et serveurs connectés à internet ont besoin d&#x27;être à l&#x27;heure. Un protocole a été inventé pour ça : le protocole NTP. Il permet à chaque équipement de se connecter sur un serveur de temps par internet et mettre à jour son horloge interne. Ces serveurs de temps &quot;racines&quot; utilisent différents moyens pour rester toujours à l&#x27;heure : horloge atomique, horloge GPS...&amp;nbsp; Cela garanti la justesse de l&#x27;heure donnée par ces serveurs. Ces serveurs sont appelés strate 1, ils sont directement connectés à la source de l&#x27;heure.&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Ces serveurs strate 1 étant relativement peu nombreux, il existe 3 autres niveau de serveurs : les strates 2, connectés directement à ces strates 1, puis les strates 3 et enfin les strates 4. Plus les strates sont basses, plus il y a de serveurs, mais moins l&#x27;heure est précise. Nous allons configurer un serveur de strate 2 dans ce tutoriel. Les serveurs de strate 1 sont généralement gérés par des universités ou des centres de recherche ayant accès à une horloge atomique.&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Une fois configuré, comment rendre public son serveur pour que tout le monde puisse l&#x27;utiliser ? C&#x27;est là qu&#x27;intervient le projet &lt;a href=&quot;https://ntppool.org&quot; target=&quot;_blank&quot;&gt;NTP pool&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.ntppool.org/&quot; target=&quot;_blank&quot;&gt;NTP Pool&lt;/a&gt; est un réseau de serveurs NTP, connectés directement derrière la même URL : pool.ntp.org. Le serveur DNS derrière ce domaine, répond aux différentes requêtes avec une adresse différente&amp;nbsp; à chaque fois (round-robin). Ces adresses sont celle de la liste des serveurs participant au projet. Cela permet de distribuer les requêtes NTP sur un large réseau de serveurs. Et plus le réseau est large, plus l&#x27;heure distribuée est précise. C&#x27;est là que nous intervenons, en rajoutant des serveurs au projet. &lt;/p&gt;

&lt;p&gt;Ce projet fonctionne entièrement sur la base du volontariat : il est compliqué de générer des revenus sur un service NTP et en même temps le service est nécessaire au bon fonctionnement d&#x27;internet. Le réseau du projet NTP Pool est entièrement composé de serveurs mis à disposition gratuitement par des entreprises et des particuliers.&lt;br&gt;&lt;/p&gt;

&lt;h2&gt;Prérequis&lt;/h2&gt;

&lt;p&gt;Les prérequis sont :&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Un serveur faisant tourner Linux. Le projet conseil CentOS ou Ubuntu serveur, mais pour ce tutoriel j&#x27;utilise Debian. Au niveau des ressources, le minimum requis par la distribution de votre choix sera largement suffisant. Pour un serveur Debian sans interface graphique, il est conseillé&amp;nbsp; au minimum 512 Mo de RAM avec 4 Go d&#x27;espace disque.&lt;/li&gt;
&lt;li&gt;Une connexion internet avec un débit suffisant. Il y a peu de chances que les requêtes dépassent les 0,5 Mb/s de bande passante. Presque n&#x27;importe quelle connexion d&#x27;aujourd&#x27;hui ne sera pas saturée par la fourniture du service.&lt;/li&gt;
&lt;li&gt;Une adresse IP fixe. De préférence portée par un pare-feu en amont de votre serveur. Sans adresse IP fixe, il ne sera pas possible de joindre le projet.&lt;br&gt;&lt;/li&gt;
&lt;li&gt;Deux serveurs de strate 1 et quatre serveurs de strate 2 à configurer en serveurs source. Ces serveurs ne doivent pas faire partie de la pool NTP. Vous pouvez par exemple consulter &lt;a href=&quot;https://services.renater.fr/ntp/serveurs_francais&quot;&gt;la liste des serveurs de temps NTP français de RENATER&lt;/a&gt;&amp;nbsp;pour en sélectionner. Je n&#x27;en inclurai pas dans la configuration d&#x27;exemple, de façon à maximiser la distribution sur les serveurs de temps.&lt;br&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;Installation du serveur NTP&lt;/h2&gt;

&lt;h3&gt;Installation du service NTP : ntpd&lt;/h3&gt;

&lt;p&gt;Commencez par installer le paquet ntpd :&lt;br&gt;&lt;/p&gt;

&lt;pre&gt;sudo apt update
sudo apt install ntpd&lt;/pre&gt;

&lt;p&gt;Il faudra ensuite configurer le fichier &quot;/etc/ntp.conf&quot;. Supprimez toutes les lignes commençant par &quot;server&quot; puis ajoutez la liste de vos serveurs de la façon suivante :&lt;/p&gt;

&lt;pre&gt;# Serveurs de strate 1 :&lt;br&gt;server [URL serveur 1] iburst&lt;br&gt;server [URL serveur 2] iburst&lt;br&gt;# Serveurs de strate 2&lt;br&gt;server [URL serveur 3] iburst&lt;br&gt;server [URL serveur 4] iburst&lt;br&gt;server [URL serveur 5] iburst&lt;br&gt;server [URL serveur 6] iburst&lt;/pre&gt;

&lt;p&gt;Il faudra aussi ajouter &quot;noquery&quot; à la fin des lignes &quot;restrict&quot; :&lt;/p&gt;

&lt;pre&gt;restrict source notrap nomodify noquery&lt;/pre&gt;

&lt;p&gt;Enfin, redémarrez le service ntpd :&lt;br&gt;&lt;/p&gt;

&lt;pre&gt;sudo service ntpd restart&lt;/pre&gt;

&lt;h3&gt;Installation du serveur web : apache2&lt;/h3&gt;

&lt;p&gt;Cette étape est facultative. Elle permet d&#x27;ajouter une redirection web vers le site internet du projet. Si quelqu&#x27;un tape &quot;pool.ntp.org&quot; dans son navigateur et tombe sur votre serveur, il sera automatiquement redirigé vers le site du projet.&lt;/p&gt;

&lt;p&gt;Installez apache2 comme suit :&lt;br&gt;&lt;/p&gt;

&lt;pre&gt;sudo apt install apache2&lt;/pre&gt;

&lt;p&gt;Puis configurez le fichier &quot;/etc/site-available/default.conf&quot; comme ci-après :&lt;/p&gt;

&lt;pre&gt;&amp;lt;VirtualHost *.80&amp;gt;
        ServerName pool.ntp.org
        ServerAlias *.pool.ntp.org *.ntppool.org

        RedirectPermanent / https://www.ntppool.org/
&amp;lt;/VirtualHost&amp;gt;&lt;/pre&gt;

&lt;p&gt;Puis redémarrez apache2 :&lt;br&gt;&lt;/p&gt;

&lt;pre&gt;sudo service apache2 restart&lt;/pre&gt;

&lt;h3&gt;Ouverture des ports et règles NAT : dépend de votre pare-feu&lt;br&gt;&lt;/h3&gt;

&lt;p&gt;Les ports à ouvrir et rediriger sur votre serveur sont à minima les suivants :&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;port 123 (UDP et TCP, port du service NTP)&lt;/li&gt;
&lt;li&gt;port 80 (TCP, pour la redirection HTTP avec Apache)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;La configuration étant dépendante de votre pare-feu, je ne la détaillerais pas. Pensez aussi à ouvrir ces ports sur votre serveur si celui-ci possède aussi un pare-feu.&lt;br&gt;&lt;/p&gt;

&lt;h2&gt;Inscription de votre serveur sur NTP Project&lt;/h2&gt;

&lt;p&gt;Les étapes pour ajouter votre serveur sur le projet NTP Pool sont :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Créez un compte sur &lt;a href=&quot;https://www.ntppool.org/&quot; target=&quot;_blank&quot;&gt;ntppool.org&lt;/a&gt; et connectez-vous.&lt;/li&gt;
&lt;li&gt; Rendez-vous&amp;nbsp; sur la page de gestion de vos serveurs : &lt;a href=&quot;https://manage.ntppool.org/manage/servers&quot; target=&quot;_blank&quot;&gt;manage.ntppool.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Ajoutez votre serveur en renseignant son adresse IP ou son nom de domaine si vous lui en avez assigné un.&lt;/li&gt;
&lt;li&gt;Confirmez que le serveur vous appartient bien.&lt;/li&gt;
&lt;li&gt;C&#x27;est terminé, votre serveur est ajouté.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Avant de recevoir des requêtes, un processus de validation est lancé. Ce processus, géré par le projet NTP Pool, permet de valider que votre serveur ne glisse pas dans le temps et est suffisamment disponible. Un score sera affecté à votre serveur. Quand il aura atteint 10 il sera ajouté au pool. Si votre serveur est stable, il pourra monter jusqu&#x27;à 20. Vous pouvez consulter ce score et le détails de de la variation du temps de votre serveur sur sa page de gestion de votre serveur.&lt;/p&gt;

&lt;h2&gt;La fin&lt;/h2&gt;

&lt;p&gt;Une fois toutes ces étapes suivies, votre serveur sera joignable via pool.ntp.org. Il recevra de façon aléatoire des requêtes NTP tant que son score restera au-dessus de 10.&lt;/p&gt;

&lt;p&gt;Je ne l&#x27;ai pas précisé, mais vous pouvez bien sûr vous-même utiliser le service en configurant le serveur de temps de votre PC. Renseignez simplement l&#x27;url pool.ntp.org et votre ordinateur se mettra automatiquement à jour via les serveurs du projet !&lt;/p&gt;

&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img style=&quot;text-align: center;&quot; src=&quot;/files/999_a5e00132373a7031000fd987a3c9f87b.jpg&quot; alt=&quot;Capture d&#x27;écran des statistiques de score de mon serveur NTP sur ntppool.org&quot;&gt;&lt;p&gt;&lt;small&gt;Capture d&#x27;écran des statistiques de score de mon serveur NTP sur ntppool.org&lt;/small&gt;&lt;/p&gt;

&lt;/div&gt;

</description>
    <pubDate>Mon, 15 Jul 2024 08:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/heberger-serveur-pool-ntp</guid>
</item>
<item>
    <title>Mon abandon progressif des monopoles</title>
    <link>https://blog.arnaudouvrier.fr/abandon-progressif-monopoles</link>
    <description>


&lt;p&gt;Plus le temps passait et plus je me trouvais aspiré par mon téléphone. Je rentrais du travail et je ne trouvais pas grand-chose d&#x27;autre à faire que d&#x27;aller sur mon téléphone. Les distractions y sont nombreuses, mais les sources de ces distractions le sont moins. La majorité de ces distractions sont fournies par les fameux GAFAM (Google Amazon Facebook Apple Microsoft), ce qui en font des monopoles ou tout du moins des oligopoles.&lt;/p&gt;

&lt;p&gt;Dans une optique de retrouver du temps pour moi (et diminuer mon temps d&#x27;écran hors travail), de réduire mon impact écologique et de réduire l&#x27;influence des GAFAM sur ma vie, j&#x27;ai décidé de me détacher de ces distractions le plus possible. Voici un état des lieux de cette transition.&lt;/p&gt;

&lt;h2&gt;Réseaux sociaux&lt;/h2&gt;

&lt;p&gt;Je n&#x27;ai jamais partagé beaucoup de contenu sur les réseaux sociaux. Par contre, j&#x27;étais très consommateur du contenu des autres. C&#x27;est aussi la catégorie d&#x27;applications où j&#x27;ai le mieux réussi à réduire l&#x27;utilisation. Après y avoir passé la majorité de mon temps d&#x27;écran par jour, je dois maintenant y passer moins d&#x27;une heure par mois.&lt;/p&gt;

&lt;p&gt;Les réseaux sociaux que j&#x27;utilise/utilisais sont les suivants :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Facebook : compte désactivé (pas possible de le supprimer si je souhaite continuer à utiliser Messenger, voir plus loin).&lt;/li&gt;
&lt;li&gt;Instagram : application supprimée, mais j&#x27;ai conservé mon compte. Je ne me suis pas résigné à le supprimer pour l&#x27;instant.&lt;/li&gt;
&lt;li&gt;Twitter : cela fait des années que je ne l&#x27;utilise plus. J&#x27;y passais beaucoup de temps pour lire des contenus peu qualitatifs et qui sortaient peu de ma bulle de réflexion. J&#x27;ai créé un compte &lt;a href=&quot;https://joinmastodon.org/fr&quot; target=&quot;_blank&quot;&gt;Mastodon&lt;/a&gt;, mais je ne l&#x27;utilise pas non plus.&lt;/li&gt;
&lt;li&gt;LinkedIn : le réseau social qui me donne des boutons. Malheureusement, il est utile pour avoir de la visibilité dans mon secteur de travail. Je mets seulement mon CV à jour de temps en temps, mais ne m&#x27;y connecte jamais. Je n&#x27;utilise pas non plus l&#x27;application mobile.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Communication&lt;/h2&gt;

&lt;p&gt;La communication est une catégorie un peu compliquée. Je ne souhaite pas me couper de mes amis et ma famille. La réduction de son impact consiste majoritairement à laisser mon téléphone en &quot;Ne pas déranger&quot; 24 heures sur 24 : ce n&#x27;est plus mon téléphone qui me dicte quand je dois le regarder.&lt;/p&gt;

&lt;p&gt;Les applications que j&#x27;utilise sont les suivantes :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Messenger&lt;/li&gt;
&lt;li&gt;WhatsApp&lt;/li&gt;
&lt;li&gt;Snapchat*&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Les alternatives que je tends à préférer quand je peux sont &lt;a href=&quot;https://signal.org/fr/&quot; target=&quot;_blank&quot;&gt;Signal&lt;/a&gt;&amp;nbsp;et le &lt;a href=&quot;https://fr.wikipedia.org/wiki/Short_Message_Service&quot; target=&quot;_blank&quot;&gt;SMS&lt;/a&gt;, tout simplement. Malheureusement, la plupart des gens avec qui je communique n&#x27;utilisent pas Signal et ont oublié l&#x27;existence du SMS. C&#x27;est pourtant pratique le SMS, même quand il n&#x27;y a que très peu de réseau et que la 4G (ou 5G) n&#x27;est pas disponible, l&#x27;envoi et la réception fonctionnent parfaitement !&lt;/p&gt;

&lt;p&gt;*&lt;small&gt;J&#x27;ai inclus Snapchat dans cette catégorie et non pas dans les réseaux sociaux, car j&#x27;utilise uniquement sa fonctionnalité de chat, textuel ou visuel.&lt;/small&gt;&lt;/p&gt;

&lt;h2&gt;Divertissement&lt;/h2&gt;

&lt;p&gt;Je n&#x27;utilise pas la télévision. Je n&#x27;ai même pas réinstaller mon antenne suite aux travaux que j&#x27;ai fait chez moi. Maintenant, même les émissions &quot;calmes&quot; sur les chaînes classiques me paraissent trop agressives et les publicités, presque de la torture. Malgré ça mon cerveau a toujours besoin de son shoot de divertissement.&lt;/p&gt;

&lt;p&gt;Voici mes principales sources de divertissement numérique :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Netflix : j&#x27;utilise peu et partage mon compte avec ma famille. En alternative j&#x27;utilise un serveur Plex.&lt;/li&gt;
&lt;li&gt;YouTube : ma source principale de temps d&#x27;écran. Je regarde principalement des chaînes sur la réparation d&#x27;équipements informatiques vintage et sur la mécanique automobile. J&#x27;ai limité au maximum le nombre de chaînes que je suis en supprimant toute celles qui faisaient passer le divertissement avant le contenu. Sinon parfois je me retrouve à regarder des documentaires Arte (la télé nous suis partout...). Il faudrait que je tente de passer à &lt;a href=&quot;https://joinpeertube.org/fr_FR&quot; target=&quot;_blank&quot;&gt;PeerTube&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Spotify : fini l&#x27;époque où j&#x27;emmenais mon iPod partout. Spotify est ma principale source de musique et de podcast. Grâce à cette application, j&#x27;ai découvert pas mal de groupes. J&#x27;aurais du mal à m&#x27;en défaire honnêtement…&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Depuis toujours je pirate du contenu, sachant très bien que ce sont les diffuseurs qui prennent la grosse majorité des revenus sur les contenus qu&#x27;ils rendent disponible &quot;légalement&quot; et donc que j&#x27;impacte peu la rémunération des créateurs. La meilleure manière pour rémunérer efficacement un artiste, c&#x27;est de le payer directement. C&#x27;est pourquoi, pour rémunérer les artistes et vidéastes, je passe par Patreon ou en achetant du merch, via internet ou en concert pour les musiciens (quand j&#x27;ai la possibilité de pouvoir les voir en concert). J&#x27;aide aussi certains projets que je trouve intéressants.&lt;/p&gt;

&lt;h2&gt;Bureautique et informatique&lt;/h2&gt;

&lt;p&gt;Là où sont aussi très présents les GAFAM, ce sont les sur tous les outils de bureautique et d&#x27;informatique. Leurs offres sont alléchante et leur prix paraissent attractifs. La question est surtout : voulons-nous donner aveuglement toutes nos données à d&#x27;autres ? Surtout que nous n&#x27;avons aucun moyen de vérifier ce qu&#x27;ils en font derrière. L&#x27;utilisation de ces outils nous enferme aussi dans des écosystèmes techniques restraints et qui nous poussent toujours plus à consommer chez ces mêmes GAFAM...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Windows : l&#x27;alternative est simple : &lt;a href=&quot;https://fr.wikipedia.org/wiki/Linux&quot; target=&quot;_blank&quot;&gt;Linux&lt;/a&gt;. Depuis toujours j&#x27;ai utilisé Linux, mais ces dernières années je me suis retrouvé de plus en plus à démarrer mon PC sous Windows. Je me suis repris et j&#x27;ai réinstaller &lt;a href=&quot;https://www.debian.org/index.fr.html&quot; target=&quot;_blank&quot;&gt;Debian&lt;/a&gt;&amp;nbsp;sur tous mes PC. Je garde seulement un dualboot Windows pour pouvoir jouer à mes jeux vidéo.&lt;/li&gt;
&lt;li&gt;Microsoft Office 365 : à la place j&#x27;utilise la suite &lt;a href=&quot;https://fr.libreoffice.org/&quot; target=&quot;_blank&quot;&gt;LibreOffice&lt;/a&gt;. À quoi bon payer des outils qui offrent beaucoup de fonctionnalités, mais qui ont que très peu d&#x27;utilité ? LibreOffice fait très bien le travail de Microsoft Office sans avoir à payer d&#x27;abonnement.&lt;/li&gt;
&lt;li&gt;Google Drive et Google Photos : ma solution n&#x27;est pas l&#x27;alternative la plus simple, mais a le mérite de fonctionner. J&#x27;ai récupéré un vieux serveur qui a une dizaine d&#x27;années. Dessus, je fais tourner une instance &lt;a href=&quot;https://nextcloud.com/fr/&quot; target=&quot;_blank&quot;&gt;Nextcloud&lt;/a&gt;&amp;nbsp;et utilise &lt;a href=&quot;https://memories.gallery/&quot; target=&quot;_blank&quot;&gt;Memories&lt;/a&gt; pour la gestion de mes photos. Je retrouve les mêmes fonctionnalités, mais cette fois le cloud n&#x27;est pas sur le PC de quelqu&#x27;un d&#x27;autre. J&#x27;ai aussi fais le nettoyage dans mes photos. Google Photos permet d&#x27;héberger sans limite ses photos, au fil du temps je m&#x27;étais retrouvé avec 17&amp;nbsp;000 photos. J&#x27;en ai plus que 4&amp;nbsp;000 après tri. J&#x27;évite aussi de prendre des photos avec mon téléphone : les souvenirs sont mieux dans la tête.&lt;/li&gt;
&lt;li&gt;GitHub : pour l&#x27;instant je n&#x27;ai pas d&#x27;alternative. Je suis pour l&#x27;opensource (en licence totalement libre...) et publier son code sur une plateforme appartenant à Microsoft n&#x27;est pas forcément le plus logique. Je ne publie pas beaucoup de code, mais j&#x27;aimerais l&#x27;héberger ailleurs. Je viens de découvrir&amp;nbsp;&lt;a href=&quot;https://radicle.xyz/&quot; target=&quot;_blank&quot;&gt;Radicle&lt;/a&gt;, une plateforme décentralisée de gestion de code. Il va falloir que j&#x27;essaie.&lt;/li&gt;
&lt;li&gt;Amazon : ok c&#x27;est du shopping, mais je ne savais pas trop où le mettre. Je n&#x27;utilise pas leur hébergement Cloud ni leur plateforme de streaming. Mon alternative est simple : est-ce que j&#x27;ai vraiment besoin de ce que j&#x27;achète sur Amazon ? Non. J&#x27;avais quand même un abonnement Amazon Prime…&lt;/li&gt;
&lt;li&gt;DNS : jusqu&#x27;à présent j&#x27;utilisais 1.1.1.1 de CloudFare. Ça n&#x27;est peut-être pas un GAFAM, mais avec les DNS Google ils ont un quasi-monopole sur le traitement de ces requêtes. Je suis passé à &lt;a href=&quot;https://dns0.eu/&quot; target=&quot;_blank&quot;&gt;DNS0 &lt;/a&gt;en upstream sur mon &lt;a href=&quot;https://pi-hole.net/&quot; target=&quot;_blank&quot;&gt;Pi-hole&lt;/a&gt;. C&#x27;est une infrastructure DNS hébergée en Europe et gérée par une association à but non lucratif française (version sans filtrage :&amp;nbsp;&lt;a href=&quot;https://www.dns0.eu/fr/open&quot;&gt;open.dns0.eu&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C&#x27;est la partie la plus technique et peut-être la plus compliquée pour se débarrasser des monopoles, surtout quand on n&#x27;est pas très expérimenté en informatique. Les GAFAM utilisent justement la simplicité d&#x27;utilisation pour attirer toujours plus de consommateurs.&lt;/p&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;J&#x27;ai encore beaucoup de travail à faire pour me couper complètement des monopoles. Les effets de mon travail sont jusque là visibles : j&#x27;ai retrouvé du temps. Le simple fait que j&#x27;écrive cet article le montre. Je ne l&#x27;aurais surement pas écrit si j&#x27;étais absorbé par une vidéo YouTube ou sur Instagram.&lt;/p&gt;

&lt;p&gt;Je m&#x27;efforce à réduire mon temps d&#x27;écran (hors travail bien entendu…). Dans l&#x27;idéal, j&#x27;aimerais rester en dessous des deux heures par jour. Aujourd&#x27;hui c&#x27;est un peu compliqué même si la part d&#x27;utilisation des applications citées ci-dessus est de plus en plus minime.&lt;/p&gt;

&lt;p&gt;L&#x27;impact écologique est quant à lui mitigé : ne plus dépendre de plateformes payantes à un effet au niveau de ma consommation en général, mais héberger ses données soi-même contrebalance peut-être cet effet. Un serveur consommant 200&amp;nbsp;W en moyenne consomme-t-il plus que ses alternatives (par utilisateur) chez les GAFAM ? Je ne saurais pas le quantifier.&lt;/p&gt;

&lt;p&gt;En tout cas je vais continuer mes efforts. Peut-être qu&#x27;un jour je ferais une suite à cet article, si ma progression est visible.&lt;/p&gt;



</description>
    <pubDate>Mon, 01 Jul 2024 08:00:00 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/abandon-progressif-monopoles</guid>
</item>
<item>
    <title>Une nouvelle peau pour ce blog</title>
    <link>https://blog.arnaudouvrier.fr/nouvelle-peau-blog</link>
    <description>
&lt;p&gt;Bon, la dernière refonte de mon blog date d&#x27;il y a quatre ans. Je l&#x27;avais sûrement faite pour faire passer le temps, pendant le premier confinement de la pandémie de COVID-19. Depuis, je n&#x27;ai écrit que deux articles : un pour annoncer cette refonte et un deuxième pour expliquer qu&#x27;il était dur d&#x27;avoir le temps d&#x27;écrire. Dans le premier article, je me plaignais déjà de ne pas avoir beaucoup écrit depuis la refonte de mon ancien blog…&lt;/p&gt;&lt;p&gt;Cette fois-ci c&#x27;est un peu différent. La refonte n&#x27;a pas vocation à me motiver d&#x27;écrire des articles. Elle est plus technique que visuelle. La nouvelle version du blog reflète mieux mon état d&#x27;esprit. Comme je disais dans &lt;a href=&quot;/premier-article&quot;&gt;le premier article&lt;/a&gt;, cela fait depuis environ 2006 que je tiens des blogs. En 18 ans j&#x27;ai eu le temps de changer, le web aussi.&lt;br&gt;&lt;/p&gt;&lt;p&gt;D&#x27;abord, j&#x27;ai réduit mes ambitions : je n&#x27;écris plus pour être lu. Quand j&#x27;ai commencé à écrire des tutoriels divers, c&#x27;était pour partager mes connaissances. Je voulais aider les autres qui rencontreraient les mêmes problèmes que moi. Je cherchais aussi un peu de reconnaissance. Maintenant j&#x27;écris sans vraiment avoir de raisons, simplement parce que j&#x27;aime bien ça. D&#x27;ailleurs, il y a de grandes chances que personne d&#x27;autre que moi lise ces lignes.&lt;/p&gt;&lt;p&gt;Vient ensuite une raison plus technique : mon blog faisait appel à plusieurs éléments externes pour fonctionner et ce n&#x27;est plus quelque chose que je souhaite. La raison est simple : je ne veux plus que mes visiteurs ou moi-même soient traqués sur internet. Le blog faisait appel à des CDN (Content Delivery Networks, réseau de mise à disposition de contenus) pour la mise en page et les polices. Les CDN, bien que pratiques, profitent souvent de fournir de contenus aux navigateurs des visiteurs pour pister ces visiteurs là où ils vont sur internet. En plus de ça, j&#x27;avais mis en place un suivi statistique de mes visiteurs via Google Analytics. Je participais donc activement au suivi.&lt;/p&gt;&lt;p&gt;Une troisième raison est la simplification du site. Les sites internet deviennent de plus en plus compliqués. Les quantités de données à transférer pour simplement afficher une page de texte sont la plupart du temps irrationnelles. Aujourd&#x27;hui il n&#x27;est quasiment plus possible de naviguer sur le web en connexion 2G, tant les pages sont lourdes et prennent du temps à charger. Ce nouveau thème est très minimaliste : pas de Javascript, pas de fichier CSS, pas d&#x27;images superflues. Le CSS fait uniquement une cinquantaine de lignes en début de fichier HTML. En théorie tous les systèmes (PC et mobiles) des 10 dernières années peuvent charger ce site sans trop de difficulté.&lt;/p&gt;&lt;p&gt;Je ne vous cache pas que toutes ces raisons ne sont pas entièrement venues de moi-même. Cela fait quelques années déjà que je lis &lt;a href=&quot;https://ploum.net/&quot; target=&quot;_blank&quot;&gt;Ploum &lt;/a&gt;et ce sont des sujets qui le préoccupent aussi. Le thème de ce blog est aussi en partie inspiré du sien. Si vous voulez mieux comprendre les raisons qui me poussent à simplifier mon site à ce point, vous pouvez lire cet article de Ploum qui décrit le problème de complexification du web : &quot;&lt;a href=&quot;https://ploum.net/2024-03-29-lectures-bouffitude-web-norme-sociale.html&quot; target=&quot;_blank&quot;&gt;Lectures : de la bouffitude du Web et de l&#x27;absurde quête d&#x27;une norme sociale&lt;/a&gt;&quot;. N&#x27;hésitez pas à parcourir son blog et ses livres, sa vision du monde numérique moderne est très intéressante !&lt;/p&gt;&lt;p&gt;Voilà pour la petite explication sur la refonte de mon blog. Si vous m&#x27;avez lu, merci et peut-être à bientôt si vous décidez de revenir. Si d&#x27;ici là j&#x27;écris du nouveau contenu…&lt;/p&gt;

</description>
    <pubDate>Tue, 25 Jun 2024 19:32:36 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/nouvelle-peau-blog</guid>
</item>
<item>
    <title>Ce n'est pas si simple d'avoir le temps d'écrire...</title>
    <link>https://blog.arnaudouvrier.fr/pas-si-simple-avoir-temps-ecrire</link>
    <description>
&lt;p&gt;Le 13 février 2020 j&#x27;écrivais que je souhaitais me remettre à l&#x27;écriture d&#x27;un blog. Nous voilà près de trois mois
    plus tard et je n&#x27;ai toujours rien publié. Ce n&#x27;est pas faute d&#x27;avoir essayé, j&#x27;ai commencé l&#x27;écriture d&#x27;un tutoriel
    pour débriquer une PSP 2000. Ce tutoriel me tiens à cœur, il peut être utile à plus d&#x27;une personne qui comme moi
    voudrait restaurer une PSP, mais qui ne trouve plus les resources qui étaient pourtant si simples à trouver il y a
    10 ans... Mais je n&#x27;ai pas eu le temps.&lt;/p&gt;
&lt;p&gt;Le temps n&#x27;est pas aussi facile à trouver qu&#x27;on le croit. Depuis le 13 février 2020, j&#x27;ai commencé un nouveau
    travail. Je suis maintenant administrateur réseau au support d&#x27;un opérateur internet. Bien que dans le domaine où
    j&#x27;ai fait mes études, après 3 ans de développement web, ça me prend pas mal de ressources de me remettre dans le
    bain. Puis la pandémie de Covid 19 est arrivée en Europe en mars. Pour beaucoup de gens, ça veut dire chômage
    partiel. Mais dans un monde où internet est un service presque aussi important que l&#x27;électricité, ça veut dire pour
    moi toujours autant de travail. Certes c&#x27;est du télétravail, mais ça ne veut pas pour autant dire que j&#x27;ai plus de
    temps pour écrire.&lt;/p&gt;
&lt;p&gt;Je ne m&#x27;en plains pas bien entendu. Je touche mon salaire normal et je préfère largement être occupé par mon travail
    que de vivre dans l&#x27;inquiétude de ne pas pouvoir trouver de travail. Par contre, dans notre monde actuel ne pas
    avoir de temps est presque synonyme d&#x27;être flemmard. Ce qui compte aujourd&#x27;hui c&#x27;est de montrer sur les réseaux
    sociaux que l&#x27;on fait beaucoup de choses. Encore plus maintenant que nous sommes tous enfermés à la maison. Il n&#x27;y
    qu&#x27;à voir le nombre de gens qui se sont mis à faire du pain pendant le confinement... Heureusement que personne
    n&#x27;est derrière pour vérifier la qualité de leurs productions par contre, car quantité n&#x27;est pas toujours synonyme de
    qualité.&lt;/p&gt;
&lt;p&gt;Enfin voilà, je profite d&#x27;avoir un peu de temps et de ressources mentales en ce dimanche 3 mai 2020 pour expliquer
    que je n&#x27;ai pas de temps. Cet article, après relecture(s) et corrections, ne me prendra sûrement pas plus d&#x27;une
    heure à publier (si je le publie, mais si vous le lisez c&#x27;est que je m&#x27;y suis décidé…). Un tutoriel basique, comme
    celui publié en décembre 2012 sur Arnakazim.com expliquant&lt;a
        href=&quot;/creer-interface-controler-arduino-depuis-pc/&quot; target=&quot;_blank&quot;&gt; comment créer une
        interface pour contrôler son Arduino depuis son PC&lt;/a&gt;&amp;nbsp;(et qui est toujours mon article le plus lu depuis),
    prendra quant à lui au minimum 7 heures, si je n&#x27;ai pas trop de recherches à faire avant et que les explications
    n&#x27;ont pas à être trop développées. 7 heures, à ajouter aux heures de travail, transport et tâches ménagères que je
    dois faire tous les jours…&lt;/p&gt;
&lt;p&gt;Je ne sais pas si c&#x27;est triste ou non de ressentir le besoin d&#x27;expliquer pourquoi je n&#x27;ai pas de temps. Beaucoup de
    monde se demandent comment ça se fait que les autres n&#x27;ont pas de temps. Moi au contraire, je me demande ce que les
    autres (ne) font (pas) pour avoir autant de temps. Temps qu&#x27;ils passeront à essayer de se valoriser sur les réseaux
    sociaux. Je suis sûrement différent de ces gens (en bien ou en mal, je ne saurais juger). Dans ce monde où tout va à
    une vitesse incontrôlable, j&#x27;ai un peu l&#x27;impression d&#x27;être une vache qui regarde passer un TGV 🐮. Y a-t-il une
    recette miracle pour me débloquer du temps et pouvoir écrire comme j&#x27;en aurai envie ?&lt;/p&gt;
&lt;p&gt;Il est 15 h 23, j&#x27;ai commencé l&#x27;écriture de cet article il y a 35 minutes. Il est temps de commencer la relecture
    puis les corrections, que je terminerai à 15 h 42, soit environ 55 minutes après avoir commencé l&#x27;écriture. Je ne
    pense pas qu&#x27;il soit de qualité suffisante pour en écrire plus comme celui-là…&lt;/p&gt;
&lt;p&gt;15 h 46, je publie. ⌚&lt;/p&gt;</description>
    <pubDate>Sun, 03 May 2020 14:49:04 -0000</pubDate>
    <guid>https://blog.arnaudouvrier.fr/pas-si-simple-avoir-temps-ecrire</guid>
</item>

    </channel>
</rss>