<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Mon arbre</title><link href="https://blog.simonlefort.be/" rel="alternate"></link><link href="https://blog.simonlefort.be/feeds/all.atom.xml" rel="self"></link><id>https://blog.simonlefort.be/</id><updated>2026-01-11T00:00:00+01:00</updated><entry><title>Calibre et l'IA</title><link href="https://blog.simonlefort.be/clbre.html" rel="alternate"></link><published>2026-01-11T00:00:00+01:00</published><updated>2026-01-11T00:00:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2026-01-11:/clbre.html</id><summary type="html">&lt;p&gt;Il y a quelques jours, j'ai découvert via &lt;a href="https://beige.party/@book/115674252870870299"&gt;un pouet&lt;/a&gt; que le logiciel &lt;a href="https://calibre-ebook.com/fr"&gt;Calibre&lt;/a&gt;, un logiciel de gestion de livres électroniques, intégre depuis la version 8.16.2 du 4 décembre 2025 des nouvelles fonctionnalités liées à l'intelligence artificielle.&lt;/p&gt;
&lt;p&gt;&lt;img alt="extrait des nouveautés de la version 8.16.2" src="../images/calibre/calibre.png" title="Extrait des nouveautés de la version 8.16.2 de Calibre"&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Nouvelles fonctionnalités&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Allow asking AI questions about any book in your …&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;</summary><content type="html">&lt;p&gt;Il y a quelques jours, j'ai découvert via &lt;a href="https://beige.party/@book/115674252870870299"&gt;un pouet&lt;/a&gt; que le logiciel &lt;a href="https://calibre-ebook.com/fr"&gt;Calibre&lt;/a&gt;, un logiciel de gestion de livres électroniques, intégre depuis la version 8.16.2 du 4 décembre 2025 des nouvelles fonctionnalités liées à l'intelligence artificielle.&lt;/p&gt;
&lt;p&gt;&lt;img alt="extrait des nouveautés de la version 8.16.2" src="../images/calibre/calibre.png" title="Extrait des nouveautés de la version 8.16.2 de Calibre"&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Nouvelles fonctionnalités&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Allow asking AI questions about any book in your calibre library. Right click the "View" button and choose "Discuss selected book(s) with AI"&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AI: Allow asking AI what book to read next by right clicking on a book and using the "Similar books" menu&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AI: Add a new backend for "LM Studio" which allows running various AI models locally&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Évidemment, il y a déjà un &lt;a href="https://github.com/grimthorpe/clbre"&gt;fork appelé clbre&lt;/a&gt; (puisque sans AI... les développeurs ont de l'humour). Et évidemment, ça m'a &lt;a href="https://framapiaf.org/@Artanux/115859607761446881"&gt;fait râler&lt;/a&gt;. Sous mon message, deux personnes m'ont demandé d'expliquer pourquoi ça me fait ronchonner. Et ces explications là, elles rentrent pas dans un message de 500 caractères. Donc j'ai promis de répondre dans un article de blog et nous y voilà.&lt;/p&gt;
&lt;p&gt;Pour commencer concrètement, je voudrais revenir sur le tableau général de l'IA, ce que ça implique déjà &lt;strong&gt;aujourd'hui&lt;/strong&gt; et ce que ça va impliquer &lt;strong&gt;demain&lt;/strong&gt;. Enfin, forts de ces constats, il sera toujours temps de se demander s'il est pertinent (ou pas) d'intégrer des fonctionnalités de ce type dans un logiciel existant qui fonctionne et fait ce qu'on lui demande.&lt;/p&gt;
&lt;p&gt;C'est parti? C'est parti! Je vous fait grâce de vous expliquer qu'une partie de l'humanité est en train de modifier de manière irréversible le climat et les écosystèmes et qu'on a dépassé depuis longtemps la plupart des &lt;a href="https://fr.wikipedia.org/wiki/Limites_plan%C3%A9taires"&gt;limites planétaires&lt;/a&gt;, ces seuils qui permettent d'avoir des conditions de vie favorables pour l'humanité et le reste du monde vivant... Vous le savez de toute façon, non? Hein, vous le savez?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://fr.wikipedia.org/wiki/Limites_plan%C3%A9taires"&gt;&lt;img alt="Les limites planétaires déjà dépassées" src="../images/calibre/limites.png" title="Les limites planétaires déjà dépassées..."&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dans ce contexte, il serait logique qu'on réfléchisse à l'organisation du monde, qu'on regarde comment on peut assurer un niveau de vie décent à tous les citoyens du monde. Apparemment, &lt;a href="https://www.sciencedirect.com/science/article/pii/S2452292924000493?via%3Dihub"&gt;il faudrait ~30% des ressources et énergie utilisées annuellement pour y parvenir&lt;/a&gt;. Mais ce n'est pas vraiment le chemin que l'humanité semble prendre... Étonnant, pas vrai ? (Ça s'explique... Coucou le capitalisme. Mais ça mériterait un autre article.)&lt;/p&gt;
&lt;p&gt;Ce qu'il se passe, c'est que l'arrivée de &lt;a href="https://fr.wikipedia.org/wiki/ChatGPT"&gt;ChatGPT par OpenAI&lt;/a&gt; il y a un peu plus de trois ans a démarré une nouvelle course à la puissance de calcul et au gigantisme des datacenters. Un article du monde explique en détail «&lt;a href="https://www.lemonde.fr/economie/article/2025/12/26/comment-l-ia-devore-la-planete_6659449_3234.html"&gt;Comment l'IA dévore la planète&lt;/a&gt;». Je suis pas très motivé pour vous résumer l'article, vous irez le lire si ça vous intéresse. Mais pour faire bref : C'est la merde.&lt;/p&gt;
&lt;p&gt;Qu'on parle de la consommation de métaux issus des terres rares, de l'augmentation de la consommation d'eau et d'énergie pour la fabrications des cartes graphiques et autres composants, de l'artificialisation des sols, de la consommation d'énergie pour faire tourner les centres de données... Tout est énorme. D'après le monde, la consommation d'énergie des datacenters pourrait &lt;strong&gt;tripler d'ici à 2030&lt;/strong&gt;. (Oui oui, tout ça pendant qu'on responsabilise les individus et qu'on vous promeut sans gène les «petits pas» pour faire de l'écologie...) En Belgique, &lt;a href="https://www.rtbf.be/article/data-centers-la-belgique-au-bord-de-la-surchauffe-11613432"&gt;le gestionnaire du réseau électrique s'attend à ce que la consommation d'électricité des datacenters quintuple d'ici 2030&lt;/a&gt;.&lt;sup id="fnref:1"&gt;&lt;a class="footnote-ref" href="#fn:1"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;Mais si on fait abstraction de l'écologie (ce qui me semble stupide mais bon, c'est pour l'exercice hein...), c'est quoi le problème de l'intelligence artificielle et plus spécifiquement des &lt;a href="https://fr.wikipedia.org/wiki/Grand_mod%C3%A8le_de_langage"&gt;LLM&lt;/a&gt; ?&lt;/p&gt;
&lt;p&gt;Aujourd'hui, il y a plusieurs critiques à faire par rapport aux LLM. En voici quelques-unes (ce n'est pas exhaustif!) :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Les LLM ne sont pas fiables. Ils &lt;a href="https://fr.wikipedia.org/wiki/Hallucination_(intelligence_artificielle)"&gt;hallucinent&lt;/a&gt;, font des erreurs, inventent des chiffres, ... Il y a &lt;a href="https://fr.wikipedia.org/wiki/Hallucination_(intelligence_artificielle)#Exemples"&gt;des exemples sur Wikipédia&lt;/a&gt; mais on en trouve partout.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Les LLM sont déjà utilisés pour désinformer. Le web est déjà innondés d'articles générés par LLM. Il suffit d'installer l'add-on «&lt;a href="https://addons.mozilla.org/fr/firefox/addon/alerte-sur-les-sites-genai/"&gt;Alerte sur les sites GenAI&lt;/a&gt;» de Sébastien Gavois et géré par &lt;a href="https://next.ink/"&gt;Next.ink&lt;/a&gt;. Ça peut paraitre anecdotique à côté de reste, mais ça rend la recherche d'informations vraiment plus compliquée et ça fait disparaitre les vraies informations sous des milliers de sites inutiles. L'Europe travaille là dessus et propose des &lt;a href="https://digital-strategy.ec.europa.eu/fr/policies/code-practice-ai-generated-content"&gt;bonnes pratiques pour le marquage et l'étiquetage des contenus générés par l'IA&lt;/a&gt; et indique que ces règles de transparence deviendront applicables dès le 2 août 2026. J'ai bien peur que ça ne suffise pas à endiguer le torrent de contenus (texte, images, vidéos) qui est déjà en train de nous submerger mais c'est mieux que rien, j'imagine. Dans &lt;a href="https://next.ink/169327/edito-genai-arme-de-desinformation-massive/"&gt;un édito de février 2025 sur Next.ink&lt;/a&gt;, l'auteur expliquait comment ils ont découvert plus de 1000 sites et il écrivait: «&lt;strong&gt;Le problème, c'est que ces contenus générés par IA ne s'embarrassent souvent ni de véracité, ni de légalité.&lt;/strong&gt;». Aujourd'hui, près de 10 000 sites ont été découverts. (TV5 Monde a d'ailleurs fait un &lt;a href="https://information.tv5monde.com/international/video/vrai-dire-alerte-aux-faux-sites-dinformation-2804737"&gt;reportage à ce sujet&lt;/a&gt;.)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;L'utilisation des LLM augmente les ressources utilisées par les terminaux. J'ai trouvé &lt;a href="https://greenspector.com/quel-impact-environnemental-de-lusage-des-llm-cote-client-battle-chatgpt-vs-deepseek/"&gt;un article qui compare ChatGPT et DeepSeek&lt;/a&gt;. Augmentation de la consommation d'énergie (donc la batterie se vide), augmentation du trafic réseau, augmentation de la charge CPU... Je n'ai pas encore trouvé de chiffres dans le cas où c'est un LLM qui tourne directement sur la machine mais j'ai du mal à penser que ça va améliorer quoi que ce soit (à part éventuellemet la vie privée, peut-être?). Le problème? Ça va contribuer à rendre obsolète plein de terminaux fonctionnels alors que l'impact carbone du numérique provient pour une grande partie de la fabrication des terminaux. &lt;a href="https://www.strategie-plan.gouv.fr/le-defi-de-lallongement-de-la-duree-de-vie-des-terminaux-numeriques"&gt;«(...) l'allongement de la durée de vie de nos terminaux constitue un véritable défi.»&lt;/a&gt;, qu'on nous dit.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;L'entrainement d'un LLM, ça a &lt;a href="https://fr.wikipedia.org/wiki/Grand_mod%C3%A8le_de_langage#Co%C3%BBt"&gt;un coût important&lt;/a&gt; (en puissance de calcul, en énergie dépensées, coût économique, etc.) Et même si le LLM est ensuite utilisé en local, ça n'empêche pas qu'il a du être entrainé au départ.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.lesoir.be/639696/article/2024-12-02/comment-les-ia-pillent-nos-donnees"&gt;Les IA pillent nos données&lt;/a&gt;. Lors de l'entrainement d'un LLM, on utilise un &lt;em&gt;corpus&lt;/em&gt; énorme de données. &lt;a href="https://fr.wikipedia.org/wiki/Grand_mod%C3%A8le_de_langage#Taille_de_l'ensemble_de_donn%C3%A9es"&gt;Certains modèles sont déjà entrainés avec des billions de jetons&lt;/a&gt;.&lt;sup id="fnref:2"&gt;&lt;a class="footnote-ref" href="#fn:2"&gt;2&lt;/a&gt;&lt;/sup&gt; Et... Elles viennent d'où ces données? Et bien les entreprises qui entrainent des IA ne sont pas très bavardes à ce sujet mais on sait qu'ils récoltent tout ce qu'ils peuvent. Sites d'informations, blogs personnels, réseaux sociaux, &lt;a href="https://www.lesnumeriques.com/intelligence-artificielle/meta-a-utilise-des-livres-pirates-pour-entrainer-son-ia-et-des-mails-le-prouvent-n232926.html"&gt;livres téléchargés illégalement sur Z-Library et LibGen&lt;/a&gt; et même &lt;a href="https://www.slate.fr/tech-internet/meta-telecharge-illegalement-porno-entrainer-ia-inteligence-artificielle-plainte"&gt;des films pornographiques&lt;/a&gt; d'après certaines sources... Tout ça pour que &lt;a href="https://www.lemonde.fr/pixels/article/2026/01/02/enleve-lui-ses-vetements-l-intelligence-artificielle-grok-detournee-pour-denuder-des-femmes-et-des-mineurs-sur-x_6660363_4408996.html"&gt;Grok puisse déshabiller n'importe qui à partir d'une photo&lt;/a&gt;? Ce qui est sûr, c'est que l'IA se nourrit du travail de millions de créateurs dans le monde, sans l'approbation des créateurs. &lt;a href="https://www.rtbf.be/article/pourquoi-ne-faudrait-il-pas-partager-les-images-generees-par-ia-d-apres-le-style-ghibli-11527731"&gt;Miyazaki est un bon exemple&lt;/a&gt;. Oh, j'oubliais... Ils collectent aussi les &lt;a href="https://www.passeportsante.net/magazine/sante?doc=chatgpt-sante-rejouir-inquieter-nouvelle-ia-donnees-medicales"&gt;données de santé&lt;/a&gt;.🤦 Hasard du calendrier, on commémore aujourd'hui le décès d'&lt;a href="https://fr.wikipedia.org/wiki/Aaron_Swartz"&gt;Aaron Swartz&lt;/a&gt; qui s'est suicidé un mois avant un procès où on lui repprochait d'avoir téléchargé 4,8 millions d'articles scientifiques dans le but de les rendre publiques gratuitement. Il était menacé de 35 ans de prison.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;À cause de l'IA (et des commerciaux qui arrivent à convaincre les patrons que l'IA peut remplacer des travailleurs humains), des milliers de gens vont perdre leur emploi. D'autres vont voir leur travail se transformer en "micro-managers d'IA", pour vérifier que l'IA a fait les choses correctement. Ça promet du fun et du sens dans le travail... Et en parallèle, les dirigeants d'un peu partout dans le monde disent qu'il y a trop de gens au chômage. Mais ils applaudissent les investissements des géants du numérique qui "créent des emplois". Ah ah. Ça pourrait presque être drôle. Moi je suis pour qu'on travaille moins et qu'on partage équitablement les revenus du travail. Mais je suis prêt à parier que c'est pas ce qu'il va se passer (coucou capitalisme!).&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt="miyazaki" src="../images/calibre/miyazaki.png" title="Miyazaki s'est fait piller tout son travail par l'IA"&gt;&lt;/p&gt;
&lt;p&gt;Donc... Résumons. Les LLM, ça bousille la planète. C'est en train de rendre le web inutilisable. Ça désinforme massivement. Ça pille massivement tout ce qui a été produit par l'humanité. Et tout ça pour quels usages utiles ? Remplir des rapports chiants que personne ne lira et qui n'ont aucun intérêt ? Résumer des mails longs générés par IA pour répondre ensuite par IA ? Proposer une aide inutile et inadaptée sur les sites commerciaux ? Générer des cartes de bons vœux ? Tricher aux examens ? Innonder le web de &lt;a href="https://fr.wikipedia.org/wiki/Deepfake"&gt;Deepfakes&lt;/a&gt; pour influencer l'opinion des gens ? &lt;a href="https://fr.euronews.com/next/2024/07/04/elections-en-france-lextreme-droite-utilise-lia-pour-appuyer-ses-messages-politiques"&gt;L'extrême droite adore l'IA&lt;/a&gt;, ce n'est pas pour rien... &lt;/p&gt;
&lt;p&gt;&lt;img alt="this is fine" src="../images/calibre/this-is-fine.png" title="Tout va bien hein?"&gt;&lt;/p&gt;
&lt;p&gt;Ok, je suis énervé maintenant.&lt;/p&gt;
&lt;p&gt;Pour revenir à Calibre et conclure cet article, je voudrais proposer quelque chose. Avant d'inclure une fonctionnalité basée sur l'IA dans un logiciel, posez-vous une seule question : &lt;strong&gt;«Est-ce que ça a du sens ?»&lt;/strong&gt; Est-ce qu'on a besoin de causer de ses bouquins avec une IA ? Si vous avez besoin de parler de ce que vous lisez, rejoignez un &lt;a href="https://www.lavenir.net/culture/2024/03/19/ou-trouver-des-clubs-et-cercles-de-lecture-en-wallonie-et-a-bruxelles-notre-carte-participative-TYQSPIWSBRFATPHTI5QLI36QMI/"&gt;club de lecture&lt;/a&gt;, organisez un &lt;a href="https://fr.wikipedia.org/wiki/Arpentage_(%C3%A9ducation_populaire)"&gt;arpentage&lt;/a&gt; de &lt;a href="https://editionslesperegrines.fr/fr/books/lenvers-de-la-tech"&gt;«L'envers de la tech» de Mathilde Saliou&lt;/a&gt;, prêtez-vous des livres ou venez poueter sous le tag &lt;a href="https://piaille.fr/@1pseudodeplus/113843045345836757"&gt;#vendrediLecture&lt;/a&gt; sur le fediverse.&lt;/p&gt;
&lt;p&gt;Oh, juste un dernier détail. Je ne doute pas qu'il doit y avoir des utilisations intelligentes de l'IA dans certains domaines. Mais est-ce que ça justifie qu'on balance de l'essence sur &lt;a href="https://fr.wikipedia.org/wiki/Notre_maison_br%C3%BBle_et_nous_regardons_ailleurs"&gt;la maison qui brûle&lt;/a&gt; ?&lt;/p&gt;
&lt;p&gt;Aller plus loin : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://theshiftproject.org/app/uploads/2025/09/Synthese-RF-PIA-1.pdf"&gt;Rapport de The Shift Project : Intelligence artificielle, données, calculs : quelles infrastructures dans un monde décarboné ?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="footnote"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;Donc Elia s'attend à ce que les datacenters consomment jusqu'à 16 TWh en Belgique. Alors qu'on &lt;strong&gt;doit&lt;/strong&gt; baisser notre consommation d'énergie et la quantité de dioxyde et carbone et des autres gaz à effet de serre et alors qu'il n'y a pas longtemps on nous parlait beaucoup de délestage et d'inquiétudes par rapport à une pénurie d'électricité (voir &lt;a href="https://media.ores.be/ores-cms/ufjnvb3l/ores_penurie_guide_pratique_fr.pdf"&gt;ce rapport d'Ores&lt;/a&gt;.)&amp;#160;&lt;a class="footnote-backref" href="#fnref:1" title="Jump back to footnote 1 in the text"&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:2"&gt;
&lt;p&gt;Un "billion", en français, ça correspond à mille milliards. 10^12. 1 000 000 000 000. (En anglais, un billion ne vaut "que" mille millions.)&amp;#160;&lt;a class="footnote-backref" href="#fnref:2" title="Jump back to footnote 2 in the text"&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</content><category term="Politique, logiciel libre"></category><category term="politique"></category><category term="IA"></category><category term="AI"></category><category term="logiciel libre"></category><category term="calibre"></category></entry><entry><title>Pourquoi j'aime le Fediverse</title><link href="https://blog.simonlefort.be/j-aime-le-fediverse.html" rel="alternate"></link><published>2025-11-14T14:31:00+01:00</published><updated>2025-11-14T14:31:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2025-11-14:/j-aime-le-fediverse.html</id><summary type="html">&lt;p&gt;Je suis l'heureux propriétaire de trois livres des éditions &lt;a href="https://copiegauche.fr/"&gt;Copie Gauche&lt;/a&gt;, dans la collection «C'était mieux demain» :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/catalogue/solarpunk/"&gt;Solarpunk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/home-2/bioregions/"&gt;Biorégions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/collection-cetait-mieux-demain/greniers/"&gt;Greniers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai acquis les deux premiers en participant aux &lt;a href="https://fr.ulule.com/users/copiegauche/#/projects/online/"&gt;campagnes de financement participatif&lt;/a&gt;. Malheureusement, j'ai raté le financement participatif pour le dernier, Greniers.&lt;/p&gt;
&lt;p&gt;Et c'est là que je voulais en venir …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Je suis l'heureux propriétaire de trois livres des éditions &lt;a href="https://copiegauche.fr/"&gt;Copie Gauche&lt;/a&gt;, dans la collection «C'était mieux demain» :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/catalogue/solarpunk/"&gt;Solarpunk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/home-2/bioregions/"&gt;Biorégions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://copiegauche.fr/collection-cetait-mieux-demain/greniers/"&gt;Greniers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai acquis les deux premiers en participant aux &lt;a href="https://fr.ulule.com/users/copiegauche/#/projects/online/"&gt;campagnes de financement participatif&lt;/a&gt;. Malheureusement, j'ai raté le financement participatif pour le dernier, Greniers.&lt;/p&gt;
&lt;p&gt;Et c'est là que je voulais en venir. Quand je me suis rendu compte que j'avais raté la campagne de financement, j'ai d'abord été déçu. Et puis je me suis dis que je risquais pas grand chose à envoyer un petit message &lt;a href="https://mastodon.social/@CopieGauche"&gt;aux éditions sur le Fediverse&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Par un coup de bol incroyable, le livre n'était pas encore parti à l'impression. J'ai donc pu me rajouter en dernière minute à la campagne de financement participatif (pourtant déjà terminée sur Ulule), avoir mon nom dans le livre et recevoir le livre comme les autres. Là, je peux vous dire que j'ai kiffé mon compte mastodon.&lt;/p&gt;
&lt;p&gt;Mais l'histoire ne s'arrête pas là. Cette semaine, &lt;a href="https://framapiaf.org/@Artanux/115538114015975058"&gt;j'ai terminé la troisième nouvelle&lt;/a&gt; du livre, «Du jardin à la Forêt» de Yohan Queyla.Touché par le texte, je poste un message pour remercier l'auteur. J'ai cherché si l'auteur avait un compte sur le Fedi mais je n'ai pas trouvé.&lt;/p&gt;
&lt;p&gt;Le lendemain, j'ai un message de l'auteur qui me remercie pour le retour sur le texte et me conseille &lt;a href="https://www.uncannymagazine.com/article/the-year-without-sunshine/"&gt;une nouvelle en anglais : "The Year Without Sunshine"&lt;/a&gt; qui lui a beaucoup plu.&lt;/p&gt;
&lt;p&gt;Tous ces petits échanges agréables et bienveillants, c'est ça que je viens chercher sur internet. C'est ça que je demande à un réseau social.&lt;/p&gt;</content><category term="Numérique"></category><category term="numérique"></category><category term="fediverse"></category><category term="histoire"></category></entry><entry><title>Sainte-Soline</title><link href="https://blog.simonlefort.be/sainte-soline.html" rel="alternate"></link><published>2025-11-08T08:33:00+01:00</published><updated>2025-11-08T08:33:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2025-11-08:/sainte-soline.html</id><summary type="html">&lt;p&gt;Cette semaine, la lutte contre les méga-bassines, particulièrement celle de Sainte-Soline, revient sur le devant de la scène. Une enquête de &lt;a href="https://www.mediapart.fr/journal/france/051125/faut-leur-tirer-dans-la-gueule-la-manifestation-de-sainte-soline-vue-par-les-gendarmes"&gt;Mediapart&lt;/a&gt; et &lt;a href="https://www.liberation.fr/societe/police-justice/je-ne-compte-plus-les-mecs-quon-a-eborgnes-a-sainte-soline-revelations-en-images-sur-les-tirs-illegaux-de-grenades-par-les-gendarmes-20251105_NF232RG6SFCXNOI3SUBCKONKTQ/"&gt;Libération&lt;/a&gt; est sortie ce 5 novembre. Par un concours de circonstances, c'est aussi cette semaine que le documentaire de Vincent Verzat (Partager C'est Sympa) &lt;a href="https://www.youtube.com/watch?v=wYCzdDfjYbg"&gt;"Le VIVANT qui …&lt;/a&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;Cette semaine, la lutte contre les méga-bassines, particulièrement celle de Sainte-Soline, revient sur le devant de la scène. Une enquête de &lt;a href="https://www.mediapart.fr/journal/france/051125/faut-leur-tirer-dans-la-gueule-la-manifestation-de-sainte-soline-vue-par-les-gendarmes"&gt;Mediapart&lt;/a&gt; et &lt;a href="https://www.liberation.fr/societe/police-justice/je-ne-compte-plus-les-mecs-quon-a-eborgnes-a-sainte-soline-revelations-en-images-sur-les-tirs-illegaux-de-grenades-par-les-gendarmes-20251105_NF232RG6SFCXNOI3SUBCKONKTQ/"&gt;Libération&lt;/a&gt; est sortie ce 5 novembre. Par un concours de circonstances, c'est aussi cette semaine que le documentaire de Vincent Verzat (Partager C'est Sympa) &lt;a href="https://www.youtube.com/watch?v=wYCzdDfjYbg"&gt;"Le VIVANT qui se défend"&lt;/a&gt; sort officiellement. Dans celui-ci, il y a également des images de la répression très violente à Sainte-Soline. Dans cet article, je vais parler spécifiquement de la manifestation du 25 mars 2023.&lt;/p&gt;
&lt;p&gt;Je n'ai pas accès aux articles de Mediapart ou de Libération mais il y a plein d'autres ressources qui parlent du sujet, notamment :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=rr7xz6QPgwI"&gt;Le Média : RÉPRESSION À SAINTE-SOLINE : LES PREUVES D’UN CARNAGE D’ÉTAT&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://reporterre.net/Gendarmes-violents-a-Sainte-Soline-On-est-effares-par-la-jouissance-qu-ils-semblent"&gt;Reporterre : Gendarmes violents à Sainte-Soline : « On est effarés par la jouissance qu’ils semblent ressentir »&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.twitch.tv/videos/2611025539"&gt;Chaine Twitch d'Ostpolitik&lt;/a&gt; qui revient sur les révélations de Médiapart à partir d'1h12.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C'est &lt;strong&gt;accablant&lt;/strong&gt;. J'ai pas d'autres mots.&lt;/p&gt;
&lt;p&gt;Avec le battage médiatique avant la manifestation et la qualification des militants comme des «éco-terroristes», «le gouvernement stigmatise et criminalise un mouvement social» ce qui «légitime ainsi l’emploi de la force sur tous·tes les manifestant·e·s, blessé·e·s ou observateur·ice·s et journalistes de façon indiscriminée, avant même que des actes de violence aient été commis par certain·ne·s». (rapport LDH, p.15) &lt;/p&gt;
&lt;p&gt;D'après le &lt;a href="https://www.ldh-france.org/wp-content/uploads/2023/07/Rapport-final-10.07.23_DEF.pdf"&gt;Rapport de la LDH&lt;/a&gt;, la gendarmerie nationale a utilisé 5015 grenades lacrymogènes (&lt;a href="https://maintiendelordre.fr/grenades-lacrymogenes-fumigenes/"&gt;grenades lacrymogènes&lt;/a&gt; et un nombre important de &lt;a href="https://maintiendelordre.fr/grenade-lacrymogene-gm2l-sae-820/"&gt;grenades GM2L&lt;/a&gt; qui sont également explosives), 89 &lt;a href="https://maintiendelordre.fr/grenade-de-desencerclement-genl/"&gt;grenades de désencerclement GENL&lt;/a&gt;, &lt;a href="https://maintiendelordre.fr/grenade-assd-alsetex/"&gt;40 dispositifs déflagrants ASSD&lt;/a&gt; et 81 tirs de LBD (&lt;a href="https://maintiendelordre.fr/lbd-40-mm-alsetex-cougar/"&gt;LBD 40mm COUGAR 40&lt;/a&gt; ou &lt;a href="https://maintiendelordre.fr/lbd-40-mm-bt-gl-06/"&gt;LBD 40mm GL-06&lt;/a&gt; ? Les deux sont connus pour mutiler... Le site &lt;a href="https://violencespolicieres.fr/causes/lanceur-de-balle-de-defense"&gt;violencespolicieres.fr&lt;/a&gt; recense 621 victimes.)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;«Autrement dit, en seulement deux heures ce sont plus de 5 000 grenades qui ont été utilisées contre les manifestant·e·s.» (p.81 du rapport de la LDH)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Il y a eu de nombreux blessés ce jour là. Du côté des manifestants, plus de 250 blessés décomptés officiellement. L'article de &lt;a href="https://contre-attaque.net/2025/11/05/sainte-soline-les-preuves-dune-volonte-de-massacrer-les-manifestant%C2%B7es/"&gt;Contre Attaque&lt;/a&gt; parle de "Plus de 400 personnes ont été gravement blessées ce jour-là, deux avaient été placées dans le coma, et un grand nombre mutilées à vie." (Certains blessés n'ont pas osé aller se faire soigner par peur de la répression...) Ce décompte ne tient pas compte de ceux qui sont rentrés chez eux physiquement indemmes mais traumatisés.&lt;/p&gt;
&lt;p&gt;Du côté de la police, le décompte est de &lt;a href="https://www.franceinfo.fr/faits-divers/police/mega-bassines-de-sainte-soline-47-gendarmes-ont-ete-blesses-lors-de-la-manifestation-de-samedi-d-apres-le-procureur-de-niort_5734025.html"&gt;47 blessés&lt;/a&gt; même si le ministre de l'intérieur de l'époque a évoqué 60 blessés sur X. Dans les 47 policiers blessés, il y a 18 policiers qui ont dû recevoir des soins pour "traumatismes sonores". Quand on tire 40 grenades à la minute pendant deux heures, ça fait du bruit et ça abime les oreilles, effectivement...&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Mais les manifestants étaient violents et déterminés, non ? C'est sûrement eux qui ont commencé ?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;S'il y a effectivement une diversité assumée dans les modes d'actions des manifestants, la majorité de ceux-ci étaient pacifiques.&lt;/p&gt;
&lt;p&gt;Il y avait trois cortèges (bleu, rose et jaune). Les gendarmes montés sont quads (PM21) sont venus au contact du cortège bleu à 12h35, ce qui a entrainé «quelques tirs de feux d'artifice» (qui sont arrivés loin des gendarmes). La réponse a été immédiate («quasi-simultanée»), le cortège bleu a été gazé abondamment. «Le comportement du PM2I lors de cette première rencontre avec les manifestant·e·s ne peut en aucun cas être assimilé à une tentative de désescalade.» «L’engagement de la force a bien été décidé à l’encontre de deux cortèges calmes et pacifiques, le rose puis le jaune, et ce sans aucune sommation.» (rapport de la LDH, p.71)&lt;/p&gt;
&lt;p&gt;&lt;img alt="completement d'enquête" src="../images/saintesoline/ils-sont-cons-ou-quoi.png" title="Captures d'écran du reportage Complément d'enquête"&gt;&lt;/p&gt;
&lt;p&gt;Les pages 87 à 120 détaillent les blessures subies par les manifestants et les problèmes concernants la prise en charge des blessé·e·s. Je ne vais pas détailler cette partie. Il y a des images. C'est pas joli à voir...&lt;/p&gt;
&lt;p&gt;J'essaye de conclure cet article et je ne sais pas par où commencer. Il y a certes eu de la violence du côté des manifestants envers les forces de l'ordre (jets de pierre, cocktails molotov, feux d'artifice, ...) mais la réponse parait totalement disproportionnée. La volonté de blesser, visible dans les vidéos diffusées par Médiapart, me parait accablante. Entendre un gendarme dire qu'il a attendu 10 ans pour vivre ça, ça pose d'énormes questions.&lt;/p&gt;
&lt;p&gt;Le dispositif policier a coùté 5 millions d'euros... Tout ça pour quoi? Que se serait-il passé s'il n'y avait pas eu de policiers? Les manifestants auraient rebouché le trou avec leurs petites mains? En plus, la justice a fini par &lt;a href="https://www.lemonde.fr/planete/article/2024/12/18/la-justice-suspend-l-autorisation-de-quatre-megabassines-dont-celle-de-sainte-soline_6455735_3244.html"&gt;suspendre l'autorisation de la mégabassine de Sainte-Soline&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Je trouve ça très inquiétant que les luttes écologiques soit autant criminalisées. Il y a sans doute un paquet de gens qui n'ont pas intérêt à ce qu'on change de modèle et qui sont prêts à se battre (ou plutôt, à envoyer les forces de l'ordre se battre pour eux...) pour préserver le statu quo. Et c'est désolant. Je reste persuadé qu'à part ceux qui profitent allègrement du système capitaliste, la grande majorité des humains a intérêt à ce qu'on change et qu'on prenne en compte très sérieusement l'écologie dans nos modes de vie.&lt;/p&gt;
&lt;p&gt;Sources : &lt;/p&gt;
&lt;p&gt;Il y a ce rapport très poussé sur le site de la Ligue des droits de l'Homme :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.ldh-france.org/wp-content/uploads/2023/07/Rapport-final-10.07.23_DEF.pdf"&gt;Rapport des observatoires des libertés publiques et des pratiques policières - Sainte-Soline : Empêcher l'accès à la bassine quel qu'en soit le coût humain&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai aussi trouvé un mémoire sur le traitement médiatique de Sainte-Soline :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://dumas.ccsd.cnrs.fr/dumas-04788535v1/file/Romanin.pdf"&gt;Stéphane Romanin. Traitement médiatique d’un mouvement écologiste. Sainte-Soline et les méga-bassines&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://violencespolicieres.fr/"&gt;violencespolicieres.fr&lt;/a&gt; qui, entre autre, recense les victimes des différentes armes utilisées dans le cadre du "maintient de l'ordre" par la police.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.twitch.tv/videos/2611025539"&gt;Chaine Twitch d'Ostpolitik&lt;/a&gt; qui revient sur les révélations de Médiapart à partir d'1h12.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://fr.wikipedia.org/wiki/Affrontements_%C3%A0_Sainte-Soline"&gt;Affrontements à Sainte-Soline (Wikipédia)&lt;/a&gt; - à noter que le mot "affrontements" est sujet à débat dans la partie discussion.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content><category term="Politique"></category><category term="politique"></category><category term="militant"></category><category term="Sainte-Soline"></category></entry><entry><title>Gestion de to-do list avec Todo.txt</title><link href="https://blog.simonlefort.be/todo-list-todotxt.html" rel="alternate"></link><published>2024-11-09T13:20:00+01:00</published><updated>2024-11-09T13:20:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2024-11-09:/todo-list-todotxt.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;[Note: Entre temps je suis passé à Joplin. Android me casse les pieds pour synchroniser un simple fichier de texte entre l'ordi et le téléphone.]&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ça fait deux mois que j'utilise mon &lt;a href="https://blog.simonlefort.be/todo-list-avec-bash.html"&gt;script de gestion de todo&lt;/a&gt; et je dois bien avouer que j'arrive à quelques limitations.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pas de gestion …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;[Note: Entre temps je suis passé à Joplin. Android me casse les pieds pour synchroniser un simple fichier de texte entre l'ordi et le téléphone.]&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ça fait deux mois que j'utilise mon &lt;a href="https://blog.simonlefort.be/todo-list-avec-bash.html"&gt;script de gestion de todo&lt;/a&gt; et je dois bien avouer que j'arrive à quelques limitations.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pas de gestion de priorité&lt;/li&gt;
&lt;li&gt;Pas de tâches secondaires&lt;/li&gt;
&lt;li&gt;Pas de gestion de dates limites&lt;/li&gt;
&lt;li&gt;Problèmes de synchronisation... J'ai souvent des conflits à cause de nextcloud&lt;/li&gt;
&lt;li&gt;Sur mobile (android), ce n'est pas pratique&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Tout ça m'ammène à repenser la chose et à m'intéresser de plus près à &lt;a href="http://todotxt.org/"&gt;Todo.txt&lt;/a&gt;. On reste sur le principe d'une liste de choses à faire stockée dans un fichier texte. Ce fichier reste synchronisé avec nextcloud pour y avoir accès sur mobile. Il est toujours possible d'éditer ce fichier "à la main" mais on gagne des possibilités en plus.&lt;/p&gt;
&lt;p&gt;Alors... La base, c'est quoi ? La base, c'est un fichier qui contient une tache par ligne. Sur cette ligne contenant une tache, on peut ajouter tout un tas de choses optionnelles qui rajoutent des informations et des possibilités.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;Acheter&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;des&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;lentilles&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;B&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Acheter&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;des&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;bières&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;A&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Acheter&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;des&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;légumes&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;et&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;des&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;fruits&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;@magasin&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="n"&gt;alimentation&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;due&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;2024&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;
&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;B&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Aller&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;marcher&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dans&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;les&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;bois&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="../images/todo/todotxt-format.png"&gt;&lt;img alt="todotxt-format" src="../images/todo/todotxt-format-mini.png" title="résumé du format todo-txt"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On peut utiliser uniquement ces informations dans un fichier texte. Et gérer ça directement dans le terminal. Et ça pourrait tout à fait suffire.&lt;/p&gt;
&lt;p&gt;Mais je ne passe plus assez de temps sur l'ordinateur pour imaginer tout faire depuis un terminal. Et j'ai besoin que ça soit &lt;strong&gt;simple&lt;/strong&gt; et &lt;strong&gt;intuitif&lt;/strong&gt;. Il faut retirer un maximum la friction à ce niveau là. Je vais donc essayer quelques clients pour trouver ce qui me convient et ce qui rend le truc le plus efficace.&lt;/p&gt;
&lt;h1&gt;todo-txt&lt;/h1&gt;
&lt;p&gt;Installation (Sur Debian) :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;todotxt-cli
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut commencer par mettre un alias et se simplifier la vie :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;t&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;todo-txt&amp;quot;&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;t&lt;span class="w"&gt; &lt;/span&gt;--help
Usage:&lt;span class="w"&gt; &lt;/span&gt;todo-txt&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;-fhpantvV&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;-d&lt;span class="w"&gt; &lt;/span&gt;todo_config&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;action&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;task_number&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;task_description&lt;span class="o"&gt;]&lt;/span&gt;
Try&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo-txt -h&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;more&lt;span class="w"&gt; &lt;/span&gt;information.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut donc ajouter des tâches à faire :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;todo-txt&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;Un&lt;span class="w"&gt; &lt;/span&gt;autre&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;test&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;+Famille&lt;span class="w"&gt; &lt;/span&gt;@Contexte
$&lt;span class="w"&gt; &lt;/span&gt;t&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;Test&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;application&lt;span class="w"&gt; &lt;/span&gt;ToDo.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut voir les tâches :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;t&lt;span class="w"&gt; &lt;/span&gt;ls
&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Test&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;application&lt;span class="w"&gt; &lt;/span&gt;ToDo.txt
&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Un&lt;span class="w"&gt; &lt;/span&gt;autre&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;test&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;+Famille&lt;span class="w"&gt; &lt;/span&gt;@Context
--
TODO:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;tasks&lt;span class="w"&gt; &lt;/span&gt;shown
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut valider une tâche :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;t&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2024&lt;/span&gt;-11-09&lt;span class="w"&gt; &lt;/span&gt;Test&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;application ToDo.txt&lt;/span&gt;
&lt;span class="s1"&gt;TODO: 1 marked as done.&lt;/span&gt;
&lt;span class="s1"&gt;x 2024-11-09 Test de l&amp;#39;&lt;/span&gt;application&lt;span class="w"&gt; &lt;/span&gt;ToDo.txt
TODO:&lt;span class="w"&gt; &lt;/span&gt;/home/simon/.todo-txt/todo.txt&lt;span class="w"&gt; &lt;/span&gt;archived.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Les fichiers sont dans &lt;code&gt;~/.todo-txt/&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;.todo-txt/todo.txt
Un&lt;span class="w"&gt; &lt;/span&gt;autre&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;test&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;+Famille&lt;span class="w"&gt; &lt;/span&gt;@Context

$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;.todo-txt/done.txt&lt;span class="w"&gt; &lt;/span&gt;
x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2024&lt;/span&gt;-11-09&lt;span class="w"&gt; &lt;/span&gt;Test&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;application&lt;span class="w"&gt; &lt;/span&gt;ToDo.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;pter&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://github.com/vonshednob/pter"&gt;pter&lt;/a&gt; est un logiciel interractif dans le terminal.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;pipx
$&lt;span class="w"&gt; &lt;/span&gt;pipx&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;pter
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut ouvrir le même fichier que précédemment:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pter&lt;span class="w"&gt; &lt;/span&gt;.todo-txt/todo.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;sleek&lt;/h1&gt;
&lt;p&gt;Avec &lt;a href="https://github.com/ransome1/sleek"&gt;sleek&lt;/a&gt;, on s'éloigne du terminal avec une application graphique. J'aimerais trouver un moyen gérer ma liste de tâche avec des applications dans le terminal, très simple. Mais dans l'objectif de me simplifier la vie, je ne peux pas ne pas essayer.&lt;/p&gt;
&lt;p&gt;Je dois bien avouer que Sleek est très propre, joli, efficace.&lt;/p&gt;</content><category term="Blog"></category><category term="terminal"></category><category term="bash"></category><category term="nextcloud"></category><category term="notes"></category><category term="todo"></category></entry><entry><title>Les programmes à tester pour Regolith</title><link href="https://blog.simonlefort.be/regolith-prorammes-a-tester.html" rel="alternate"></link><published>2024-09-29T07:58:00+02:00</published><updated>2024-09-29T07:58:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2024-09-29:/regolith-prorammes-a-tester.html</id><summary type="html">&lt;p&gt;Lors de mes recherches pour &lt;a href="https://blog.simonlefort.be/regolith-on-debian.html"&gt;installer Regolith Linux sur Debian&lt;/a&gt; ou pour &lt;a href="https://blog.simonlefort.be/config-regolith-on-debian.html"&gt;configurer Regolith Linux avec Wayland/Sway&lt;/a&gt;, je suis tombé sur plein de petits programmes que j'aimerais tester un jour.&lt;/p&gt;
&lt;p&gt;Je vais essayer de faire une liste ici pour ne pas oublier. :-)&lt;/p&gt;
&lt;h1&gt;Gestionnaire de clipboard&lt;/h1&gt;
&lt;p&gt;J'utilisais &lt;code&gt;greenclip&lt;/code&gt; avant mais …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Lors de mes recherches pour &lt;a href="https://blog.simonlefort.be/regolith-on-debian.html"&gt;installer Regolith Linux sur Debian&lt;/a&gt; ou pour &lt;a href="https://blog.simonlefort.be/config-regolith-on-debian.html"&gt;configurer Regolith Linux avec Wayland/Sway&lt;/a&gt;, je suis tombé sur plein de petits programmes que j'aimerais tester un jour.&lt;/p&gt;
&lt;p&gt;Je vais essayer de faire une liste ici pour ne pas oublier. :-)&lt;/p&gt;
&lt;h1&gt;Gestionnaire de clipboard&lt;/h1&gt;
&lt;p&gt;J'utilisais &lt;code&gt;greenclip&lt;/code&gt; avant mais il n'est pas compatible avec Wayland. Je cherche actuellement une autre alternative. J'ai même demandé dans les &lt;a href="https://github.com/orgs/regolith-linux/discussions/1062"&gt;discussions sur le github de Regolith&lt;/a&gt;. L'idéal serait d'arriver à trouver une solution compatible avec &lt;a href="https://github.com/regolith-linux/ilia"&gt;ilia&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/chmouel/clipman"&gt;clipman&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/bugaevc/wl-clipboard"&gt;wl-clipboard&lt;/a&gt; qui embarque &lt;code&gt;wl-paste&lt;/code&gt; et &lt;code&gt;wl-copy&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Petit test :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;test.txt&lt;span class="w"&gt; &lt;/span&gt;
aaa
bbb
ccc

$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;test.txt&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;ilia&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;textlist&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;wl-copy
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="../images/regolith/grim.png"&gt;&lt;img alt="grim" src="../images/regolith/grim-mini.png" title="test grim"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ça met bien le bout de texte choisi ("aaa", "bbb" ou "ccc") dans le clipboard. Il reste à trouver comment alimenter un fichier "clipboard-history.txt" à chaque copier/couper.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/savedra1/clipse"&gt;clipse&lt;/a&gt; qui a l'air très complet&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/sentriz/cliphist"&gt;cliphist&lt;/a&gt; qui a l'air très bien aussi &lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Lanceur&lt;/h1&gt;
&lt;p&gt;Par défaut, Regolith avec Wayland et Sway embarque &lt;a href="https://github.com/regolith-linux/ilia"&gt;ilia&lt;/a&gt; comme lanceur. Il est bien intégré, propre et rapide. Mais il y a d'autres lanceurs qui méritent peut-être d'être testés.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/Biont/sway-launcher-desktop"&gt;sway-launcher-desktop&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Capture d'écran&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Avec Wayland, l'enregistrement de l'écran (capture photo ou vidéo) doit être géré par l'environnement, alors qu'il était jusqu'à présent indépendant de l'environnement utilisé. Vos anciens logiciels de capture d'écran pour Xorg risquent de ne plus fonctionner !&lt;/em&gt; (&lt;a href="https://doc.ubuntu-fr.org/wayland#ce_que_nous_apprend_weston"&gt;source: ubuntu-fr.org&lt;/a&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Il faut donc trouver d'autres solutions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://sr.ht/~emersion/grim/"&gt;grim&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mankier.com/1/grimshot"&gt;grimshot&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;Grimshot&lt;/code&gt; fonctionne en le lançant depuis un terminal. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;window
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Reste à voir comment intégrer ça à Ilia ?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/emersion/slurp"&gt;slurp&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;Slurp&lt;/code&gt; permet de sélectionner une partie de l'écran et de renvoyer les coordonnées. Il est alors possible de les utiliser avec &lt;code&gt;grim&lt;/code&gt;, par exemple.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;slurp
&lt;span class="m"&gt;2233&lt;/span&gt;,372&lt;span class="w"&gt; &lt;/span&gt;543x466

$&lt;span class="w"&gt; &lt;/span&gt;slurp&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grim&lt;span class="w"&gt; &lt;/span&gt;-g&lt;span class="w"&gt; &lt;/span&gt;-
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Outils divers&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/regolith-linux/trawl"&gt;trawl&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;trawldb&lt;span class="w"&gt; &lt;/span&gt;--query
gnome.terminal.color0&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;#2E3440&lt;/span&gt;
gnome.terminal.color1&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;#BF616A&lt;/span&gt;
gnome.terminal.color10&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;#A3BE8C&lt;/span&gt;
gnome.terminal.color11&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;#EBCB8B&lt;/span&gt;

$&lt;span class="w"&gt; &lt;/span&gt;trawldb&lt;span class="w"&gt; &lt;/span&gt;--get&lt;span class="w"&gt; &lt;/span&gt;wm.gaps.inner.size
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/junegunn/fzf"&gt;fzf&lt;/a&gt;, un "fuzzy finder" qui pourrait servir à pleiiin de choses. À voir comment l'intégrer proprement avec ilia.&lt;/li&gt;
&lt;/ul&gt;</content><category term="Blog"></category><category term="regolith"></category><category term="linux"></category><category term="programmes"></category><category term="tests"></category><category term="geekerie"></category></entry><entry><title>Configuration de Regolith sur une Debian 12</title><link href="https://blog.simonlefort.be/config-regolith-on-debian.html" rel="alternate"></link><published>2024-09-26T13:31:00+02:00</published><updated>2024-09-28T15:30:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2024-09-26:/config-regolith-on-debian.html</id><summary type="html">&lt;p&gt;Après &lt;a href="https://blog.simonlefort.be/regolith-on-debian.html"&gt;l'installation de Regolith sur une Debian 12&lt;/a&gt;, il faut faire les différentes configurations nécessaires à son bon fonctionnement. Et ce n'est pas une mince affaire... &lt;/p&gt;
&lt;p&gt;La première chose à noter, c'est que je m'amuse à installer une "distribution" assez particulière et qu'en plus je passe d'X11 avec i3 à …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Après &lt;a href="https://blog.simonlefort.be/regolith-on-debian.html"&gt;l'installation de Regolith sur une Debian 12&lt;/a&gt;, il faut faire les différentes configurations nécessaires à son bon fonctionnement. Et ce n'est pas une mince affaire... &lt;/p&gt;
&lt;p&gt;La première chose à noter, c'est que je m'amuse à installer une "distribution" assez particulière et qu'en plus je passe d'X11 avec i3 à Wayland avec Sway. Et ça change plus de choses que ce que j'aurais pu penser au départ. Il y a un article indispensable à lire pour comprendre les changements (&lt;a href="https://regolith-desktop.com/posts/sway_integration_gsoc/"&gt;Foundations for Regolith on Wayland (GSoC'22)&lt;/a&gt;). Évidemment j'ai trouvé cet article après m'être déjà bien cassé la tête... &lt;/p&gt;
&lt;p&gt;Quelques changements :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La plupart de la documentation de Regolith est axée sur i3... Passer à Sway c'est se retrouver avec peu de documentation...&lt;/li&gt;
&lt;li&gt;Rofi est remplacé par &lt;a href="https://github.com/regolith-linux/ilia"&gt;Ilia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Certains programmes ne marchent plus à cause du passage à Wayland (&lt;a href="https://github.com/erebe/greenclip"&gt;greenclip&lt;/a&gt; par exemple)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Avant de m'attaquer à tout ce que ces changements impliquent, j'ai tout d'abord commencé par réinstaller et reconfigurer les essentiels pour pouvoir travailler.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installation de Firefox (et réimport du profil que j'avais sauvegardé)&lt;/li&gt;
&lt;li&gt;Installation de Thunderbird (et réimport du profil également)&lt;/li&gt;
&lt;li&gt;Réinstallation de plein d'autres petits programmes utiles et configurations (SSH, Nextcloud, Ferdium, Signal, etc.)&lt;/li&gt;
&lt;li&gt;Configuration de bash, de mes alias, etc...&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Je ne m'attarderai pas sur tout ça, c'est du classique. Passons au cœur de cet article et aux configurations liées à Regolith sur une Debian 12 Bookworm avec Wayland et Sway!&lt;/p&gt;
&lt;h1&gt;Changer le terminal par défaut :&lt;/h1&gt;
&lt;p&gt;Par défaut, le raccourci &lt;Super&gt;&lt;Enter&gt; lançait le terminal &lt;code&gt;zutty&lt;/code&gt; alors que &lt;code&gt;gnome-terminal&lt;/code&gt; est tout bien configuré avec le thème lié à Regolith. Voilà comment on vérifie tout ça et comment on change ensuite le terminal appelé par le raccourcis :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/15_base_launchers&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;
&lt;span class="c1"&gt;# Launcher dialogs&lt;/span&gt;
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;

&lt;span class="c1"&gt;## Launch // Terminal // &amp;lt; &amp;gt; Enter ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.terminal&lt;span class="w"&gt; &lt;/span&gt;wm.binding.terminal&lt;span class="w"&gt; &lt;/span&gt;Return
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.terminal&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/x-terminal-emulator
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On voit que le raccourci lance &lt;code&gt;x-terminal-emulator&lt;/code&gt;. On peut regarder sur quoi il pointe : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/x-terminal-emulator&lt;span class="w"&gt; &lt;/span&gt;
lrwxrwxrwx&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;37&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/x-terminal-emulator&lt;span class="w"&gt; &lt;/span&gt;-&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;/etc/alternatives/x-terminal-emulator

$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/etc/alternatives/x-terminal-emulator
lrwxrwxrwx&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;31&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;11&lt;/span&gt;:43&lt;span class="w"&gt; &lt;/span&gt;/etc/alternatives/x-terminal-emulator&lt;span class="w"&gt; &lt;/span&gt;-&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/zutty
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il pointe sur &lt;code&gt;zutty&lt;/code&gt;, on va changer ça :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;update-alternatives&lt;span class="w"&gt; &lt;/span&gt;--config&lt;span class="w"&gt; &lt;/span&gt;x-terminal-emulator
Il&lt;span class="w"&gt; &lt;/span&gt;existe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;choix&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;alternative&lt;span class="w"&gt; &lt;/span&gt;x-terminal-emulator&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;qui&lt;span class="w"&gt; &lt;/span&gt;fournit&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/x-terminal-emulator&lt;span class="o"&gt;)&lt;/span&gt;.

&lt;span class="w"&gt;  &lt;/span&gt;Sélection&lt;span class="w"&gt;   &lt;/span&gt;Chemin&lt;span class="w"&gt;                           &lt;/span&gt;Priorité&lt;span class="w"&gt;  &lt;/span&gt;État
------------------------------------------------------------
*&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/zutty&lt;span class="w"&gt;                    &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;automatique
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/foot&lt;span class="w"&gt;                     &lt;/span&gt;&lt;span class="m"&gt;20&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/footclient&lt;span class="w"&gt;               &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/gnome-terminal.wrapper&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/zutty&lt;span class="w"&gt;                    &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel

Appuyez&lt;span class="w"&gt; &lt;/span&gt;sur&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;enter&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;conserver&lt;span class="w"&gt; &lt;/span&gt;le&lt;span class="w"&gt; &lt;/span&gt;choix&lt;span class="w"&gt; &lt;/span&gt;actuel&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;*&lt;span class="o"&gt;]&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;tapez&lt;span class="w"&gt; &lt;/span&gt;le&lt;span class="w"&gt; &lt;/span&gt;numéro&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Changer les raccourcis clavier :&lt;/h1&gt;
&lt;p&gt;Là, on rentre dans un vrai dossier... Ça devrait être super simple. Sauf que... Ça l'est pas du tout. Il y a des configurations un peu partout et chacun a sa propre solution pour changer les raccourcis par défaut. J'ai trouvé par exemple une explications sur &lt;a href="https://github.com/orgs/regolith-linux/discussions/919#discussioncomment-7118493"&gt;ce fil github&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Il y a plusieurs raccourcis que je dois absolument enlever, changer ou ajouter. Les raccourcis de navigations ne sont pas cohérents sur un clavier azerty belge, où les chiffres ne sont pas en accès direct. Il y a aussi des raccourcis qui ouvrent des parties spécifiques de gnome-settings que je veux retirer (pas d'intérêt et je les déclenche régulièrement par erreur...).&lt;/p&gt;
&lt;p&gt;Les raccourcis clavier sont définis dans ce dossier : &lt;code&gt;/usr/share/regolith/&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/
total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;
drwxr-xr-x&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:12&lt;span class="w"&gt; &lt;/span&gt;.
drwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;237&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;12288&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:10&lt;span class="w"&gt; &lt;/span&gt;..
drwxr-xr-x&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:08&lt;span class="w"&gt; &lt;/span&gt;common
drwxr-xr-x&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:12&lt;span class="w"&gt; &lt;/span&gt;i3
drwxr-xr-x&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:08&lt;span class="w"&gt; &lt;/span&gt;sway

$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/
total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;48&lt;/span&gt;
drwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:12&lt;span class="w"&gt; &lt;/span&gt;.
drwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:08&lt;span class="w"&gt; &lt;/span&gt;..
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;592&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;15_base_launchers
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3848&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;30_navigation
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;263&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;40_i3-swap-focus
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;718&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;40_next-workspace
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;7568&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;40_workspace-config
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2141&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;50_resize-mode
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;488&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;82_rofication-ilia
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;155&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;84_ftue
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;183&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;88_network-manager

$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/
total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;68&lt;/span&gt;
drwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:08&lt;span class="w"&gt; &lt;/span&gt;.
drwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;19&lt;/span&gt;:08&lt;span class="w"&gt; &lt;/span&gt;..
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1946&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;20_ilia
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;110&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;25_xdg_desktop_portal
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1403&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;35_gaps
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1385&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;40_default-style
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;303&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;42_gtklock
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2742&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1554&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1022&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;65_media_keybindings
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2091&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;70_bar_i3status-rs
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;56&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;80_swaybg
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;575&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;81_gsd_integrations
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;29&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;82_audio_idle_inhibit
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;90&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;85_polkit
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;315&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;86_unclutter
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;root&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;218&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;aoû&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2023&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;95_dbus-activation
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Idéalement, il ne faut pas toucher à ces fichiers (sinon on risque des galères lors des prochaines mises à jour...). Selon &lt;a href="https://github.com/kgilmer"&gt;kgilmer&lt;/a&gt;, il faut ajouter nos nouveaux raccourcis dans le fichier suivant : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;~/.config/regolith3/Xresources&lt;span class="w"&gt; &lt;/span&gt;
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;222&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;27&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;12&lt;/span&gt;:07&lt;span class="w"&gt; &lt;/span&gt;/home/simon/.config/regolith3/Xresources
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Toute l'astuce, c'est de trouver le raccourci qu'on veut changer dans un des fichiers dans &lt;code&gt;/usr/share/regolith/&lt;/code&gt; et bien comprendre la syntaxe à recopier... Déjà rien que ça... Et même quand on pense avoir trouvé, on se rend compte que ce qu'on a ajouté dans le fichier Xresources rentre en conflit quand on tente de redémarrer Sway... Une solution consiste à supprimer les paquets qui créent ces configurations dans /usr/share/regolith/... C'est tout sauf pratique!&lt;/p&gt;
&lt;p&gt;Donc, après réflexion, je vais modifier directement les raccourcis dans &lt;code&gt;/usr/share/regolith/&lt;/code&gt; mais pas à la main (parce que ça va se faire écraser par les prochaines mises à jour...) : avec un gros script à base de sed que je pourrai relancer facilement au besoin.&lt;/p&gt;
&lt;p&gt;Avant toute chose, on va créer un dossier de backup de toute cette configuration : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;mkdir&lt;span class="w"&gt; &lt;/span&gt;/home/simon/backup
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;-r&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith*&lt;span class="w"&gt; &lt;/span&gt;/home/simon/backup/
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;chown&lt;span class="w"&gt; &lt;/span&gt;-R&lt;span class="w"&gt; &lt;/span&gt;simon:simon&lt;span class="w"&gt; &lt;/span&gt;/home/simon/backup/
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;/home/simon/backup/
total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;7&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;.
drwx------&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;22&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:51&lt;span class="w"&gt; &lt;/span&gt;..
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;regolith
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;regolith-compositor
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;regolith-ftue
drwxr-xr-x&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4096&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:50&lt;span class="w"&gt; &lt;/span&gt;regolith-look
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Supprimer des raccourcis&lt;/h2&gt;
&lt;p&gt;Maintenant il faut regarder ce qu'on veut modifier. Commençons par supprimer des raccourcis inutiles. Ça c'est &lt;em&gt;facile&lt;/em&gt;, il &lt;em&gt;suffit&lt;/em&gt; de commenter quelques lignes. Je vais donc commencer par enlever des raccourcis que je n'utilise pas et que je déclenche parfois par erreur... On va modifier le fichier &lt;code&gt;60_config_keybindings&lt;/code&gt; et commenter les parties qui concerne le bluetooth, le wifi et la configuration des écrans.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/60_config_keybindings
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;
&lt;span class="c1"&gt;# System Management&lt;/span&gt;
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;

&lt;span class="c1"&gt;## Modify // Settings // &amp;lt;&amp;gt; c ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.settings&lt;span class="w"&gt; &lt;/span&gt;wm.binding.settings&lt;span class="w"&gt; &lt;/span&gt;c
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.settings&lt;span class="w"&gt; &lt;/span&gt;wm.program.settings&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.settings&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.settings

&lt;span class="c1"&gt;## Modify // Display Settings // &amp;lt;&amp;gt; d ##&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.binding.display wm.binding.display d&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.display&lt;span class="w"&gt; &lt;/span&gt;wm.program.display&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center&lt;span class="w"&gt; &lt;/span&gt;display
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.display&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.display

&lt;span class="c1"&gt;## Modify // Wifi Settings // &amp;lt;&amp;gt; w ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.wifi&lt;span class="w"&gt; &lt;/span&gt;wm.binding.wifi&lt;span class="w"&gt; &lt;/span&gt;w
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.wifi&lt;span class="w"&gt; &lt;/span&gt;wm.program.wifi&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center&lt;span class="w"&gt; &lt;/span&gt;wifi
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.wifi&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.wifi

&lt;span class="c1"&gt;## Modify // Bluetooth Settings // &amp;lt;&amp;gt; b ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.bluetooth&lt;span class="w"&gt; &lt;/span&gt;wm.binding.bluetooth&lt;span class="w"&gt; &lt;/span&gt;b
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.bluetooth&lt;span class="w"&gt; &lt;/span&gt;wm.program.bluetooth&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center&lt;span class="w"&gt; &lt;/span&gt;bluetooth
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.bluetooth&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.bluetooth

&lt;span class="c1"&gt;## Launch // File Browser // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; n ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.files&lt;span class="w"&gt; &lt;/span&gt;wm.binding.files&lt;span class="w"&gt; &lt;/span&gt;Shift+n
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.files&lt;span class="w"&gt; &lt;/span&gt;wm.program.files&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/nautilus&lt;span class="w"&gt; &lt;/span&gt;--new-window
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.files&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.files
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Comme on va modifier potentiellement beaucoup de raccourcis, on passe par l'utilisation d'un fichier pour &lt;code&gt;sed&lt;/code&gt;. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="c1"&gt;#display&lt;/span&gt;
s/^&lt;span class="o"&gt;[&lt;/span&gt;^#&lt;span class="o"&gt;]&lt;/span&gt;*display/#&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;/

&lt;span class="c1"&gt;#bluetooth&lt;/span&gt;
s/^&lt;span class="o"&gt;[&lt;/span&gt;^#&lt;span class="o"&gt;]&lt;/span&gt;*bluetooth/#&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;/

&lt;span class="c1"&gt;#wifi&lt;/span&gt;
s/^&lt;span class="o"&gt;[&lt;/span&gt;^#&lt;span class="o"&gt;]&lt;/span&gt;*wifi/#&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(Explications pour &lt;code&gt;sed&lt;/code&gt; sur &lt;a href="https://stackoverflow.com/questions/17998763/sed-commenting-a-line-matching-a-specific-string-and-that-is-not-already-comme"&gt;stackoverflow&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;On lance la commande &lt;code&gt;sed&lt;/code&gt; avec le fichier comme ceci :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;#pour tester:&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/60_config_keybindings&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;
&lt;span class="c1"&gt;# System Management&lt;/span&gt;
&lt;span class="c1"&gt;###############################################################################&lt;/span&gt;

&lt;span class="c1"&gt;## Modify // Settings // &amp;lt;&amp;gt; c ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.settings&lt;span class="w"&gt; &lt;/span&gt;wm.binding.settings&lt;span class="w"&gt; &lt;/span&gt;c
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.settings&lt;span class="w"&gt; &lt;/span&gt;wm.program.settings&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.settings&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.settings

&lt;span class="c1"&gt;## Modify // Display Settings // &amp;lt;&amp;gt; d ##&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.binding.display wm.binding.display d&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.program.display wm.program.display regolith-control-center display&lt;/span&gt;
&lt;span class="c1"&gt;#bindsym $mod+$wm.binding.display exec --no-startup-id $wm.program.display&lt;/span&gt;

&lt;span class="c1"&gt;## Modify // Wifi Settings // &amp;lt;&amp;gt; w ##&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.binding.wifi wm.binding.wifi w&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.program.wifi wm.program.wifi regolith-control-center wifi&lt;/span&gt;
&lt;span class="c1"&gt;#bindsym $mod+$wm.binding.wifi exec --no-startup-id $wm.program.wifi&lt;/span&gt;

&lt;span class="c1"&gt;## Modify // Bluetooth Settings // &amp;lt;&amp;gt; b ##&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.binding.bluetooth wm.binding.bluetooth b&lt;/span&gt;
&lt;span class="c1"&gt;#set_from_resource $wm.program.bluetooth wm.program.bluetooth regolith-control-center bluetooth&lt;/span&gt;
&lt;span class="c1"&gt;#bindsym $mod+$wm.binding.bluetooth exec --no-startup-id $wm.program.bluetooth&lt;/span&gt;

&lt;span class="c1"&gt;## Launch // File Browser // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; n ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.files&lt;span class="w"&gt; &lt;/span&gt;wm.binding.files&lt;span class="w"&gt; &lt;/span&gt;Shift+n
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.files&lt;span class="w"&gt; &lt;/span&gt;wm.program.files&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/nautilus&lt;span class="w"&gt; &lt;/span&gt;--new-window
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.files&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--no-startup-id&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.files

for_window&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;app_id&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;org.regolith.Settings&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;floating&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;enable&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et pour appliquer vraiment la modification : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/60_config_keybindings&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour relancer &lt;code&gt;Sway&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;reload
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Là, normalement, ces trois raccourcis claviers ne déclenchent plus rien. \o/  &lt;/p&gt;
&lt;p&gt;Continuons sur notre lancée et passons ensuite à la configuration des raccourcis de navigation.&lt;/p&gt;
&lt;h2&gt;Modification des raccourcis de navigation&lt;/h2&gt;
&lt;p&gt;Actuellement, pour me déplacer d'un workspace à l'autre, je dois taper &lt;code&gt;&amp;lt;Super&amp;gt;&amp;lt;Maj&amp;gt;&amp;lt;&amp;amp;&amp;gt;&lt;/code&gt; (pour me rendre sur le workspace "1"). Si je veux aller sur le workspace 11, je dois taper &lt;code&gt;&amp;lt;Super&amp;gt;&amp;lt;Maj&amp;gt;&amp;lt;Ctrl&amp;gt;&amp;lt;&amp;amp;&amp;gt;&lt;/code&gt;... Je voudrais simplifier ça en en supprimant la touche &lt;code&gt;&amp;lt;Maj&amp;gt;&lt;/code&gt; de l'équation.&lt;/p&gt;
&lt;p&gt;Les raccourcis de navigation sont dans le fichier &lt;code&gt;30_navigation&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/30_navigation&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;## Navigate // Workspaces 1-10 // &amp;lt;&amp;gt; 0..9 ##&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws1&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws2&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws3_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws3&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On va également créer un script pour sed :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed&lt;span class="w"&gt; &lt;/span&gt;
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="se"&gt;\&amp;amp;&lt;/span&gt;/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour tester :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/30_navigation&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;## Navigate // Workspaces 1-10 // &amp;lt;&amp;gt; 0..9 ##&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws1&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Simple, non ? Sauf que... J'ai une erreur quand je relance sway.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;'Error on line 30 (/usr/share/regolith/common/config.d/30_navigation) 'bindsym $mod+&amp;amp; workspace number $ws1' : Unknown key or button '&amp;amp;'&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En cherchant, je suis tombé sur cette &lt;a href="https://github.com/swaywm/sway/issues/5159"&gt;issue github&lt;/a&gt; qui conseille d'utiliser xev ou wev pour récupérer le code de la touche.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;xev&lt;span class="w"&gt; &lt;/span&gt;-event&lt;span class="w"&gt; &lt;/span&gt;keyboard
KeyPress&lt;span class="w"&gt; &lt;/span&gt;event,&lt;span class="w"&gt; &lt;/span&gt;serial&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;synthetic&lt;span class="w"&gt; &lt;/span&gt;NO,&lt;span class="w"&gt; &lt;/span&gt;window&lt;span class="w"&gt; &lt;/span&gt;0x2000001,
&lt;span class="w"&gt;    &lt;/span&gt;root&lt;span class="w"&gt; &lt;/span&gt;0x49c,&lt;span class="w"&gt; &lt;/span&gt;subw&lt;span class="w"&gt; &lt;/span&gt;0x0,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;time&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;58386908&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;210&lt;/span&gt;,824&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;root:&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;3414&lt;/span&gt;,924&lt;span class="o"&gt;)&lt;/span&gt;,
&lt;span class="w"&gt;    &lt;/span&gt;state&lt;span class="w"&gt; &lt;/span&gt;0x10,&lt;span class="w"&gt; &lt;/span&gt;keycode&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;keysym&lt;span class="w"&gt; &lt;/span&gt;0x26,&lt;span class="w"&gt; &lt;/span&gt;ampersand&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;same_screen&lt;span class="w"&gt; &lt;/span&gt;YES,
&lt;span class="w"&gt;    &lt;/span&gt;XLookupString&lt;span class="w"&gt; &lt;/span&gt;gives&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;bytes:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&amp;amp;&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;XmbLookupString&lt;span class="w"&gt; &lt;/span&gt;gives&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;bytes:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;26&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&amp;amp;&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;XFilterEvent&lt;span class="w"&gt; &lt;/span&gt;returns:&lt;span class="w"&gt; &lt;/span&gt;False

$&lt;span class="w"&gt; &lt;/span&gt;wev&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;sym&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;                      &lt;/span&gt;sym:&lt;span class="w"&gt; &lt;/span&gt;ampersand&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;38&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;utf8:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;amp;&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;L'information importante, c'est "ampersand". Reste à faire pareil pour les autres touches.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;wev&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;sym&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;                      &lt;/span&gt;sym:&lt;span class="w"&gt; &lt;/span&gt;ampersand&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;38&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;utf8:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;amp;&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;                      &lt;/span&gt;sym:&lt;span class="w"&gt; &lt;/span&gt;eacute&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;233&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;utf8:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;é&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;                      &lt;/span&gt;sym:&lt;span class="w"&gt; &lt;/span&gt;quotedbl&lt;span class="w"&gt;     &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;34&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;utf8:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;quot;&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;                      &lt;/span&gt;sym:&lt;span class="w"&gt; &lt;/span&gt;apostrophe&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;39&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;utf8:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: parenleft    (40), utf8: &amp;#39;&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: section      (167), utf8: &amp;#39;&lt;/span&gt;§&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: egrave       (232), utf8: &amp;#39;&lt;/span&gt;è&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: exclam       (33), utf8: &amp;#39;&lt;/span&gt;!&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: ccedilla     (231), utf8: &amp;#39;&lt;/span&gt;ç&lt;span class="s1"&gt;&amp;#39;&lt;/span&gt;
&lt;span class="s1"&gt;                      sym: agrave       (224), utf8: &amp;#39;&lt;/span&gt;à&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'arrive à ce script : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed&lt;span class="w"&gt; &lt;/span&gt;
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+ampersand/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+eacute/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws3_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+quotedbl/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws4_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+apostrophe/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws5_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+parenleft/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws6_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+section/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws7_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+egrave/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws8_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+exclam/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws9_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+ccedilla/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$ws10_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+agrave/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+ampersand/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+eacute/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws3_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+quotedbl/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws4_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+apostrophe/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws5_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+parenleft/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws6_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+section/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws7_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+egrave/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws8_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+exclam/
s/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+&lt;span class="nv"&gt;$ws9_key&lt;/span&gt;/&lt;span class="nv"&gt;$mod&lt;/span&gt;+Ctrl+ccedilla/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour lancer le script : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/30_navigation
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On relance sway : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;reload
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et, cette fois, pas d'erreur! Tout fonctionne comme prévu. C'est presque surprenant... ;-)&lt;/p&gt;
&lt;h2&gt;Modification des raccourcis pour déplacer les fenêtres d'un workspace à l'autre&lt;/h2&gt;
&lt;p&gt;Les raccourcis pour déplacer une fenêtre d'un workspace à l'autre posent réellement un problème. En effet, pour déplacer une fenêtre dans le workspace 1, on est censé utiliser &lt;code&gt;$mod+Shift+$ws1_key&lt;/code&gt; (soit &lt;code&gt;&amp;lt;Super&amp;gt;&amp;lt;Maj&amp;gt;&amp;lt;&amp;amp;&amp;gt;&lt;/code&gt; dans mon cas) mais ça ne marche pas. Pour déplacer une fenêtre sur le workspace 1, je dois utiliser &lt;code&gt;&amp;lt;Super&amp;gt;&amp;lt;Alt&amp;gt;&amp;lt;Shift&amp;gt;&amp;lt;&amp;amp;&amp;gt;&lt;/code&gt; (Ce qui devrait déplacer vers le workspace 11 ?!). Bref, il faut modifier ça !&lt;/p&gt;
&lt;p&gt;Ces raccourcis sont dans &lt;code&gt;40_workspace-config&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/40_workspace-config
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;## Modify // Move Window to Workspace 1 - 10 // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; 0..9 ##&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Shift+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;move&lt;span class="w"&gt; &lt;/span&gt;container&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws1&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Shift+&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;move&lt;span class="w"&gt; &lt;/span&gt;container&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws2&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# move focused container to workspace, move to workspace&lt;/span&gt;
&lt;span class="c1"&gt;## Modify // Carry Window to Workspace 1 - 10// &amp;lt;&amp;gt;&amp;lt;Alt&amp;gt; 0..9 ##&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$alt&lt;/span&gt;+&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;move&lt;span class="w"&gt; &lt;/span&gt;container&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws1&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$alt&lt;/span&gt;+&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;move&lt;span class="w"&gt; &lt;/span&gt;container&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;workspace&lt;span class="w"&gt; &lt;/span&gt;number&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$ws2&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Comme pour les autres, on fait un fichier pour &lt;code&gt;sed&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;40_workspace-config.sed&lt;span class="w"&gt; &lt;/span&gt;
s/&lt;span class="nv"&gt;$ws1_key&lt;/span&gt;/ampersand/
s/&lt;span class="nv"&gt;$ws2_key&lt;/span&gt;/eacute/
s/&lt;span class="nv"&gt;$ws3_key&lt;/span&gt;/quotedbl/
s/&lt;span class="nv"&gt;$ws4_key&lt;/span&gt;/apostrophe/
s/&lt;span class="nv"&gt;$ws5_key&lt;/span&gt;/parenleft/
s/&lt;span class="nv"&gt;$ws6_key&lt;/span&gt;/section/
s/&lt;span class="nv"&gt;$ws7_key&lt;/span&gt;/egrave/
s/&lt;span class="nv"&gt;$ws8_key&lt;/span&gt;/exclam/
s/&lt;span class="nv"&gt;$ws9_key&lt;/span&gt;/ccedilla/
s/&lt;span class="nv"&gt;$ws10_key&lt;/span&gt;/agrave/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et on lance ça : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;40_workspace-config.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/40_workspace-config
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On relance &lt;code&gt;Sway&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;reload
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et ça marche!!!&lt;/p&gt;
&lt;h2&gt;Modifier les raccourcis de gestion de session&lt;/h2&gt;
&lt;p&gt;Par défaut, les raccourcis permettant de se déconnecter, de mettre en veille l'ordinateur, d'éteindre ou de rédémarrer l'ordinateur sont assez... Moches et peu fonctionnels au clavier.&lt;/p&gt;
&lt;p&gt;Ils sont dans le fichiers suivants : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/55_session_keybindings
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;## Session // Logout // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; e ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.logout&lt;span class="w"&gt; &lt;/span&gt;wm.binding.logout&lt;span class="w"&gt; &lt;/span&gt;Shift+e
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.logout&lt;span class="w"&gt; &lt;/span&gt;wm.program.logout&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--logout&lt;span class="w"&gt; &lt;/span&gt;--no-prompt&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.logout&lt;span class="w"&gt; &lt;/span&gt;sway.prompt.logout&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;swaynag -t warning -m &amp;#39;Do you really want to logout?&amp;#39; -b &amp;#39;Logout&amp;#39; &amp;#39;&lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;&lt;span class="s2"&gt;.program.logout&amp;#39;&amp;quot;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.logout&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.logout&lt;span class="w"&gt; &lt;/span&gt;

&lt;span class="c1"&gt;## Session // Reboot // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; b ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.reboot&lt;span class="w"&gt; &lt;/span&gt;wm.binding.reboot&lt;span class="w"&gt; &lt;/span&gt;Shift+b
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.reboot&lt;span class="w"&gt; &lt;/span&gt;wm.program.reboot&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--reboot&lt;span class="w"&gt; &lt;/span&gt;--no-prompt
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.reboot&lt;span class="w"&gt; &lt;/span&gt;sway.prompt.reboot&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;swaynag -t warning -m &amp;#39;Do you really want to reboot your system?&amp;#39; -b &amp;#39;Reboot&amp;#39; &amp;#39;&lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;&lt;span class="s2"&gt;.program.reboot&amp;#39;&amp;quot;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.reboot&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.reboot&lt;span class="w"&gt; &lt;/span&gt;

&lt;span class="c1"&gt;## Session // Power Down // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; p ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.shutdown&lt;span class="w"&gt; &lt;/span&gt;wm.binding.shutdown&lt;span class="w"&gt; &lt;/span&gt;Shift+p
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.shutdown&lt;span class="w"&gt; &lt;/span&gt;wm.program.shutdown&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--power-off&lt;span class="w"&gt; &lt;/span&gt;--no-prompt
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.shutdown&lt;span class="w"&gt; &lt;/span&gt;sway.prompt.shutdown&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;swaynag -t warning -m &amp;#39;Do you really want to shutdown&amp;#39; -b &amp;#39;Shutdown&amp;#39; &amp;#39;&lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;&lt;span class="s2"&gt;.program.shutdown&amp;#39;&amp;quot;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.shutdown&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$sway&lt;/span&gt;.prompt.shutdown&lt;span class="w"&gt; &lt;/span&gt;

&lt;span class="c1"&gt;## Session // Sleep // &amp;lt;&amp;gt;&amp;lt;Shift&amp;gt; s ##&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.sleep&lt;span class="w"&gt; &lt;/span&gt;wm.binding.sleep&lt;span class="w"&gt; &lt;/span&gt;Shift+s
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.sleep&lt;span class="w"&gt; &lt;/span&gt;wm.program.sleep&lt;span class="w"&gt; &lt;/span&gt;systemctl&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;suspend&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;--locked&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+&lt;span class="nv"&gt;$wm&lt;/span&gt;.binding.sleep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.sleep
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Quand on veut, par exemple, redémarrer et qu'on tape &lt;code&gt;Super+Shift+b&lt;/code&gt;, ça affiche un bandeau jaune immonde au dessude l'écran. Et ce bandeau n'est pas contrôlable au clavier donc il faut utiliser la souris pour aller cliquer sur "ok"... Sérieusement ? Tout ça pour ça ?&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/regolith/bandeau.png"&gt;&lt;img alt="bandeau" src="../images/regolith/bandeau-mini.png" title="Bandeau qui s'affiche pour redémarrer"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/regolith/facepalm.jpg"&gt;&lt;img alt="facepalm" src="../images/regolith/facepalm-mini.jpg" title="Facepalm de Star Trek"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;En plus, il y a un problème dans cette configuration. Les commandes pour éteindre ou redémarrer utiliser l'argument &lt;code&gt;--no-prompt&lt;/code&gt; de &lt;code&gt;gnome-session-quit&lt;/code&gt; mais cet argument ne fonctionne qu'avec l'option &lt;code&gt;--logout&lt;/code&gt;. Utilisé pour éteindre ou redémarrer, il fait bloquer la commande avec cette erreur :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;Failed to call Shutdown: Le délai d'attente est dépassé&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;man&lt;span class="w"&gt; &lt;/span&gt;gnome-session-quit
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;--no-prompt
&lt;span class="w"&gt;    &lt;/span&gt;End&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;session&lt;span class="w"&gt; &lt;/span&gt;without&lt;span class="w"&gt; &lt;/span&gt;user&lt;span class="w"&gt; &lt;/span&gt;interaction.&lt;span class="w"&gt; &lt;/span&gt;This&lt;span class="w"&gt; &lt;/span&gt;only&lt;span class="w"&gt; &lt;/span&gt;works&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;--logout.
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Comme pour les autres modifications de raccourcis, j'utilise &lt;code&gt;sed&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;
s/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--reboot&lt;span class="w"&gt; &lt;/span&gt;--no-prompt/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--reboot/

s/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--power-off&lt;span class="w"&gt; &lt;/span&gt;--no-prompt/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--power-off/

&lt;span class="c1"&gt;#pour tester la commande :&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/55_session_keybindings
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.reboot&lt;span class="w"&gt; &lt;/span&gt;wm.program.reboot&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--reboot
set_from_resource&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$wm&lt;/span&gt;.program.shutdown&lt;span class="w"&gt; &lt;/span&gt;wm.program.shutdown&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--power-off
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;#pour écrire vraiment la modification dans le fichier :&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/55_session_keybindings
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ok, une fois &lt;code&gt;Sway&lt;/code&gt; relancé, on a des commandes fonctionnelles. Mais on a encore le bandeau moche et pas pratique. Alors pour faire mieux que ça, on va faire un autre petit script et utiliser &lt;code&gt;ilia&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;gestion-session.sh&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="c1"&gt;#!/bin/bash                                                           &lt;/span&gt;
&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-euo&lt;span class="w"&gt; &lt;/span&gt;pipefail

&lt;span class="c1"&gt;#Script pour gérer la session en passant par Ilia&lt;/span&gt;

&lt;span class="c1"&gt;#Si aucun argument :&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-eq&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Verrouiller\nDéconnexion\nVeille\nRedémarrer\nÉteindre&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;                                                                         &lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;

&lt;span class="c1"&gt;#Si il y a un argument, on regarde s&amp;#39;il correspond à ce qu&amp;#39;on attend :&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Verrouiller&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#verrouiller&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#echo &amp;quot;choix: Verrouiller la session&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;gtklock&lt;span class="w"&gt; &lt;/span&gt;--background&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;trawlcat&lt;span class="w"&gt; &lt;/span&gt;regolith.lockscreen.wallpaper.file&lt;span class="w"&gt; &lt;/span&gt;/dev/null&lt;span class="k"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Déconnexion&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#logout&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#echo &amp;quot;choix: Déconnexion&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--logout&lt;span class="w"&gt; &lt;/span&gt;--no-prompt&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;

&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Redémarrer&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#reboot&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#echo &amp;quot;choix: Redémarrer&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--reboot

&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Éteindre&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#shutdown&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#echo &amp;quot;choix: Éteindre&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;/usr/bin/gnome-session-quit&lt;span class="w"&gt; &lt;/span&gt;--power-off

&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Veille&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#sleep&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#echo &amp;quot;choix: Veille&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;systemctl&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;suspend&lt;/span&gt;

&lt;span class="k"&gt;else&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Mauvais argument&amp;quot;&lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour tester le script on peut faire cette combinaison :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;./gestion-session.sh&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;ilia&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;textlist&lt;span class="w"&gt; &lt;/span&gt;-l&lt;span class="w"&gt; &lt;/span&gt;Session&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;xargs&lt;span class="w"&gt; &lt;/span&gt;./gestion-session.sh&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="../images/regolith/session.png"&gt;&lt;img alt="session" src="../images/regolith/session-mini.png" title="Bureau avec ilia ouvert et les options pour quitter, redémarrer, éteindre, ..."&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Il n'y a plus qu'à faire un lien dans &lt;code&gt;/usr/local/bin/&lt;/code&gt; pour pouvoir utiliser ce script à partir de n'importe où et à ajouter un raccourcis pour l'utiliser facilement.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;gestion-session.sh&lt;span class="w"&gt; &lt;/span&gt;/usr/local/bin/gestion-session.sh
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai ajouté une ligne dans mon fichier &lt;code&gt;99_custom&lt;/code&gt; (voir détails plus bas) :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;99_custom
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;#Session&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Delete&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;gestion-session.sh | ilia -p textlist -l Session | xargs gestion-session.sh&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On relance &lt;code&gt;Sway&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;reload
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et ça marche! :-)&lt;/p&gt;
&lt;h2&gt;Ajouter des raccourcis&lt;/h2&gt;
&lt;h3&gt;Captures d'écran&lt;/h3&gt;
&lt;p&gt;Maintenant qu'on a retiré des raccourcis inutiles (dans mon cas) et modifié d'autres, nous pouvons aussi en ajouter.&lt;/p&gt;
&lt;p&gt;Je souhaite par exemple ajouter des raccourcis pour faire des captures d'écrans. Je souhaitais au départ ces trois fonctionnalités :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Capturer une partie de l'écran (sélection)&lt;/li&gt;
&lt;li&gt;Capturer une fenêtre&lt;/li&gt;
&lt;li&gt;Capturer tout le bureau&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai testé plusieurs outils, fouillé un peu le net (détails : &lt;a href="https://blog.simonlefort.be/regolith-prorammes-a-tester.html"&gt;Les programmes à tester pour Regolith&lt;/a&gt;) et j'ai trouvé une solution qui me convient. Je vais utiliser &lt;code&gt;grimshot&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;#Capturer la fenêtre active&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;active
/home/simon/Images/2024-09-29T14:37:49,992903816+02:00.png

&lt;span class="c1"&gt;#Capturer une sélection&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;area
/home/simon/Images/2024-09-29T14:37:54,912595358+02:00.png

&lt;span class="c1"&gt;#Capturer tout l&amp;#39;écran (seulement l&amp;#39;écran sur lequel on est)&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;output
/home/simon/Images/2024-09-29T14:38:06,800475463+02:00.png

&lt;span class="c1"&gt;#Capturer une fenêtre (avec choix)&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;window
/home/simon/Images/2024-09-29T14:38:16,145512180+02:00.png

&lt;span class="c1"&gt;#Capturer l&amp;#39;ensemble du bureau (si plusieurs écrans)&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;grimshot&lt;span class="w"&gt; &lt;/span&gt;save&lt;span class="w"&gt; &lt;/span&gt;screen
/home/simon/Images/2024-09-29T14:43:33,855852387+02:00.png
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;À noter qu'il est aussi possible d'utiliser &lt;code&gt;slurp&lt;/code&gt; et &lt;code&gt;grim&lt;/code&gt; avec différentes combinaisons, par exemple :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;#Capturer une sélection :&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;slurp&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grim&lt;span class="w"&gt; &lt;/span&gt;-g&lt;span class="w"&gt; &lt;/span&gt;-
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-al&lt;span class="w"&gt; &lt;/span&gt;Images/
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
-rw-r--r--&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;15907&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;29&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;14&lt;/span&gt;:31&lt;span class="w"&gt; &lt;/span&gt;20240929_14h31m36s_grim.png
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai décidé d'ajouter les raccourcis dans un fichier séparé des autres.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/99_custom&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;Print
&lt;span class="c1"&gt;# Printscreens&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;Print&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;grimshot save area&amp;#39;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Print&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;grimshot save active&amp;#39;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;Shift+Print&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;grimshot save output&amp;#39;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Shift+Print&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;grimshot save window&amp;#39;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;Ctrl+Print&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;grimshot save screen&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et comme ce fichier &lt;code&gt;99_custom&lt;/code&gt; n'existe pas dans la config d'origine, je peux simplement le copier dans le bon dossier :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;## Ajout de nouveaux raccourcis : &lt;/span&gt;
&lt;span class="c1"&gt;# Raccourcis pour les captures d&amp;#39;écran&lt;/span&gt;
&lt;span class="nv"&gt;customFile&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/usr/share/regolith/sway/config.d/99_custom&amp;#39;&lt;/span&gt;
sudo&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;99_custom&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$customFile&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Gestion du clipboard&lt;/h3&gt;
&lt;p&gt;Il est indispensable pour moi d'avoir une gestion efficace du clipboard et de pouvoir garder plusieurs bouts de textes copiés pour les recoller plus tard.&lt;/p&gt;
&lt;p&gt;J'utilisais avant &lt;code&gt;greenclip&lt;/code&gt; mais il ne fonctionne pas sur Wayland.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Avec Wayland, l'enregistrement de l'écran (capture photo ou vidéo) doit être géré par l'environnement, alors qu'il était jusqu'à présent indépendant de l'environnement utilisé. Vos anciens logiciels de capture d'écran pour Xorg risquent de ne plus fonctionner !&lt;/p&gt;
&lt;p&gt;Il s'agit là d'une question de sécurité : les applications n'ayant pas la possibilité de "connaître" la position et le contenu des fenêtres de leurs voisines avec Wayland, ces informations doivent être "demandées" à l'environnement (et notamment au compositeur en ce qui concerne les fenêtres). 
(Source: &lt;a href="https://doc.ubuntu-fr.org/wayland#ce_que_nous_apprend_weston"&gt;ubuntu-fr.org&lt;/a&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Après plusieurs essais et la découverte des commandes &lt;code&gt;wl-copy&lt;/code&gt; et &lt;code&gt;wl-paste&lt;/code&gt; (qui appartiennent à &lt;code&gt;wl-clipboard&lt;/code&gt;), j'ai finalement décidé d'utilisé &lt;a href="https://github.com/sentriz/cliphist"&gt;cliphist&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On commence par télécharger la dernière version de &lt;code&gt;cliphist&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;https://github.com/sentriz/cliphist/releases/download/v0.5.0/v0.5.0-linux-amd64&lt;span class="w"&gt; &lt;/span&gt;-O&lt;span class="w"&gt; &lt;/span&gt;cliphist-v0.5.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(Pensez à vérifier si &lt;code&gt;cliphist&lt;/code&gt; n'est pas présent dans les dépôts de votre distribution. Ce nn'est pas -encore?- le cas pour Debian 12 à l'heure où j'écris ces lignes.)&lt;/p&gt;
&lt;p&gt;On rend &lt;code&gt;cliphist&lt;/code&gt; exécutable et on fait un lien (ou on copie) l'exécutable dans &lt;code&gt;/usr/bin/&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;chmod&lt;span class="w"&gt; &lt;/span&gt;+x&lt;span class="w"&gt; &lt;/span&gt;cliphist-v0.5.0
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;cliphist-v0.5.0&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/cliphist
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut maintenant l'ajouter dans la configuration de Sway pour qu'il démarre en arrière plan au lancement de la session. J'ajoute donc quelques lignes dans mon fichiers &lt;code&gt;99_custom&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;#Clipboard&lt;/span&gt;
&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;wl-paste&lt;span class="w"&gt; &lt;/span&gt;--watch&lt;span class="w"&gt; &lt;/span&gt;cliphist&lt;span class="w"&gt; &lt;/span&gt;store
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+v&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;cliphist list | ilia -p textlist | cliphist decode | wl-copy&amp;#39;&lt;/span&gt;
bindsym&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$mod&lt;/span&gt;+Shift+v&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exec&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;cliphist list | ilia -p textlist | cliphist delete&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On relance &lt;code&gt;Sway&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;swaymsg&lt;span class="w"&gt; &lt;/span&gt;reload
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Maintenant si on appuie sur &lt;code&gt;Super + v&lt;/code&gt;, on a une belle fenêtre &lt;code&gt;ilia&lt;/code&gt; qui s'ouvre avec le contenu du clipboard :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/regolith/cliphist-ilia.png"&gt;&lt;img alt="cliphist" src="../images/regolith/cliphist-ilia-mini.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Si on copie du texte et qu'on réouvre cette fenêtre : &lt;/p&gt;
&lt;p&gt;&lt;a href="../images/regolith/cliphist2.png"&gt;&lt;img alt="cliphist" src="../images/regolith/cliphist2-mini.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Si on veut supprimer une des entrée du clipboard, on peut utiliser le raccourci &lt;code&gt;Super+Maj+v&lt;/code&gt; ou on peut utiliser cette commande :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cliphist&lt;span class="w"&gt; &lt;/span&gt;list&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;ilia&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;textlist&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;cliphist&lt;span class="w"&gt; &lt;/span&gt;delete
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Un script pour faire tout ça d'un coup&lt;/h1&gt;
&lt;p&gt;Pour les différentes étapes de modification/suppression/ajout de raccourcis, j'ai essayé de faire ça de manière à pouvoir automatiser d'un coup l'ensemble des modifications sur la configuration.&lt;/p&gt;
&lt;p&gt;Je me retrouve donc avec ce dossier (que je gère avec &lt;code&gt;git&lt;/code&gt;) : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;-l&lt;span class="w"&gt; &lt;/span&gt;regolith-config/
total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;36&lt;/span&gt;
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1705&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;15&lt;/span&gt;:23&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3807&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;15&lt;/span&gt;:56&lt;span class="w"&gt; &lt;/span&gt;40_workspace-config.sed
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;149&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;oct&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:52&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings.sed
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;87&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;14&lt;/span&gt;:48&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings.sed
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;461&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;oct&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;:31&lt;span class="w"&gt; &lt;/span&gt;99_custom
-rwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1083&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;oct&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;11&lt;/span&gt;:22&lt;span class="w"&gt; &lt;/span&gt;gestion-session.sh
-rwxr-xr-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;711&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;oct&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:53&lt;span class="w"&gt; &lt;/span&gt;modification-regolith-keybindings.sh
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3759&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;28&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sep&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;14&lt;/span&gt;:18&lt;span class="w"&gt; &lt;/span&gt;README.md
-rw-r--r--&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;54&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;oct&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;:56&lt;span class="w"&gt; &lt;/span&gt;session.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;regolith-config/modification-regolith-keybindings.sh&lt;span class="w"&gt; &lt;/span&gt;

&lt;span class="c1"&gt;#!/bin/bash                                                           &lt;/span&gt;
&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-euo&lt;span class="w"&gt; &lt;/span&gt;pipefail

&lt;span class="c1"&gt;#Script pour modifier les raccourcis clavier de Regolith à grand coups de sed&lt;/span&gt;

sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;60_config_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/60_config_keybindings

sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;30_navigation.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/30_navigation

sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;40_workspace-config.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/common/config.d/40_workspace-config

sudo&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;55_session_keybindings.sed&lt;span class="w"&gt; &lt;/span&gt;/usr/share/regolith/sway/config.d/55_session_keybindings

&lt;span class="c1"&gt;## Ajout de nouveaux raccourcis : &lt;/span&gt;
&lt;span class="c1"&gt;# Raccourcis pour les captures d&amp;#39;écran&lt;/span&gt;
&lt;span class="nv"&gt;customFile&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/usr/share/regolith/sway/config.d/99_custom&amp;#39;&lt;/span&gt;

sudo&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;99_custom&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$customFile&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Changer d'utilisateur sans quitter la session en cours&lt;/h1&gt;
&lt;p&gt;Grâce à &lt;a href=""&gt;@charles@akk.de-lacom.be&lt;/a&gt; et &lt;a href="https://akk.de-lacom.be/objects/867819e4-5758-4c85-93f3-cb8eb4c05975"&gt;son message sur mastodon&lt;/a&gt;, voici la solution choisie pour changer de session sans devoir tout fermer et se déconnecter : &lt;code&gt;Ctrl + Alt + F1&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Je pensais arriver sur un invite de commande mais j'arrive sur le gestionnaire de connexion (dans mon cas gdm3, installé avec gnome pour que les autres utilisateurs de l'ordinateur puisse avoir une session &lt;em&gt;normale&lt;/em&gt; &lt;code&gt;;-)&lt;/code&gt; ). C'est juste parfait. Et quand on est sur cette autre session et qu'on tape &lt;code&gt;Ctrl + Alt + F2&lt;/code&gt;, on revient sur ma session principale.&lt;/p&gt;
&lt;h1&gt;Ce qu'il reste à faire&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Je pensais changer le lockscreen (parce qu'il bloque complètement l'ordinateur pour une autre personne qui voudrait l'utiliser et qui ne connait pas le mot de passe de ma session...) mais l'astuce du &lt;code&gt;Ctrl + Alt + F1&lt;/code&gt; permet de revenir au gestionnaire de connexion donc ça va rester comme ça.&lt;/li&gt;
&lt;li&gt;Investiguer &lt;a href="https://blog.simonlefort.be/regolith-prorammes-a-tester.html"&gt;programmes trouvés pendant mes recherches&lt;/a&gt; et qui pourraient améliorer encore mon utilisation de Regolith&lt;/li&gt;
&lt;li&gt;Vérifier les autres raccourcis clavier pour voir si tout marche comme je veux / ai besoin&lt;/li&gt;
&lt;/ul&gt;</content><category term="Blog"></category><category term="regolith"></category><category term="linux"></category><category term="debian"></category></entry><entry><title>Installation de Regolith sur une Debian 12</title><link href="https://blog.simonlefort.be/regolith-on-debian.html" rel="alternate"></link><published>2024-09-26T13:31:00+02:00</published><updated>2024-09-26T13:31:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2024-09-26:/regolith-on-debian.html</id><summary type="html">&lt;p&gt;Ça fait quelques années que j'utilise Regolith Linux (j'ai créé la page sur &lt;a href="https://simonlefort.be/informatique:regolith"&gt;mon wiki&lt;/a&gt; en aout 2020...) et jusqu'ici, j'ai toujours mis à jours mon ordinateur principal avec les upgrade successifs. J'ai cependant quelques problèmes qui se sont accumulés avec le temps et les bidouilles successives pas toujours heureuses …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Ça fait quelques années que j'utilise Regolith Linux (j'ai créé la page sur &lt;a href="https://simonlefort.be/informatique:regolith"&gt;mon wiki&lt;/a&gt; en aout 2020...) et jusqu'ici, j'ai toujours mis à jours mon ordinateur principal avec les upgrade successifs. J'ai cependant quelques problèmes qui se sont accumulés avec le temps et les bidouilles successives pas toujours heureuses... Et la version d'Ubuntu commencent à dater au point que Canonical me propose de passer sur &lt;a href="https://ubuntu.com/security/esm"&gt;Ubuntu Expended Security Maintenance (ESM)&lt;/a&gt; ce qui ne m'attire pas beaucoup. &lt;code&gt;-_-&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Bref. Je pars pour une réinstallation complète de l'ordinateur et cette fois, même si je veux garder Regolith, j'aimerais une base &lt;a href="https://www.debian.org/index.fr.html"&gt;debian&lt;/a&gt;. Évidemment, ce n'est pas la solution la plus facile, même si l'équipe de Regolith &lt;a href="https://regolith-desktop.com/posts/status_update_08_24/"&gt;a annoncé sa volonté de simplifier l'installation sur Debian&lt;/a&gt;. Avant, il y avait une ISO pour Ubuntu mais ce n'est plus le cas non plus.&lt;/p&gt;
&lt;p&gt;La procédure est décrite sur leur site : &lt;a href="https://regolith-desktop.com/docs/using-regolith/install/"&gt;https://regolith-desktop.com/docs/using-regolith/install/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;J'ai également trouvé une vidéo (en anglais) qui détaille l'installation : &lt;a href="https://www.youtube.com/watch?v=qdRssFwlNjY"&gt;https://www.youtube.com/watch?v=qdRssFwlNjY&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;C'est parti! La base, ça reste de télécharger &lt;a href="https://cdimage.debian.org/debian-cd/current/amd64/bt-cd/"&gt;la dernière iso de Debian&lt;/a&gt; (via Torrent, c'est mieux). On met ça sur une clé usb, avec par exemple &lt;a href="https://simonlefort.be/informatique:ddrescue"&gt;ddrescue&lt;/a&gt;, on &lt;strong&gt;sauvegarde tout ce qui doit l'être&lt;/strong&gt; (pensez aux configs cheloues que vous voulez pas refaire, aux clés SSH ou GPG, aux dossier de Firefox ou Thunderbird, aux sauvegardes de vos jeux, aux fichiers &lt;code&gt;.bashrc&lt;/code&gt; ou &lt;code&gt;.bash_aliases&lt;/code&gt;, aux éventuelles photos, ...). Une fois tout bien sauvegardé, on branche la clé USB, on redémarre l'ordinateur, on accède au bios et on lance le boot sur la clé USB.&lt;/p&gt;
&lt;p&gt;L'installation de Debian est assez classique, je vais pas détailler. Au moment de choisir l'environnement graphique à installer, il faut cocher uniquement "serveur SSH" et "utilitaires usuels du système". Nous installerons l'environnement graphique par la suite. (C'est en tout cas la méthode conseillée par &lt;a href="https://youtu.be/qdRssFwlNjY?si=HtfAKnxzJ5z33WKY&amp;amp;t=257"&gt;Stephen de la chaine Stephen's Tech Talks&lt;/a&gt;.)&lt;/p&gt;
&lt;p&gt;Une fois l'ordinateur installé et redémarré, on a simplement accès à un terminal. À ce moment là, je me suis connecté dessus en &lt;em&gt;ssh&lt;/em&gt; pour pouvoir plus facilement faire des copier/coller des commandes. Les instructions sont sur le site (voir plus haut) et également dans &lt;a href="https://regolith-desktop.com/install-release-debian-12-amd64.txt"&gt;ce fichier&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Mais avant de pouvoir lancer ces commandes, il faut faire deux trois trucs : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;su&lt;span class="w"&gt; &lt;/span&gt;-

root@betula:~#&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;update

root@betula:~#&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;gpg

root@betula:~#&lt;span class="w"&gt; &lt;/span&gt;adduser&lt;span class="w"&gt; &lt;/span&gt;simon&lt;span class="w"&gt; &lt;/span&gt;sudo
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai du quitter la connexion ssh et me reconnecter pour que mon utilisateur (simon) ait bien l'autorisation d'utiliser sudo.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;-qO&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="w"&gt; &lt;/span&gt;https://regolith-desktop.org/regolith.key&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;gpg&lt;span class="w"&gt; &lt;/span&gt;--dearmor&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;tee&lt;span class="w"&gt; &lt;/span&gt;/usr/share/keyrings/regolith-archive-keyring.gpg&lt;span class="w"&gt; &lt;/span&gt;&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;/dev/null

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;deb&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;[arch=amd64 signed-by=/usr/share/keyrings/regolith-archive-keyring.gpg] https://regolith-desktop.org/release-3_0-debian-bookworm-amd64 bookworm main&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;tee&lt;span class="w"&gt; &lt;/span&gt;/etc/apt/sources.list.d/regolith.list

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;update
Atteint&lt;span class="w"&gt; &lt;/span&gt;:1&lt;span class="w"&gt; &lt;/span&gt;http://security.debian.org/debian-security&lt;span class="w"&gt; &lt;/span&gt;bookworm-security&lt;span class="w"&gt; &lt;/span&gt;InRelease
Atteint&lt;span class="w"&gt; &lt;/span&gt;:2&lt;span class="w"&gt; &lt;/span&gt;http://ftp.be.debian.org/debian&lt;span class="w"&gt; &lt;/span&gt;bookworm&lt;span class="w"&gt; &lt;/span&gt;InRelease&lt;span class="w"&gt;                           &lt;/span&gt;
Atteint&lt;span class="w"&gt; &lt;/span&gt;:3&lt;span class="w"&gt; &lt;/span&gt;http://ftp.be.debian.org/debian&lt;span class="w"&gt; &lt;/span&gt;bookworm-updates&lt;span class="w"&gt; &lt;/span&gt;InRelease&lt;span class="w"&gt;                     &lt;/span&gt;
Réception&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;:4&lt;span class="w"&gt; &lt;/span&gt;https://regolith-desktop.org/release-3_0-debian-bookworm-amd64&lt;span class="w"&gt; &lt;/span&gt;bookworm&lt;span class="w"&gt; &lt;/span&gt;InRelease&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;.400&lt;span class="w"&gt; &lt;/span&gt;B&lt;span class="o"&gt;]&lt;/span&gt;
Réception&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;:5&lt;span class="w"&gt; &lt;/span&gt;https://regolith-desktop.org/release-3_0-debian-bookworm-amd64&lt;span class="w"&gt; &lt;/span&gt;bookworm/main&lt;span class="w"&gt; &lt;/span&gt;amd64&lt;span class="w"&gt; &lt;/span&gt;Packages&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="m"&gt;32&lt;/span&gt;,4&lt;span class="w"&gt; &lt;/span&gt;kB&lt;span class="o"&gt;]&lt;/span&gt;
&lt;span class="m"&gt;34&lt;/span&gt;,8&lt;span class="w"&gt; &lt;/span&gt;ko&lt;span class="w"&gt; &lt;/span&gt;réceptionnés&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;1s&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;29&lt;/span&gt;,9&lt;span class="w"&gt; &lt;/span&gt;ko/s&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ok, le dépôt de Regolith est bien ajouté. Maintenant, on va passer à l'installation à proprement parler. Ma compréhension du truc, c'était qu'installer "regolith-session-flashback" permet de rester avec X11/i3 (et pas de passer sur Wayland/Sway) mais manifestement, il y a quelque chose que je n'ai pas encore bien compris... &lt;code&gt;^_^&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-desktop&lt;span class="w"&gt; &lt;/span&gt;regolith-session-flashback&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-blackhole&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-solarized-dark pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-default-loader pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-mirage&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-gruvbox pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-dracula&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-lascaille pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-dark&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-nord pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-default&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-i3-default pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-nevil&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-2 pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Certains&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;peuvent&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés.&lt;span class="w"&gt; &lt;/span&gt;Ceci&lt;span class="w"&gt; &lt;/span&gt;peut&lt;span class="w"&gt; &lt;/span&gt;signifier
que&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;avez&lt;span class="w"&gt; &lt;/span&gt;demandé&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;impossible, ou bien, si vous utilisez&lt;/span&gt;
&lt;span class="s1"&gt;la distribution unstable, que certains paquets n&amp;#39;&lt;/span&gt;ont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;encore
été&lt;span class="w"&gt; &lt;/span&gt;créés&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;sont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;sortis&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="s1"&gt;&amp;#39;Incoming.&lt;/span&gt;
&lt;span class="s1"&gt;L&amp;#39;&lt;/span&gt;information&lt;span class="w"&gt; &lt;/span&gt;suivante&lt;span class="w"&gt; &lt;/span&gt;devrait&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;aider&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;résoudre&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;situation&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;

Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;contiennent&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;dépendances&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;satisfaites&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt; &lt;/span&gt;solarc-theme&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;gnome-themes-standard&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="s1"&gt;&amp;#39;est pas installable&lt;/span&gt;
&lt;span class="s1"&gt;E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l&amp;#39;&lt;/span&gt;état&lt;span class="w"&gt; &lt;/span&gt;».
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ah... On va devoir procéder par étapes.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-desktop

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-session-flashback

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-blackhole&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-solarized-dark pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-default-loader pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-mirage&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-gruvbox pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-dracula&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-lascaille pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-dark&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-nord pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-default&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-i3-default pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
Note&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;sélection&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;regolith-look-nevil&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;expression rationnelle « regolith-look-* »&lt;/span&gt;
&lt;span class="s1"&gt;Note : sélection de regolith-look-2 pour l&amp;#39;&lt;/span&gt;expression&lt;span class="w"&gt; &lt;/span&gt;rationnelle&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-look-*&lt;span class="w"&gt; &lt;/span&gt;»
regolith-look-default-loader&lt;span class="w"&gt; &lt;/span&gt;est&lt;span class="w"&gt; &lt;/span&gt;déjà&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;version&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;plus&lt;span class="w"&gt; &lt;/span&gt;récente&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;.8.1-1regolith-bookworm&lt;span class="o"&gt;)&lt;/span&gt;.
regolith-look-default-loader&lt;span class="w"&gt; &lt;/span&gt;passé&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;installé&lt;span class="w"&gt; &lt;/span&gt;manuellement&lt;span class="w"&gt; &lt;/span&gt;».
regolith-look-default&lt;span class="w"&gt; &lt;/span&gt;est&lt;span class="w"&gt; &lt;/span&gt;déjà&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;version&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;plus&lt;span class="w"&gt; &lt;/span&gt;récente&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;.8.1-1regolith-bookworm&lt;span class="o"&gt;)&lt;/span&gt;.
regolith-look-default&lt;span class="w"&gt; &lt;/span&gt;passé&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;installé&lt;span class="w"&gt; &lt;/span&gt;manuellement&lt;span class="w"&gt; &lt;/span&gt;».
Certains&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;peuvent&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés.&lt;span class="w"&gt; &lt;/span&gt;Ceci&lt;span class="w"&gt; &lt;/span&gt;peut&lt;span class="w"&gt; &lt;/span&gt;signifier
que&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;avez&lt;span class="w"&gt; &lt;/span&gt;demandé&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;impossible, ou bien, si vous utilisez&lt;/span&gt;
&lt;span class="s1"&gt;la distribution unstable, que certains paquets n&amp;#39;&lt;/span&gt;ont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;encore
été&lt;span class="w"&gt; &lt;/span&gt;créés&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;sont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;sortis&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="s1"&gt;&amp;#39;Incoming.&lt;/span&gt;
&lt;span class="s1"&gt;L&amp;#39;&lt;/span&gt;information&lt;span class="w"&gt; &lt;/span&gt;suivante&lt;span class="w"&gt; &lt;/span&gt;devrait&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;aider&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;résoudre&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;situation&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;

Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;contiennent&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;dépendances&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;satisfaites&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt; &lt;/span&gt;solarc-theme&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;gnome-themes-standard&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="s1"&gt;&amp;#39;est pas installable&lt;/span&gt;
&lt;span class="s1"&gt;E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l&amp;#39;&lt;/span&gt;état&lt;span class="w"&gt; &lt;/span&gt;».
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Mmmh... Quel est le thème qui pose un soucis ? Probablement "solarized-dark"... &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-look-solarized-dark&lt;span class="w"&gt; &lt;/span&gt;
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Certains&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;peuvent&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés.&lt;span class="w"&gt; &lt;/span&gt;Ceci&lt;span class="w"&gt; &lt;/span&gt;peut&lt;span class="w"&gt; &lt;/span&gt;signifier
que&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;avez&lt;span class="w"&gt; &lt;/span&gt;demandé&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;impossible, ou bien, si vous utilisez&lt;/span&gt;
&lt;span class="s1"&gt;la distribution unstable, que certains paquets n&amp;#39;&lt;/span&gt;ont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;encore
été&lt;span class="w"&gt; &lt;/span&gt;créés&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;sont&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;sortis&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="s1"&gt;&amp;#39;Incoming.&lt;/span&gt;
&lt;span class="s1"&gt;L&amp;#39;&lt;/span&gt;information&lt;span class="w"&gt; &lt;/span&gt;suivante&lt;span class="w"&gt; &lt;/span&gt;devrait&lt;span class="w"&gt; &lt;/span&gt;vous&lt;span class="w"&gt; &lt;/span&gt;aider&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;résoudre&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;situation&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;

Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;contiennent&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;dépendances&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;satisfaites&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt; &lt;/span&gt;solarc-theme&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;gnome-themes-standard&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="s1"&gt;&amp;#39;est pas installable&lt;/span&gt;
&lt;span class="s1"&gt;E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l&amp;#39;&lt;/span&gt;état&lt;span class="w"&gt; &lt;/span&gt;».
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Bon, je vais installer les autres. Et on verra plus tard.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-look-blackhole&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu&lt;span class="w"&gt; &lt;/span&gt;regolith-look-default-loader&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-mirage&lt;span class="w"&gt; &lt;/span&gt;regolith-look-gruvbox&lt;span class="w"&gt; &lt;/span&gt;regolith-look-dracula&lt;span class="w"&gt; &lt;/span&gt;regolith-look-lascaille&lt;span class="w"&gt; &lt;/span&gt;regolith-look-ayu-dark&lt;span class="w"&gt; &lt;/span&gt;regolith-look-nord&lt;span class="w"&gt; &lt;/span&gt;regolith-look-default&lt;span class="w"&gt; &lt;/span&gt;regolith-look-i3-default&lt;span class="w"&gt; &lt;/span&gt;regolith-look-nevil
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ok, Regolith est installé, il y a une interface graphique (normalement mais faudra rédémarrer pour être sûr... :-P), il y a des thèmes, ... Que reste-t-il à faire ? Dans la &lt;a href="https://youtu.be/qdRssFwlNjY?si=ggMeeUCKBslH7B1Y&amp;amp;t=653"&gt;vidéo de Stephen&lt;/a&gt; il installe quelques trucs en plus.&lt;/p&gt;
&lt;p&gt;Il installe : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;i3xrocks-focused-window-name - Indicator to show focused window name.&lt;/li&gt;
&lt;li&gt;i3xrocks-rofication - Status indicator for rofication&lt;/li&gt;
&lt;li&gt;i3xrocks-info/inconnu - Indicator launch Remontoire.&lt;/li&gt;
&lt;li&gt;i3xrocks-app-launcher - Button to open app launcher.&lt;/li&gt;
&lt;li&gt;i3xrocks-memory - Indicator to show memory utilization.&lt;/li&gt;
&lt;li&gt;i3xrocks-battery - Indicator to show battery status.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ça ne me semble pas indispensable dans un premier temps. Mais je note qu'il y a pas mal d'indicateurs qu'on peut utiliser. On peut voir la liste complète en faisant une recherche : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;search&lt;span class="w"&gt; &lt;/span&gt;i3xrocks
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Mais je suis trop impatient alors c'est le moment de rédémarrer et de voir ce que ça donne!&lt;/p&gt;
&lt;p&gt;Ah... Ben c'est toujours un invite de commande qui nous accueille. J'ai du oublier quelque chose... (/me regarde la vidéo...) Ah oui, il manque un gestionnaire de connexion.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;lightdm

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;systemctl&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;enable&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;lightdm
Synchronizing&lt;span class="w"&gt; &lt;/span&gt;state&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;lightdm.service&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;SysV&lt;span class="w"&gt; &lt;/span&gt;service&lt;span class="w"&gt; &lt;/span&gt;script&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;/lib/systemd/systemd-sysv-install.
Executing:&lt;span class="w"&gt; &lt;/span&gt;/lib/systemd/systemd-sysv-install&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;enable&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;lightdm
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Dans la suite de la vidéo, il en profite pour installer zram. Ce n'est pas directement lié à Regolith mais ça ne peut pas faire de mal alors allons-y.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;zram-tools&lt;span class="w"&gt; &lt;/span&gt;

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;ALGO=zstd\nPERCENT=60&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;tee&lt;span class="w"&gt; &lt;/span&gt;-a&lt;span class="w"&gt; &lt;/span&gt;/etc/default/zramswap&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="nv"&gt;ALGO&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;zstd
&lt;span class="nv"&gt;PERCENT&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;60&lt;/span&gt;

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;systemctl&lt;span class="w"&gt; &lt;/span&gt;reload&lt;span class="w"&gt; &lt;/span&gt;zramswap.service&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et maintenant, on peut (à nouveau...) redémarrer!&lt;/p&gt;
&lt;p&gt;Alors, j'arrive bien sur lightdm, je peux bien lancer ma session mais j'arrive sur une erreur sur la barre en dessous.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;Error&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;status_command&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;not&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;found&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;or&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;missing&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;library&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;dependency&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;exit&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;127&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Je n'ai pas accès à grand chose, je n'arrive pas à lancer rofi... J'ai repris ma session via SSH et j'ai installé quelques trucs i3xrocks en me disant que c'est peut-être ce qui manque.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-volume&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-updates&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-rofication&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-next-workspace&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-app-launcher&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-focused-window-name&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-info&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-media-player
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;

&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-updates&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;update-notifier-common&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;est&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;installable
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Décidément, il y a quand même quelques trucs pas installables ou problématiques dans cette histoire... Bon, on vire i3xrocks-updates.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-volume&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-updates&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-rofication&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-next-workspace&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-app-launcher&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-focused-window-name&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-info&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-media-player
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Après l'installation de tout ça, on redémarre à nouveau. Et -déception- le problème n'est pas réglé. J'ai quand même accès à un terminal (avec "Super+Enter") donc j'en profite pour installer quelques trucs qui manquent encore : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-rofi&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-rofication&lt;span class="w"&gt; &lt;/span&gt;regolith-rofi-config
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai cherché des explications et je suis tombé sur &lt;a href="https://github.com/orgs/regolith-linux/discussions/973"&gt;cette discussions sur github&lt;/a&gt;. J'ai l'impression d'être dans le même cas de figure que "dahadaller". J'ai en tout cas les mêmes messages d'erreurs :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;i3xrocks&lt;span class="w"&gt; &lt;/span&gt;-u&lt;span class="w"&gt; &lt;/span&gt;~/.config/regolith3/i3xrocks/conf.d&lt;span class="w"&gt; &lt;/span&gt;-d&lt;span class="w"&gt; &lt;/span&gt;/usr/share/i3xrocks/conf.d
&amp;lt;&lt;span class="m"&gt;2&lt;/span&gt;&amp;gt;Unable&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;access&lt;span class="w"&gt; &lt;/span&gt;Xresources.
&amp;lt;&lt;span class="m"&gt;3&lt;/span&gt;&amp;gt;failed&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;load&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;01_setup
&amp;lt;&lt;span class="m"&gt;2&lt;/span&gt;&amp;gt;Failed&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;load&lt;span class="w"&gt; &lt;/span&gt;configuration.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ça ne règle évidemment pas mon problème... Je remarque aussi qu'il n'y a aucun fichier "Xresources"...&lt;/p&gt;
&lt;p&gt;Finalement, j'ai tout supprimé : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;purge&lt;span class="w"&gt; &lt;/span&gt;regolith*

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;autoremove&lt;span class="w"&gt; &lt;/span&gt;

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;reboot

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-desktop
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;supplémentaires&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;seront&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;ayu-theme&lt;span class="w"&gt; &lt;/span&gt;clipman&lt;span class="w"&gt; &lt;/span&gt;dconf-cli&lt;span class="w"&gt; &lt;/span&gt;fonts-nerd-font-bitstreamverasansmono
&lt;span class="w"&gt;  &lt;/span&gt;gnome-session-bin&lt;span class="w"&gt; &lt;/span&gt;gtklock&lt;span class="w"&gt; &lt;/span&gt;i3-next-workspace&lt;span class="w"&gt; &lt;/span&gt;i3-wm&lt;span class="w"&gt; &lt;/span&gt;i3status-rs&lt;span class="w"&gt; &lt;/span&gt;ilia
&lt;span class="w"&gt;  &lt;/span&gt;javascript-common&lt;span class="w"&gt; &lt;/span&gt;jq&lt;span class="w"&gt; &lt;/span&gt;kanshi&lt;span class="w"&gt; &lt;/span&gt;libanyevent-i3-perl&lt;span class="w"&gt; &lt;/span&gt;libanyevent-perl
&lt;span class="w"&gt;  &lt;/span&gt;libasync-interrupt-perl&lt;span class="w"&gt; &lt;/span&gt;libcommon-sense-perl&lt;span class="w"&gt; &lt;/span&gt;libev-perl&lt;span class="w"&gt; &lt;/span&gt;libev4
&lt;span class="w"&gt;  &lt;/span&gt;libgtk-layer-shell0&lt;span class="w"&gt; &lt;/span&gt;libguard-perl&lt;span class="w"&gt; &lt;/span&gt;libinih1&lt;span class="w"&gt; &lt;/span&gt;libjq1&lt;span class="w"&gt; &lt;/span&gt;libjs-jquery
&lt;span class="w"&gt;  &lt;/span&gt;libjs-sphinxdoc&lt;span class="w"&gt; &lt;/span&gt;libjs-underscore&lt;span class="w"&gt; &lt;/span&gt;libjson-xs-perl&lt;span class="w"&gt; &lt;/span&gt;libonig5&lt;span class="w"&gt; &lt;/span&gt;libpcre3
&lt;span class="w"&gt;  &lt;/span&gt;libplayerctl2&lt;span class="w"&gt; &lt;/span&gt;libseat1&lt;span class="w"&gt; &lt;/span&gt;libtrawldb&lt;span class="w"&gt; &lt;/span&gt;libtypes-serialiser-perl&lt;span class="w"&gt; &lt;/span&gt;libwlroots10
&lt;span class="w"&gt;  &lt;/span&gt;libxcb-composite0&lt;span class="w"&gt; &lt;/span&gt;libxcb-cursor0&lt;span class="w"&gt; &lt;/span&gt;libxcb-icccm4&lt;span class="w"&gt; &lt;/span&gt;libxcb-image0
&lt;span class="w"&gt;  &lt;/span&gt;libxcb-keysyms1&lt;span class="w"&gt; &lt;/span&gt;libxcb-render-util0&lt;span class="w"&gt; &lt;/span&gt;libxcb-xinerama0&lt;span class="w"&gt; &lt;/span&gt;libxcb-xinput0
&lt;span class="w"&gt;  &lt;/span&gt;libxcb-xrm0&lt;span class="w"&gt; &lt;/span&gt;libxdo3&lt;span class="w"&gt; &lt;/span&gt;light&lt;span class="w"&gt; &lt;/span&gt;playerctl&lt;span class="w"&gt; &lt;/span&gt;python3-i3ipc&lt;span class="w"&gt; &lt;/span&gt;python3-xlib
&lt;span class="w"&gt;  &lt;/span&gt;regolith-avizo&lt;span class="w"&gt; &lt;/span&gt;regolith-control-center&lt;span class="w"&gt; &lt;/span&gt;regolith-default-settings
&lt;span class="w"&gt;  &lt;/span&gt;regolith-displayd&lt;span class="w"&gt; &lt;/span&gt;regolith-ftue&lt;span class="w"&gt; &lt;/span&gt;regolith-inputd&lt;span class="w"&gt; &lt;/span&gt;regolith-look-default
&lt;span class="w"&gt;  &lt;/span&gt;regolith-look-default-loader&lt;span class="w"&gt; &lt;/span&gt;regolith-powerd&lt;span class="w"&gt; &lt;/span&gt;regolith-rofication
&lt;span class="w"&gt;  &lt;/span&gt;regolith-session-common&lt;span class="w"&gt; &lt;/span&gt;regolith-session-sway
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-audio-idle-inhibit&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-background
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-control-center-regolith&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-dbus-activation
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-default-style&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-gaps&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-gsd
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-gtklock&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-i3status-rs&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-ilia
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-media-keys&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-polkit&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-root-config
&lt;span class="w"&gt;  &lt;/span&gt;regolith-sway-screensharing&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-session&lt;span class="w"&gt; &lt;/span&gt;regolith-sway-unclutter
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-base-launchers&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-config&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-ftue
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-navigation&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-networkmanager
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-next-workspace&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-resize&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-rofication-ilia
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-workspace-config&lt;span class="w"&gt; &lt;/span&gt;suckless-tools&lt;span class="w"&gt; &lt;/span&gt;sway-audio-idle-inhibit
&lt;span class="w"&gt;  &lt;/span&gt;sway-backgrounds&lt;span class="w"&gt; &lt;/span&gt;sway-regolith&lt;span class="w"&gt; &lt;/span&gt;swaybg&lt;span class="w"&gt; &lt;/span&gt;swayidle&lt;span class="w"&gt; &lt;/span&gt;trawlcat&lt;span class="w"&gt; &lt;/span&gt;trawld&lt;span class="w"&gt; &lt;/span&gt;trawldb
&lt;span class="w"&gt;  &lt;/span&gt;wayland-protocols&lt;span class="w"&gt; &lt;/span&gt;xdg-desktop-portal-wlr&lt;span class="w"&gt; &lt;/span&gt;xdotool&lt;span class="w"&gt; &lt;/span&gt;xwayland
Paquets&lt;span class="w"&gt; &lt;/span&gt;suggérés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;apache2&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;lighttpd&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;httpd&lt;span class="w"&gt; &lt;/span&gt;libevent-perl&lt;span class="w"&gt; &lt;/span&gt;libio-async-perl&lt;span class="w"&gt; &lt;/span&gt;libpoe-perl
&lt;span class="w"&gt;  &lt;/span&gt;libtask-weaken-perl&lt;span class="w"&gt; &lt;/span&gt;audacious&lt;span class="w"&gt; &lt;/span&gt;cmus&lt;span class="w"&gt; &lt;/span&gt;mopidy&lt;span class="w"&gt; &lt;/span&gt;mpd&lt;span class="w"&gt; &lt;/span&gt;mpv&lt;span class="w"&gt; &lt;/span&gt;quodlibet
&lt;span class="w"&gt;  &lt;/span&gt;rhythmbox-plugins&lt;span class="w"&gt; &lt;/span&gt;vlc&lt;span class="w"&gt; &lt;/span&gt;gnome-software&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;gnome-packagekit
&lt;span class="w"&gt;  &lt;/span&gt;gstreamer1.0-pulseaudio&lt;span class="w"&gt; &lt;/span&gt;update-manager&lt;span class="w"&gt; &lt;/span&gt;software-properties-gtk&lt;span class="w"&gt; &lt;/span&gt;dwm&lt;span class="w"&gt; &lt;/span&gt;stterm
&lt;span class="w"&gt;  &lt;/span&gt;surf&lt;span class="w"&gt; &lt;/span&gt;swaylock
Paquets&lt;span class="w"&gt; &lt;/span&gt;recommandés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-ilia
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-look-nord

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-session-flashback
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;supplémentaires&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;seront&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;gnome-system-monitor&lt;span class="w"&gt; &lt;/span&gt;i3-swap-focus&lt;span class="w"&gt; &lt;/span&gt;i3xrocks&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-cpu-usage
&lt;span class="w"&gt;  &lt;/span&gt;i3xrocks-net-traffic&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-time&lt;span class="w"&gt; &lt;/span&gt;libatkmm-1.6-1v5&lt;span class="w"&gt; &lt;/span&gt;libcairomm-1.0-1v5
&lt;span class="w"&gt;  &lt;/span&gt;libconfig9&lt;span class="w"&gt; &lt;/span&gt;libglibmm-2.4-1v5&lt;span class="w"&gt; &lt;/span&gt;libglu1-mesa&lt;span class="w"&gt; &lt;/span&gt;libgtkmm-3.0-1v5&lt;span class="w"&gt; &lt;/span&gt;libopengl0
&lt;span class="w"&gt;  &lt;/span&gt;libpangomm-1.4-1v5&lt;span class="w"&gt; &lt;/span&gt;libsigc++-2.0-0v5&lt;span class="w"&gt; &lt;/span&gt;libxcb-damage0&lt;span class="w"&gt; &lt;/span&gt;picom
&lt;span class="w"&gt;  &lt;/span&gt;regolith-compositor-picom-glx&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-compositor
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-control-center-regolith&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-default-style
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-gaps&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-i3xrocks&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-ilia
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-root-config&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-session&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-unclutter
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3xrocks-config&lt;span class="w"&gt; &lt;/span&gt;regolith-session-flashback-ext
&lt;span class="w"&gt;  &lt;/span&gt;regolith-unclutter-xfixes&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-swap-focus&lt;span class="w"&gt; &lt;/span&gt;sysstat&lt;span class="w"&gt; &lt;/span&gt;x11-apps
&lt;span class="w"&gt;  &lt;/span&gt;x11-session-utils&lt;span class="w"&gt; &lt;/span&gt;xbitmaps&lt;span class="w"&gt; &lt;/span&gt;xinit&lt;span class="w"&gt; &lt;/span&gt;xorg&lt;span class="w"&gt; &lt;/span&gt;xrescat
Paquets&lt;span class="w"&gt; &lt;/span&gt;suggérés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;update-manager&lt;span class="w"&gt; &lt;/span&gt;software-properties-gtk&lt;span class="w"&gt; &lt;/span&gt;isag&lt;span class="w"&gt; &lt;/span&gt;mesa-utils&lt;span class="w"&gt; &lt;/span&gt;xorg-docs
&lt;span class="w"&gt;  &lt;/span&gt;x11-xfs-utils
Paquets&lt;span class="w"&gt; &lt;/span&gt;recommandés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-ilia
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;

$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-session-flashback&lt;span class="w"&gt; &lt;/span&gt;software-properties-gtk&lt;span class="w"&gt; &lt;/span&gt;isag&lt;span class="w"&gt; &lt;/span&gt;mesa-utils&lt;span class="w"&gt; &lt;/span&gt;xorg-docs&lt;span class="w"&gt; &lt;/span&gt;x11-xfs-utils
Lecture&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;listes&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;paquets...&lt;span class="w"&gt; &lt;/span&gt;Fait
Construction&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;arbre des dépendances... Fait&lt;/span&gt;
&lt;span class="s1"&gt;Lecture des informations d&amp;#39;&lt;/span&gt;état...&lt;span class="w"&gt; &lt;/span&gt;Fait&lt;span class="w"&gt;      &lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;supplémentaires&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;seront&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;aglfn&lt;span class="w"&gt; &lt;/span&gt;appstream&lt;span class="w"&gt; &lt;/span&gt;gir1.2-goa-1.0&lt;span class="w"&gt; &lt;/span&gt;gir1.2-handy-1&lt;span class="w"&gt; &lt;/span&gt;gir1.2-packagekitglib-1.0
&lt;span class="w"&gt;  &lt;/span&gt;gnome-system-monitor&lt;span class="w"&gt; &lt;/span&gt;gnuplot-data&lt;span class="w"&gt; &lt;/span&gt;gnuplot-x11&lt;span class="w"&gt; &lt;/span&gt;i3-swap-focus&lt;span class="w"&gt; &lt;/span&gt;i3xrocks
&lt;span class="w"&gt;  &lt;/span&gt;i3xrocks-cpu-usage&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-net-traffic&lt;span class="w"&gt; &lt;/span&gt;i3xrocks-time&lt;span class="w"&gt; &lt;/span&gt;libatkmm-1.6-1v5
&lt;span class="w"&gt;  &lt;/span&gt;libcairo-gobject-perl&lt;span class="w"&gt; &lt;/span&gt;libcairo-perl&lt;span class="w"&gt; &lt;/span&gt;libcairomm-1.0-1v5&lt;span class="w"&gt; &lt;/span&gt;libconfig9
&lt;span class="w"&gt;  &lt;/span&gt;libextutils-depends-perl&lt;span class="w"&gt; &lt;/span&gt;libfs6&lt;span class="w"&gt; &lt;/span&gt;libglib-object-introspection-perl
&lt;span class="w"&gt;  &lt;/span&gt;libglib-perl&lt;span class="w"&gt; &lt;/span&gt;libglibmm-2.4-1v5&lt;span class="w"&gt; &lt;/span&gt;libglu1-mesa&lt;span class="w"&gt; &lt;/span&gt;libgtk3-perl&lt;span class="w"&gt; &lt;/span&gt;libgtkmm-3.0-1v5
&lt;span class="w"&gt;  &lt;/span&gt;liblua5.4-0&lt;span class="w"&gt; &lt;/span&gt;libopengl0&lt;span class="w"&gt; &lt;/span&gt;libpackagekit-glib2-18&lt;span class="w"&gt; &lt;/span&gt;libpangomm-1.4-1v5
&lt;span class="w"&gt;  &lt;/span&gt;libpcre2-32-0&lt;span class="w"&gt; &lt;/span&gt;libsigc++-2.0-0v5&lt;span class="w"&gt; &lt;/span&gt;libtcl8.6&lt;span class="w"&gt; &lt;/span&gt;libtk8.6&lt;span class="w"&gt; &lt;/span&gt;libwxbase3.2-1
&lt;span class="w"&gt;  &lt;/span&gt;libwxgtk3.2-1&lt;span class="w"&gt; &lt;/span&gt;libxcb-damage0&lt;span class="w"&gt; &lt;/span&gt;mesa-utils-bin&lt;span class="w"&gt; &lt;/span&gt;packagekit&lt;span class="w"&gt; &lt;/span&gt;packagekit-tools
&lt;span class="w"&gt;  &lt;/span&gt;picom&lt;span class="w"&gt; &lt;/span&gt;python3-blinker&lt;span class="w"&gt; &lt;/span&gt;python3-cffi-backend&lt;span class="w"&gt; &lt;/span&gt;python3-cryptography
&lt;span class="w"&gt;  &lt;/span&gt;python3-dateutil&lt;span class="w"&gt; &lt;/span&gt;python3-distro-info&lt;span class="w"&gt; &lt;/span&gt;python3-jwt
&lt;span class="w"&gt;  &lt;/span&gt;python3-lazr.restfulclient&lt;span class="w"&gt; &lt;/span&gt;python3-lazr.uri&lt;span class="w"&gt; &lt;/span&gt;python3-oauthlib
&lt;span class="w"&gt;  &lt;/span&gt;python3-software-properties&lt;span class="w"&gt; &lt;/span&gt;python3-wadllib&lt;span class="w"&gt; &lt;/span&gt;regolith-compositor-picom-glx
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-compositor&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-control-center-regolith
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-default-style&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-gaps&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-i3xrocks
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-ilia&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-root-config&lt;span class="w"&gt; &lt;/span&gt;regolith-i3-session
&lt;span class="w"&gt;  &lt;/span&gt;regolith-i3-unclutter&lt;span class="w"&gt; &lt;/span&gt;regolith-i3xrocks-config
&lt;span class="w"&gt;  &lt;/span&gt;regolith-session-flashback-ext&lt;span class="w"&gt; &lt;/span&gt;regolith-unclutter-xfixes
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-swap-focus&lt;span class="w"&gt; &lt;/span&gt;software-properties-common&lt;span class="w"&gt; &lt;/span&gt;sysstat&lt;span class="w"&gt; &lt;/span&gt;tcl&lt;span class="w"&gt; &lt;/span&gt;tcl8.6&lt;span class="w"&gt; &lt;/span&gt;tk
&lt;span class="w"&gt;  &lt;/span&gt;tk8.6&lt;span class="w"&gt; &lt;/span&gt;x11-apps&lt;span class="w"&gt; &lt;/span&gt;x11-session-utils&lt;span class="w"&gt; &lt;/span&gt;xbitmaps&lt;span class="w"&gt; &lt;/span&gt;xinit&lt;span class="w"&gt; &lt;/span&gt;xorg&lt;span class="w"&gt; &lt;/span&gt;xrescat
Paquets&lt;span class="w"&gt; &lt;/span&gt;suggérés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;apt-config-icons&lt;span class="w"&gt; &lt;/span&gt;gnuplot-doc&lt;span class="w"&gt; &lt;/span&gt;rcs&lt;span class="w"&gt; &lt;/span&gt;libfont-freetype-perl&lt;span class="w"&gt; &lt;/span&gt;libxml-libxml-perl
&lt;span class="w"&gt;  &lt;/span&gt;python-blinker-doc&lt;span class="w"&gt; &lt;/span&gt;python-cryptography-doc&lt;span class="w"&gt; &lt;/span&gt;python3-cryptography-vectors
&lt;span class="w"&gt;  &lt;/span&gt;python3-crypto&lt;span class="w"&gt; &lt;/span&gt;update-manager&lt;span class="w"&gt; &lt;/span&gt;gnome-software&lt;span class="w"&gt; &lt;/span&gt;tcl-tclreadline
Paquets&lt;span class="w"&gt; &lt;/span&gt;recommandés&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt;  &lt;/span&gt;regolith-wm-ilia
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai installé les différents paquets recommandés sauf deux qui posaient problème :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;update-manager
E:&lt;span class="w"&gt; &lt;/span&gt;Le&lt;span class="w"&gt; &lt;/span&gt;paquet&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;update-manager&lt;span class="w"&gt; &lt;/span&gt;»&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="s1"&gt;&amp;#39;a pas de version susceptible d&amp;#39;&lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installée

simon@betula:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;apt&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-ilia
E:&lt;span class="w"&gt; &lt;/span&gt;Le&lt;span class="w"&gt; &lt;/span&gt;paquet&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;regolith-wm-ilia&lt;span class="w"&gt; &lt;/span&gt;»&lt;span class="w"&gt; &lt;/span&gt;n&lt;span class="s1"&gt;&amp;#39;a pas de version susceptible d&amp;#39;&lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installée
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Après un ultime redémarrage, j'ai enfin accès à une session correcte de Regolith sur une base Debian 12 ! Mais je me rends compte que j'ai choisi "Wayland/Sway"... Je ne suis pas certain que ça marche mieux que lors de la premièr installation du côté de X11/i3... Tant pis, on va garder Wayland/Sway et en route pour le futur! Il n'y a "plus qu'à" tout configurer, restaurer mes fichiers, faire les bidouilles pour adapter à Wayland/Sway, ... &lt;/p&gt;</content><category term="Blog"></category><category term="regolith"></category><category term="linux"></category><category term="debian"></category></entry><entry><title>Gestion de to-do list avec bash et synchronisation avec Nextcloud Notes</title><link href="https://blog.simonlefort.be/todo-list-avec-bash.html" rel="alternate"></link><published>2024-09-18T13:30:00+02:00</published><updated>2024-09-18T13:30:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2024-09-18:/todo-list-avec-bash.html</id><summary type="html">&lt;p&gt;(&lt;strong&gt;Note&lt;/strong&gt; : Cet article n'est plus à jour, ma méthode à évolué, voir : &lt;a href="https://blog.simonlefort.be/todo-list-todotxt.html"&gt;Gestion de to-do list avec Todo.txt&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Il y a presque quatre ans, j'écrivais que j'avais mis en place &lt;a href="https://blog.simonlefort.be/alias-pelican.html"&gt;quelques alias&lt;/a&gt; pour me simplifier la vie et me pousser à écrire plus souvent sur le blog... On dirait …&lt;/p&gt;</summary><content type="html">&lt;p&gt;(&lt;strong&gt;Note&lt;/strong&gt; : Cet article n'est plus à jour, ma méthode à évolué, voir : &lt;a href="https://blog.simonlefort.be/todo-list-todotxt.html"&gt;Gestion de to-do list avec Todo.txt&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Il y a presque quatre ans, j'écrivais que j'avais mis en place &lt;a href="https://blog.simonlefort.be/alias-pelican.html"&gt;quelques alias&lt;/a&gt; pour me simplifier la vie et me pousser à écrire plus souvent sur le blog... On dirait que ça n'a pas bien marché... &lt;/p&gt;
&lt;p&gt;Qu'à cela ne tienne, j'ai un petit truc à raconter ici. En effet, après avoir testé plein de systèmes pour gérer les tâches à réaliser, j'ai finalement décidé de revenir à une approche &lt;a href="https://fr.wikipedia.org/wiki/Principe_KISS"&gt;KISS&lt;/a&gt;, de bien définir mes besoins de base et de tout gérer avec deux fichiers texte et un petit script bash. Pour un accès mobile, j'utilise Nextcloud et en particulier l'application &lt;a href="https://apps.nextcloud.com/apps/notes"&gt;Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Le point de départ, c'est une idée de &lt;a href="https://davidmanise.com/"&gt;David Manise&lt;/a&gt; qui fait sa to-do list dans un seul fichier avec quelques "codes" assez basiques. Je n'ai pas retrouvé où il parle de ça mais j'ai gardé l'idée de me faire un petit "code" à moi pour organiser les choses. J'ai en effet besoin d'avoir des listes pour différents contextes (perso, pro, familial, ...). &lt;/p&gt;
&lt;p&gt;Après quelques tests et réflexions, j'ai donc un fichier en markdown qui ressemble à ça :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;ToDo List    
=========    

&lt;span class="k"&gt;- [ ]&lt;/span&gt; .S. Documenter script todo    
&lt;span class="k"&gt;- [ ]&lt;/span&gt; .C. Poncer meuble
&lt;span class="k"&gt;- [ ]&lt;/span&gt; .C. Acheter vis
&lt;span class="k"&gt;- [ ]&lt;/span&gt; .F. Aller à la piscine avec les enfants    
&lt;span class="k"&gt;- [x]&lt;/span&gt; .S. Script ToDo à faire (v1)    
&lt;span class="k"&gt;- [ ]&lt;/span&gt; .S. Script ToDo à faire (v2?)
&lt;span class="k"&gt;- [ ]&lt;/span&gt; .V. Terminer de lire &amp;quot;The Anarchist&amp;#39;s Design Book&amp;quot;

Récurrents    
==========    
&lt;span class="k"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;[ ]R .S. Méditer (tous les jours)     
&lt;span class="k"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;[ ]R .S. Faire du sport (étirements, élliptique, quick&amp;amp;dirty, aïkido..)     

Légende    
=======    

  .C. : Copeaux (Mes Beaux Copeaux)    
  .F. : Famille    
  .S. : Simon (Perso)    
  .V. : Vrac (trucs pas urgent)
  ..]R: Récurrents
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On remarque quelques catégories (Les trucs pour moi, les trucs pour mon activité professionnelle &lt;a href="https://mesbeauxcopeaux.be/"&gt;Mes Beaux Copeaux&lt;/a&gt;, les trucs pour la famille, les trucs pas urgents (vrac), ...) et il est possible que j'en ajoute d'autres si le besoin se fait sentir. Les cases "[ ]" rendent la ligne "validable" sur Nextcloud Notes, ce qui est un bonus sympa.&lt;/p&gt;
&lt;p&gt;Maintenant, il me faut un petit script. Ce que j'ai besoin c'est : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pouvoir isoler facilement les tâches pour un contexte particulier&lt;/li&gt;
&lt;li&gt;Pouvoir couper/coller une tâche terminée dans un autre fichier (pour le suivi des taches réalisées)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai donc passé quelques heures sur un script et voilà le résultat actuel : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash                                                           &lt;/span&gt;

&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-euo&lt;span class="w"&gt; &lt;/span&gt;pipefail

&lt;span class="nv"&gt;todoFile&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/home/simon/Cloud/Notes/ToDo.md&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;               &lt;/span&gt;
&lt;span class="nv"&gt;doneFile&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/home/simon/Cloud/Notes/Done.md&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;         &lt;/span&gt;

&lt;span class="c1"&gt;#S&amp;#39;il n&amp;#39;y a pas d&amp;#39;argument                                                     &lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-eq&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Il manque un argument.                                              &lt;/span&gt;

&lt;span class="s2"&gt;  s = Simon                                                                    &lt;/span&gt;
&lt;span class="s2"&gt;  f = Famille                                                                  &lt;/span&gt;
&lt;span class="s2"&gt;  c = Mes Beaux Copeaux                                                        &lt;/span&gt;
&lt;span class="s2"&gt;  v = Vrac (pas urgent)                                                        &lt;/span&gt;
&lt;span class="s2"&gt;  d = Done (couper les trucs faits dans Done.md)&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;                              &lt;/span&gt;

&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;&lt;span class="w"&gt;                                           &lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;&lt;span class="w"&gt;                              &lt;/span&gt;

&lt;span class="c1"&gt;#Liste à faire Simon                                                            &lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;s&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;                     &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\] \.S\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\]R \.S\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;
&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;f&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;                                                         &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\] \.F\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\]R \.F\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;
&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;c&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;                                                         &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\] \.C\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\]R \.C\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;
&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;v&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;                                                         &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\] \.V\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\]R \.V\.&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;
&lt;span class="k"&gt;elif&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;d&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;&lt;span class="w"&gt;                                                         &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nv"&gt;IFS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;                                                                        &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;read&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;p&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;                                                                     &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;&lt;span class="w"&gt;                                                                            &lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;grep&lt;span class="w"&gt; &lt;/span&gt;-q&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;\[x\]&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;$p&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$p&lt;/span&gt;&lt;span class="w"&gt;       &lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;date&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;+%Y-%m-%d %H:%M&amp;quot;&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$p&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&amp;gt;&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$doneFile&lt;/span&gt;&lt;span class="w"&gt;                             &lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;fi&lt;/span&gt;&lt;span class="w"&gt;                                                                          &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;s/\[x\]R/\[\ \]R/g&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;-i&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/\[x\]\ /d&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$todoFile&lt;/span&gt;&lt;span class="w"&gt;                                 &lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Mauvais argument&amp;quot;&lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;À ce stade, je peux donc :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Afficher les tâches pour un contexte choisi&lt;/li&gt;
&lt;li&gt;Déplacer les tâches terminées dans un fichier à part&lt;/li&gt;
&lt;li&gt;Copier et dé-valider les tâches récurentes dans un fichier à part&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour me simplifier la vie, j'ai placé le script (todo.sh) dans ''/usr/bin/'' et j'ai créé quelques alias dans ''~/.bash_aliases'' :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#todo&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;todo&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;nvim /home/simon/Cloud/Notes/ToDo.md&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;td-s&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo.sh s&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;td-f&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo.sh f&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;td-c&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo.sh c&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;td-v&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo.sh v&amp;#39;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;td-d&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;todo.sh d&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Quelques exemples d'utilisations : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;td-s&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;#tâches pour Simon&lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Documenter&lt;span class="w"&gt; &lt;/span&gt;script&lt;span class="w"&gt; &lt;/span&gt;todo&lt;span class="w"&gt;        &lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;x&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Script&lt;span class="w"&gt; &lt;/span&gt;ToDo&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;faire&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;v1&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Script&lt;span class="w"&gt; &lt;/span&gt;ToDo&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;faire&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;v2?&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;R&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Méditer&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;tous&lt;span class="w"&gt; &lt;/span&gt;les&lt;span class="w"&gt; &lt;/span&gt;jours&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;         &lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;R&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Faire&lt;span class="w"&gt; &lt;/span&gt;du&lt;span class="w"&gt; &lt;/span&gt;sport&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;étirements,&lt;span class="w"&gt; &lt;/span&gt;élliptique,&lt;span class="w"&gt; &lt;/span&gt;quick&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;dirty,&lt;span class="w"&gt; &lt;/span&gt;aïkido..&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Quand il y a une ou plusieurs cases cochées, je peux lancer le script avec l'option "d" (Done"&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;td-d&lt;span class="w"&gt; &lt;/span&gt;
-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;x&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Script&lt;span class="w"&gt; &lt;/span&gt;ToDo&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;faire&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;v1&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="sb"&gt;```&lt;/span&gt;bash

La&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;les&lt;span class="w"&gt; &lt;/span&gt;tâches&lt;span class="w"&gt; &lt;/span&gt;réalisées&lt;span class="w"&gt; &lt;/span&gt;sont&lt;span class="w"&gt; &lt;/span&gt;affichées&lt;span class="w"&gt; &lt;/span&gt;et&lt;span class="w"&gt; &lt;/span&gt;envoyées&lt;span class="w"&gt; &lt;/span&gt;dans&lt;span class="w"&gt; &lt;/span&gt;le&lt;span class="w"&gt; &lt;/span&gt;fichier&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Done.md&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;avec&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;date&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="sb"&gt;```&lt;/span&gt;bash
$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;Cloud/Notes/Done.md
&lt;span class="m"&gt;2024&lt;/span&gt;-09-18&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;13&lt;/span&gt;:36&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;x&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;.S.&lt;span class="w"&gt; &lt;/span&gt;Script&lt;span class="w"&gt; &lt;/span&gt;ToDo&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;faire&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;v1&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Les taches récurentes sont copiées dans "Done.md" et &lt;em&gt;dé-validée&lt;/em&gt; dans "ToDo.md". Pas besoin de la re-créer le lendemain donc. C'est encore très basique mais ça me convient pour l'instant.Il n'y a plus qu'à jouer avec tout ça au quotidien et créer une nouvelle habitude.&lt;/p&gt;
&lt;p&gt;Quelques idées d'améliorations : 
  * Afficher toutes les tâches à faire (tous les contextes d'un coup!)
  * Afficher les taches réalisées qui n'ont pas encore été envoyées dans "Done.md"&lt;/p&gt;</content><category term="Blog"></category><category term="script"></category><category term="bash"></category><category term="nextcloud"></category><category term="notes"></category><category term="todo"></category></entry><entry><title>Alias pour simplifier l'usage de Pelican</title><link href="https://blog.simonlefort.be/alias-pelican.html" rel="alternate"></link><published>2020-08-11T10:30:00+02:00</published><updated>2020-08-11T10:30:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2020-08-11:/alias-pelican.html</id><summary type="html">&lt;p&gt;Salut!&lt;/p&gt;
&lt;p&gt;Une des choses qui me retenait d'écrire sur le blog, c'est le nombre de petites étapes à faire entre l'écriture d'un article et sa mise en ligne. Je n'avais jamais vraiment optimisé le truc. Je profite donc de la migration et du passage à &lt;a href="https://yunohost.org/#/"&gt;Yunohost&lt;/a&gt; pour réfléchir à ça …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Salut!&lt;/p&gt;
&lt;p&gt;Une des choses qui me retenait d'écrire sur le blog, c'est le nombre de petites étapes à faire entre l'écriture d'un article et sa mise en ligne. Je n'avais jamais vraiment optimisé le truc. Je profite donc de la migration et du passage à &lt;a href="https://yunohost.org/#/"&gt;Yunohost&lt;/a&gt; pour réfléchir à ça et me simplifier la vie.&lt;/p&gt;
&lt;p&gt;Tout d'abord, la première chose qui change, c'est que le blog est installé dans une &lt;a href="https://github.com/YunoHost-Apps/my_webapp_ynh"&gt;custom Webapp&lt;/a&gt;, j'ai un accès simple en SFTP. Je peux donc utiliser &lt;a href="https://filezilla-project.org/"&gt;filezilla&lt;/a&gt; pour envoyer les articles sur le serveur. Sauf que moi, ce que j'aimerais, c'est pouvoir le faire en une commande! J'ai donc trouvé &lt;a href="http://lftp.tech/"&gt;lftp&lt;/a&gt; et j'ai fait quelques tests, décrits sur &lt;a href="https://simonlefort.be/pelican#transferer_le_blog_sur_le_serveur"&gt;mon wiki&lt;/a&gt;, avant d'arriver à &lt;a href="https://doc.ubuntu-fr.org/lftp#mise_a_jour_de_votre_site_internet_modifie_localement"&gt;cette commande&lt;/a&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;lftp&lt;span class="w"&gt; &lt;/span&gt;sftp://USER:PASSWORD@blog.simonlefort.be&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;mirror -e -R ~/path/to/output/ www/ ; quit&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Je l'ai mise dans un alias en rajoutant cette ligne dans ''~/.bash_aliases'' :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;blog-upload&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;lftp sftp://USER:PASSWORD@blog.simonlefort.be -e &amp;quot;mirror -e -R ~/path/to/output/ www/ ; quit&amp;quot;&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, j'ai voulu faire un alias pour &lt;em&gt;compiler&lt;/em&gt; le blog facilement :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nb"&gt;alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;blog-compile&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;pelican ~/path/to/content/ -s ~/path/to/pelicanconf.py -t ~/path/to/themes/my-theme/ -o ~/path/to/output/&amp;#39;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;La suite ? J'ai quelques idées...&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Utiliser les webhooks de git pour mettre à jour le site automatiquement ?&lt;/li&gt;
&lt;li&gt;Faire un alias pour &lt;a href="https://github.com/tmux/tmux/wiki"&gt;tmux&lt;/a&gt; qui ouvre un &lt;em&gt;IDE&lt;/em&gt;, les bons dossiers, lance ''pelican --listen'' ?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'ai encore de quoi faire pour que la publication se fasse complètement oublier.&lt;/p&gt;
&lt;p&gt;[Edit quelques mois plus tard: En essayant de mettre ces alias sur un autre ordinateur, j'ai été confronté à une erreur : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;blog-upload&lt;span class="w"&gt; &lt;/span&gt;
mirror:&lt;span class="w"&gt; &lt;/span&gt;Erreur&lt;span class="w"&gt; &lt;/span&gt;fatale:&lt;span class="w"&gt; &lt;/span&gt;Host&lt;span class="w"&gt; &lt;/span&gt;key&lt;span class="w"&gt; &lt;/span&gt;verification&lt;span class="w"&gt; &lt;/span&gt;failed.
&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;erreur&lt;span class="w"&gt; &lt;/span&gt;détectée
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut essayer autrement mais c'est le même problème : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;lftp&lt;span class="w"&gt; &lt;/span&gt;sftp://USER:PASSWORD@blog.simonlefort.be:PORT
lftp&lt;span class="w"&gt; &lt;/span&gt;my_webapp@blog.simonlefort.be:~&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;ls
ls:&lt;span class="w"&gt; &lt;/span&gt;Erreur&lt;span class="w"&gt; &lt;/span&gt;fatale:&lt;span class="w"&gt; &lt;/span&gt;Host&lt;span class="w"&gt; &lt;/span&gt;key&lt;span class="w"&gt; &lt;/span&gt;verification&lt;span class="w"&gt; &lt;/span&gt;failed.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;La solution consiste à se connecter en SSH pour réactualiser la clé : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;ssh&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;PORT&lt;span class="w"&gt; &lt;/span&gt;USER@blog.simonlefort.be
The&lt;span class="w"&gt; &lt;/span&gt;authenticity&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;host&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;[blog.simonlefort.be]:PORT ([WW.XX.YY.ZZ]:PORT)&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;can&lt;span class="s1"&gt;&amp;#39;t be established.&lt;/span&gt;
&lt;span class="s1"&gt;ED25519 key fingerprint is SHA256:DjMTL(...).&lt;/span&gt;
&lt;span class="s1"&gt;This key is not known by any other names&lt;/span&gt;
&lt;span class="s1"&gt;Are you sure you want to continue connecting (yes/no/[fingerprint])? yes&lt;/span&gt;
&lt;span class="s1"&gt;Warning: Permanently added &amp;#39;&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;blog.simonlefort.be&lt;span class="o"&gt;]&lt;/span&gt;:PORT&lt;span class="s1"&gt;&amp;#39; (ED25519) to the list of known hosts.&lt;/span&gt;
&lt;span class="s1"&gt;USER@blog.simonlefort.be&amp;#39;&lt;/span&gt;s&lt;span class="w"&gt; &lt;/span&gt;password:&lt;span class="w"&gt; &lt;/span&gt;
This&lt;span class="w"&gt; &lt;/span&gt;service&lt;span class="w"&gt; &lt;/span&gt;allows&lt;span class="w"&gt; &lt;/span&gt;sftp&lt;span class="w"&gt; &lt;/span&gt;connections&lt;span class="w"&gt; &lt;/span&gt;only.
Connection&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;blog.simonlefort.be&lt;span class="w"&gt; &lt;/span&gt;closed.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut maintenant relancer "blog-upload" et ça fonctionne.&lt;/p&gt;</content><category term="Blog"></category><category term="blog"></category><category term="alias"></category><category term="lftp"></category><category term="script"></category></entry><entry><title>Migration vers Yunohost</title><link href="https://blog.simonlefort.be/yunohost.html" rel="alternate"></link><published>2020-08-10T21:37:00+02:00</published><updated>2020-08-10T21:37:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2020-08-10:/yunohost.html</id><summary type="html">&lt;p&gt;Bonjour aux rares qui passent peut-être par ici. &lt;/p&gt;
&lt;p&gt;Je profite de quelques jours calmes pour mettre de l'ordre dans mon petit bout d'internet. Ça fait un moment maintenant que j'ai le projet de migrer mes petits VPS de chez OVH vers un &lt;a href="https://www.kimsufi.com/fr/serveurs.xml"&gt;kimsufi KS-3&lt;/a&gt; et de gérer mon serveur avec …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Bonjour aux rares qui passent peut-être par ici. &lt;/p&gt;
&lt;p&gt;Je profite de quelques jours calmes pour mettre de l'ordre dans mon petit bout d'internet. Ça fait un moment maintenant que j'ai le projet de migrer mes petits VPS de chez OVH vers un &lt;a href="https://www.kimsufi.com/fr/serveurs.xml"&gt;kimsufi KS-3&lt;/a&gt; et de gérer mon serveur avec &lt;a href="https://yunohost.org/#/"&gt;Yunohost&lt;/a&gt;. C'est également le moment de faire des choix, de trier les choses qui servent et celles qui ne servent pas.&lt;/p&gt;
&lt;p&gt;J'ai décidé de séparer mes usages en deux parties. Une partie &lt;em&gt;personnelle&lt;/em&gt; et une partie &lt;em&gt;&lt;a href="https://chatons.org/"&gt;CHATONS&lt;/a&gt; familial&lt;/em&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pour la partie &lt;em&gt;personelle&lt;/em&gt;, il y a &lt;a href="https://blog.simonlefort.be/"&gt;ce blog&lt;/a&gt;, &lt;a href="https://wiki.simonlefort.be/"&gt;mon dokuwiki&lt;/a&gt;, &lt;a href="https://images.simonlefort.be/"&gt;MinigalNano&lt;/a&gt; et &lt;a href="https://links.simonlefort.be/"&gt;mon shaarli&lt;/a&gt;. Cette partie sera hébergée sur un &lt;a href="https://www.kimsufi.com/fr/serveurs.xml"&gt;KS-3&lt;/a&gt; nommé &lt;a href="https://fr.wikipedia.org/wiki/Ch%C3%AAne"&gt;Quercus&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Pour la partie &lt;em&gt;CHATONS familial&lt;/em&gt;, il y a &lt;a href="https://nextcloud.com/"&gt;nextcloud&lt;/a&gt; ainsi que &lt;a href="https://github.com/dani-garcia/bitwarden_rs"&gt;bitwarden&lt;/a&gt; et &lt;a href="https://gitea.io/"&gt;gitea&lt;/a&gt;. Cette partie sera hébergée sur un &lt;a href="https://www.kimsufi.com/fr/serveurs.xml"&gt;KS-3&lt;/a&gt; nommé &lt;a href="https://fr.wikipedia.org/wiki/Fagus"&gt;Fagus&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Chaque serveur effectuera un backup quotidien sur l'autre avec &lt;a href="https://www.borgbackup.org/"&gt;Borg&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;L'objectif est de &lt;strong&gt;rationaliser&lt;/strong&gt; mon infrastructure et de professionaliser un peu certaines parties. En effet, je ne peux pas me permettre de faire planter mon nextcloud tous les quatre matins à partir du moment où je propose à des membres de la famille et/ou des amis de l'utiliser pour se dé-gafamiser. Ça implique que je surveille un peu mieux ce qu'il se passe sur ces machines et que mes backups soient un peu plus sérieux.&lt;/p&gt;
&lt;p&gt;À l'heure actuelle, la migration est presque terminée. Et qu'est-ce que je n'ai pas gardé dans la migration ? &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/HowTommy/mycryptochat"&gt;MyCryptoChat&lt;/a&gt; parce qu'il n'a pas été mis à jour depuis 4 ans et que je ne l'utilise jamais...&lt;/li&gt;
&lt;li&gt;&lt;s&gt;&lt;a href="https://github.com/sebsauvage/MinigalNano"&gt;MinigalNano&lt;/a&gt;, qui fonctionne bien, mais j'ai migré mes galeries sur mon wiki.&lt;/s&gt; Après quelques jours, j'ai fait machine arrière, j'ai réinstallé MinigalNano qui est plus simple pour gérer des grosses galeries que le plugin de DokuWiki.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/LeedRSS/Leed"&gt;Leed&lt;/a&gt;, je suis passé sur &lt;a href="https://apps.nextcloud.com/apps/news"&gt;Nextcloud News&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Il me restera quelques trucs qui ne sont pas sur ces serveurs. &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mes mails principaux sont principalement hébergés par OVH, même si j'ai des comptes mails sur les serveurs yunohost. Ce n'est pas quelque chose que je souhaite changer.&lt;/li&gt;
&lt;li&gt;Mon compte Element (anciennement Matrix/Riot) reste sur un troisième serveur que je gère pour &lt;a href="https://wiki.duniter.be/doku.php"&gt;Duniter&lt;/a&gt;. J'hésite encore à installer un serveur Matrix sur Fagus pour mon &lt;em&gt;CHATONS familial&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;Mon compte &lt;a href="https://framapiaf.org/@Artanux/"&gt;mastodon&lt;/a&gt; est chez &lt;a href="https://framasoft.org/"&gt;Framasoft&lt;/a&gt;. Je leur fais entièrement confiance mais je me tâte à tester &lt;a href="https://pleroma.social/"&gt;Pleroma&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J'aimerais en tout cas prendre un peu de temps pour réactiver ce blog et pour réapprendre à penser en plus de 500 caractères. ;-) &lt;/p&gt;
&lt;p&gt;J'ai mis à jour ma &lt;a href="https://blog.simonlefort.be/pages/contact.html"&gt;page de contact&lt;/a&gt;, n'hésitez pas à me contacter si vous avez des commentaires.&lt;/p&gt;</content><category term="Blog"></category><category term="blog"></category><category term="yunohost"></category></entry><entry><title>Un an en tant que Duniterrien.</title><link href="https://blog.simonlefort.be/duniter2.html" rel="alternate"></link><published>2018-10-08T21:23:00+02:00</published><updated>2018-10-08T21:23:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2018-10-08:/duniter2.html</id><summary type="html">&lt;p&gt;Ce 17 septembre 2018, j'ai &lt;em&gt;fêté&lt;/em&gt; ma première année en tant que membre du projet Duniter. 
J'ai envie de faire un petit bilan de cette année riche en apprentissages, rencontres et bouleversements.&lt;/p&gt;
&lt;p&gt;Tout d'abord, parlons des rencontres! L'aventure Duniter, comme j'aime l'appeler, m'a permis de rencontrer beaucoup de gens.
Malgré …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Ce 17 septembre 2018, j'ai &lt;em&gt;fêté&lt;/em&gt; ma première année en tant que membre du projet Duniter. 
J'ai envie de faire un petit bilan de cette année riche en apprentissages, rencontres et bouleversements.&lt;/p&gt;
&lt;p&gt;Tout d'abord, parlons des rencontres! L'aventure Duniter, comme j'aime l'appeler, m'a permis de rencontrer beaucoup de gens.
Malgré des années à trainer sur les Internets, je connaissais encore très peu de blogueurs belges ou le tissu associatif de notre plat pays, mais c'est en train de changer. Grâce à la Toile de Confiance, les rencontres font parties intégrantes de la Monnaie Libre. J'ai donc pu rencontrer des blogueurs, des associations, des militants du logiciels libres ou d'autres causes.&lt;/p&gt;
&lt;p&gt;Parlons des apprentissages ensuite! Comprendre le fonctionnement de la Monnaie Libre, ce n'est pas une mince affaire. Tout le système est vraiment bien pensé et comme des détails que l'on trouve encore dans une bande dessinée qu'on a lue 10 fois, je suis tous les jours surpris des détails qui font fonctionner la June. Les années à discuter sur le forum de la TRM et des solutions pour l'implémenter n'ont pas été vaines. &lt;/p&gt;
&lt;p&gt;En plus de ce que j'apprends sur le fonctionnement de la Monnaie, l'organisation des réunions avec &lt;a href="https://mastodon.pirateparty.be/@HgO"&gt;HgO&lt;/a&gt; m'oblige à prendre la parole devant des personnes que je ne connais pas. Nous étions une trentaire à la dernière réunion et je suis très content d'apprendre -sur le tas- à gérer les échanges tout en essayant d'être clair dans mes explications.&lt;/p&gt;
&lt;p&gt;Je terminerai enfin par les bouleversements. Ça fait longtemps que je sais que notre monde ne vas pas très bien... Effondrement de la biodiversité, système capitaliste basé sur la dette qui pousse à chercher &lt;strong&gt;toujours plus&lt;/strong&gt; et à encourager l'&lt;strong&gt;avoir&lt;/strong&gt; au lieu de l'&lt;strong&gt;être&lt;/strong&gt;. Polution. Politiques abjectes. Opportunisme... La lecture de &lt;a href="https://pabloservigne.com/comment-tout-peut-seffondrer/"&gt;"Comment tout peut s'effondrer" de Pablo Servigne et Raphaël Stevens&lt;/a&gt; est une claque! Violente mais indispensable pour se lever et chercher des solutions pour le monde de demain. &lt;/p&gt;
&lt;p&gt;La Monnaie Libre ne règlera pas tous les problèmes, loin de là, mais elle peut être un outil pour créer une économie plus résiliente, plus juste et mieux répartie. Rien que pour ça, il faut continuer à la promouvoir. En oubliant pas de chercher les autres outils pour changer profondément nos sociétés.&lt;/p&gt;
&lt;p&gt;Aujourd'hui, &lt;a href="https://g1.duniter.fr/#/app/currency/lg"&gt;Césium&lt;/a&gt; me permet de voir qu'il y a 3 609 559,99Ğ1 en circulation, 1369 membres qui possèdent en moyenne 2628,53Ğ1. &lt;/p&gt;</content><category term="duniter"></category><category term="duniter"></category><category term="g1"></category><category term="monnaie libre"></category><category term="Ğ1"></category></entry><entry><title>Qui parle de Duniter ?</title><link href="https://blog.simonlefort.be/duniter-blogs.html" rel="alternate"></link><published>2018-07-22T15:42:00+02:00</published><updated>2018-07-22T15:42:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2018-07-22:/duniter-blogs.html</id><summary type="html">&lt;p&gt;Je commence une petite liste des blogs et sites qui parlent du projet Duniter et de la Monnaie Libre Ğ1.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Le site du collectif &lt;a href="https://www.monnaielibreoccitanie.org/blog/"&gt;Monnaie Libre Occitanie&lt;/a&gt; - &lt;a href="https://www.monnaielibreoccitanie.org/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="https://moul.re/blog/"&gt;blog de Moul&lt;/a&gt;, dévelopeur de &lt;a href="https://silkaj.duniter.org/"&gt;Silkaj&lt;/a&gt;. - &lt;a href="https://moul.re/blog/feed.php?rss"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="https://monnaie-libre.fr/blog/"&gt;blog Monnaie Libre.fr&lt;/a&gt; - &lt;a href="https://monnaie-libre.fr/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="http://www.creationmonetaire.info/"&gt;blog de Stéphane Laborde&lt;/a&gt; - &lt;a href="http://www.creationmonetaire.info/feed"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="http://nayya.org/"&gt;blog …&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;Je commence une petite liste des blogs et sites qui parlent du projet Duniter et de la Monnaie Libre Ğ1.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Le site du collectif &lt;a href="https://www.monnaielibreoccitanie.org/blog/"&gt;Monnaie Libre Occitanie&lt;/a&gt; - &lt;a href="https://www.monnaielibreoccitanie.org/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="https://moul.re/blog/"&gt;blog de Moul&lt;/a&gt;, dévelopeur de &lt;a href="https://silkaj.duniter.org/"&gt;Silkaj&lt;/a&gt;. - &lt;a href="https://moul.re/blog/feed.php?rss"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="https://monnaie-libre.fr/blog/"&gt;blog Monnaie Libre.fr&lt;/a&gt; - &lt;a href="https://monnaie-libre.fr/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="http://www.creationmonetaire.info/"&gt;blog de Stéphane Laborde&lt;/a&gt; - &lt;a href="http://www.creationmonetaire.info/feed"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="http://nayya.org/"&gt;blog de Nayya&lt;/a&gt; - &lt;a href="http://nayya.org/index.php/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le &lt;a href="https://librelois.fr/"&gt;blog d'Elois&lt;/a&gt; - &lt;a href="https://librelois.fr/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://movilab.org/index.php?title=Tiers-lieux_et_monnaie_libre"&gt;Movilab&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.monnaielibre-ara.fr/blog/"&gt;Monnaie Libre en Auvergne Rhône-Alpes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.duniter.be/site/"&gt;Monnaie Libre en Belgique&lt;/a&gt; - &lt;a href="https://www.duniter.be/site/feeds/all.rss.xml"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://orne.monnaie-libre.fr/"&gt;Monnaie Libre Orne&lt;/a&gt; - &lt;a href="https://orne.monnaie-libre.fr/feed/"&gt;RSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://lebib.org/tags/monnaie-libre"&gt;Le BIB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Le blog officiel du projet &lt;a href="https://duniter.org/fr/"&gt;Duniter.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fdlm.eu"&gt;Monnaie Libre Bordeaux&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mytinytools.blogs.du-coin.fr/2018/05/11/la-monnaie-libre-pour-une-economie-du-libre/"&gt;MyTinyTools&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://partagemans.wordpress.com/economie/monnaie-libre/"&gt;Monnaie Libre en Sarte&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.cgeek.fr/"&gt;Blog de Cgeek&lt;/a&gt;, développeur principal de Duniter.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://cuckooland.free.fr/LaTrmPourLesEnfants.html"&gt;Cuckooland - La TRM pour les enfants&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.citizenz.info/tag/duniter"&gt;Citizen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.qo-op.com/blog/2018/02/12/fondements-theoriques-projet-duniter-g1/"&gt;qo-op.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://yeuxdelibad.net/Journal/2017/11/debuter-avec-duniter-1-puis-heberger-un-noeud.html"&gt;yeuxdelibad.net&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.jeanferreira.info/"&gt;Blog de Jean Ferreira&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://monnaie.ploc.be"&gt;Blog du belge Emmanuel Bultot&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.le-sou.org/"&gt;le-sou.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://rennes.monnaie-libre.fr/"&gt;rennes.monnaie-libre.fr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://normandie-libre.fr/"&gt;normandie-libre.fr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://vit.free.fr/"&gt;vit.free.fr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.inso.ovh/"&gt;blog.inso.ovh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.denislaplume.fr/"&gt;blog.denislaplume.fr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://adn.life/#section-89"&gt;adn.life&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.spyou.org/wordpress-mu/2017/03/14/oh-les-cons-ils-ont-double-hamon/"&gt;blog.spyou.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.trentesaux.fr/monnaie-libre.html"&gt;blog.trentesaux.fr&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cette liste va probablement continuer à grandir, avec l'augmentation du &lt;a href="http://g1.duniter.be/#/app/currency/community"&gt;nombre de membres&lt;/a&gt;.&lt;/p&gt;</content><category term="Duniter"></category><category term="duniter"></category><category term="g1"></category><category term="monnaie libre"></category><category term="Ğ1"></category></entry><entry><title>Mes 6 premiers mois sur Duniter.</title><link href="https://blog.simonlefort.be/duniter.html" rel="alternate"></link><published>2018-03-17T17:42:00+01:00</published><updated>2018-03-17T17:42:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2018-03-17:/duniter.html</id><summary type="html">&lt;p&gt;Aujourd'hui, ça fait 6 mois que je suis membre de la Monnaie Libre Ğ1, portée par le réseau Duniter.&lt;/p&gt;
&lt;p&gt;J'ai commencé à entendre parler de la Ğ1 (prononcez "June") l'été passé. J'y ai vu une continuité par rapport aux logiciels libres et je me suis tenu au courant de ce …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Aujourd'hui, ça fait 6 mois que je suis membre de la Monnaie Libre Ğ1, portée par le réseau Duniter.&lt;/p&gt;
&lt;p&gt;J'ai commencé à entendre parler de la Ğ1 (prononcez "June") l'été passé. J'y ai vu une continuité par rapport aux logiciels libres et je me suis tenu au courant de ce qu'il se passait en Belgique.&lt;/p&gt;
&lt;p&gt;Le 12 septembre 2017, j'ai rencontré une dizaine de personnes intéressées par la Monnaie Libre. La réunion s'est déroulée à Bruxelles, dans le &lt;a href="https://fr.wikipedia.org/wiki/World_Trade_Center_(Bruxelles)"&gt;World Trade Center, tour 2&lt;/a&gt; (Ça ne s'invente pas!). Les membres présents nous ont expliqué le fonctionnement de la monnaie ainsi, la toile de confiance ainsi le principe de la licence.&lt;/p&gt;
&lt;p&gt;J'ai eu la chance de passer membre le 17 septembre et j'ai reçu mon premier dividende universel le 18 ! Depuis, j'essaye à mon niveau de promouvoir cette nouvelle forme de monnaie en participant aux réunions (à Bruxelles, à Verviers, ...) et en organisant des réunions près de chez moi, à Court-Saint-Étienne.&lt;/p&gt;
&lt;p&gt;Quand je suis devenu membre, il y avait moins de 300 personnes. Aujourd'hui, nous avons dépassé les 822 et le mouvement s'accélère. Une véritable économie est en phase de démarrage.&lt;/p&gt;
&lt;p&gt;Aujourd'hui, &lt;a href="https://g1.duniter.fr/#/app/currency/lg"&gt;Césium&lt;/a&gt; me permet de voir qu'il y a 1 266 865,80Ğ1 en circulation et que chaque membre possède en moyenne 1534,95Ğ1. &lt;/p&gt;
&lt;p&gt;J'ai tellement hâte de voir ce qu'il en sera dans 6 mois, dans un an, dans 5 ans ! Je pense que nous sommes à la veille d'un grand bouleversement économique. Ça peut paraitre profondément utopiste mais j'y crois et j'assume! ;-) &lt;/p&gt;
&lt;p&gt;En corrigeant quelques fautes ce 30 mars, je remarque qu'il y a aujourd'hui 881 membres, soit une soixantaine de membres en plus en une quinzaine de jours. La tendance s'accélère et c'est tant mieux!&lt;/p&gt;</content><category term="duniter"></category><category term="duniter"></category><category term="g1"></category><category term="monnaie libre"></category><category term="Ğ1"></category></entry><entry><title>Silence productif?</title><link href="https://blog.simonlefort.be/silence.html" rel="alternate"></link><published>2017-04-21T09:59:00+02:00</published><updated>2017-04-21T09:59:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2017-04-21:/silence.html</id><summary type="html">&lt;p&gt;Ça fait bien longtemps que je n'ai pas écrit sur le blog. Je n'écrit presque plus sur mon &lt;a href="https://links.simonlefort.be/"&gt;shaarli&lt;/a&gt; non plus. Pourtant, malgré ce silence apparent, je ne suis pas resté inactif... &lt;/p&gt;
&lt;p&gt;Au niveau personnel, la vie avance beaucoup trop vite! C'est à se demander comment lever le pied, prendre …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Ça fait bien longtemps que je n'ai pas écrit sur le blog. Je n'écrit presque plus sur mon &lt;a href="https://links.simonlefort.be/"&gt;shaarli&lt;/a&gt; non plus. Pourtant, malgré ce silence apparent, je ne suis pas resté inactif... &lt;/p&gt;
&lt;p&gt;Au niveau personnel, la vie avance beaucoup trop vite! C'est à se demander comment lever le pied, prendre le temps, vivre &lt;strong&gt;lentement&lt;/strong&gt; et profiter de chaque instant sans se laisser gagner par le stress de la vie active. Il y a beaucoup de travail... Il faudrait que je médite plus, déjà.&lt;/p&gt;
&lt;p&gt;Au niveau pro, j'oscille toujours entre du maraîchage bio à &lt;a href="http://www.lafermedugasi.be/"&gt;La Ferme du GaSi&lt;/a&gt; et des projets en &lt;strong&gt;indépendant&lt;/strong&gt; via mon activité SMArt, Artanux. J'ai travaillé sur des drônes avec la société liégeoise &lt;a href="http://www.alxsys.com/"&gt;ALX Systems&lt;/a&gt; et je travaille actuellement sur un robot pour un court-métrage.&lt;/p&gt;
&lt;p&gt;Ce compromis entre le "retour à la terre" et la technologie me plait. Je m'y retrouve même si c'est parfois compliqué de gérer les horaires. J'apprends beaucoup, dans plein de domaines différents, et c'est génial! Je rencontre également un tas de gens intéressants.&lt;/p&gt;
&lt;p&gt;Pour information, je ne compte plus écrire d'articles &lt;strong&gt;techniques&lt;/strong&gt; sur le blog, je rempli mon &lt;a href="https://wiki.simonlefort.be/"&gt;wiki&lt;/a&gt; au fur et à mesure des projets et des problèmes rencontrés. Quand j'ai le temps -AHAH-, j'essaye de récupérer tous les petits bouts techniques de mon &lt;a href="https://links.simonlefort.be/"&gt;shaarli&lt;/a&gt; et les intégrer dans le wiki, pour plus de clarté. Je me rends compte que le wiki résiste mieux au temps alors que les articles techniques d'un blog finissent par être désuets.&lt;/p&gt;</content><category term="Humeurs"></category><category term="humeur"></category><category term="silence"></category></entry><entry><title>Maraîchage</title><link href="https://blog.simonlefort.be/maraichage.html" rel="alternate"></link><published>2016-08-26T23:41:00+02:00</published><updated>2016-08-26T23:41:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2016-08-26:/maraichage.html</id><summary type="html">&lt;p&gt;Depuis toujours, je ressens une terrible dualité en moi. D'un côté, je suis un amoureux de la nature et de la simplicité. D'un autre, je m'émerveille devant des lignes de code ou les possibilités offertes par la technologie.&lt;/p&gt;
&lt;p&gt;Pendant des années, j'ai privilégié le côté technophile. J'ai beaucoup appris, expérimenté …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Depuis toujours, je ressens une terrible dualité en moi. D'un côté, je suis un amoureux de la nature et de la simplicité. D'un autre, je m'émerveille devant des lignes de code ou les possibilités offertes par la technologie.&lt;/p&gt;
&lt;p&gt;Pendant des années, j'ai privilégié le côté technophile. J'ai beaucoup appris, expérimenté et découvert. J'ai rencontré beaucoup de gens, j'ai obtenu un diplôme. J'ai travaillé avec des bases de données, de la supervision industrielle et bien d'autres choses. J'ai beaucoup aimé ça, au point d'en oublier le reste.&lt;/p&gt;
&lt;p&gt;Mais depuis juin, revirement complet! J'ai commencé à travailler dans le maraîchage. Je réapprends à planter, entretenir et ramasser des légumes et des fruits. Je redécouvre le travail manuel, j'ai brulé au soleil, sué sous les serres, j'ai souffert que tous mes muscles soient à nouveau solicités. Et pourtant, j'aime profondément ça! Quelque chose me dit que cultiver des légumes en bio, &lt;strong&gt;ça a du sens&lt;/strong&gt;! Ce que je ramasse aujourd'hui est acheté sur le marché demain, mangé le soir même. &lt;/p&gt;
&lt;p&gt;En deux mois, ça m'a déjà beaucoup changé. Physiquement, mes muscles endormis ont récupéré un peu de &lt;em&gt;punch&lt;/em&gt; et ma peau a repris l'habitude du soleil. Mentalement aussi. Là où je n'avais plus envie d'en faire trop, je me surprends à vouloir me dépasser et à faire le maximum. Mon ancien employeur me demandait de &lt;em&gt;travailler comme si c'était ma société&lt;/em&gt; et je fuyais au maximum. Aujourd'hui, j'ai envie de m'investir comme si c'était mes champs.&lt;/p&gt;
&lt;p&gt;Plus qu'à trouver un moyen de réconcilier ces deux parties. J'ai peut-être trouvé, j'expérimente une solution prometteuse. L'idéal serait d'obtenir un mi-temps dans le maraichage et de faire des chouettes projets dans l'informatique ou la robotique sur le côté, trouver la &lt;em&gt;voie du milieu&lt;/em&gt;. Le temps sera mon conseiller.&lt;/p&gt;
&lt;p&gt;En attendant la sagesse, je lis tour à tour des ouvrages sur la permaculture, &lt;a href="https://fr.wikipedia.org/wiki/Masanobu_Fukuoka"&gt;l'agriculture naturelle&lt;/a&gt; et des ouvrages sur Linux dans l'embarqué. Je continue également d'alimenter mon &lt;a href="https://wiki.simonlefort.be/"&gt;wiki&lt;/a&gt;, sur lequel je vais probablement migrer les articles techniques prochainement, et d'écrire sur mon &lt;a href="https://links.simonlefort.be/"&gt;Shaarli&lt;/a&gt; quand j'en ai l'occasion.&lt;/p&gt;
&lt;p&gt;L'avenir s'annonce radieu.&lt;/p&gt;</content><category term="Humeurs"></category><category term="humeur"></category></entry><entry><title>BlogoText</title><link href="https://blog.simonlefort.be/blogotext.html" rel="alternate"></link><published>2015-08-31T18:10:00+02:00</published><updated>2015-08-31T18:10:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-08-31:/blogotext.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015, les commandes présentées sont peut-être obsolètes.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Le 29 août 2015, le &lt;a href="http://lehollandaisvolant.net/" title="le hollandais volant"&gt;hollandais volant&lt;/a&gt;, Timo, a sorti une nouvelle version du moteur de blog &lt;a href="http://lehollandaisvolant.net/?d=2015/08/29/19/15/11-sortie-de-blogotext-30" title="BlogoText 3.0"&gt;BlogoText 3.0&lt;/a&gt;. J'aime toujours mon blog avec &lt;a href="http://blog.getpelican.com/"&gt;Pelican&lt;/a&gt; mais je réfléchis actuellement à un site pour mon association de robotique …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015, les commandes présentées sont peut-être obsolètes.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Le 29 août 2015, le &lt;a href="http://lehollandaisvolant.net/" title="le hollandais volant"&gt;hollandais volant&lt;/a&gt;, Timo, a sorti une nouvelle version du moteur de blog &lt;a href="http://lehollandaisvolant.net/?d=2015/08/29/19/15/11-sortie-de-blogotext-30" title="BlogoText 3.0"&gt;BlogoText 3.0&lt;/a&gt;. J'aime toujours mon blog avec &lt;a href="http://blog.getpelican.com/"&gt;Pelican&lt;/a&gt; mais je réfléchis actuellement à un site pour mon association de robotique, l'&lt;a href="http://www.caliban.be/"&gt;Association Caliban Belgique&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Nos besoins sont assez simples, nous avons besoin de pouvoir écrire et partager des infos. Nous avons besoin de pouvoir échanger des documents, images ou bouts de code. Nous avons besoin d'un agenda. Nous avons besoin d'un &lt;em&gt;chat&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Actuellement, nous discutons via une instance de &lt;strong&gt;Slack&lt;/strong&gt; (vraiment pas mal, mais non-libre...), nous utilisons un blog créé sur &lt;a href="http://www.e-monsite.com/" title="e-monsite.com"&gt;e-monsite&lt;/a&gt; (ça fait le job mais il faut payer pour ne pas avoir de publicités!) et nous utilisons Google Drive pour les fichiers (Aïe, j'ai honte!). Nous utilisons aussi le forum &lt;a href="http://forum.caliban-web.com/" title="Forum Performance-Robot"&gt;Performance-Robot&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Dans une démarche visant à maitriser les outils que nous utilisons, j'aimerais pouvoir n'utiliser que du libre et l'héberger moi-même. Pelican me convient bien mais je ne peux pas demander aux membres de l'association de se connecter en SSH sur mon serveur et d'utiliser Vim pour écrire des articles en Markdown... Ils ne le feront simplement pas. (Et je le comprends, ça ne peut pas amuser tout le monde!)&lt;/p&gt;
&lt;p&gt;Donc, j'ai décidé de tester &lt;strong&gt;BlogoText&lt;/strong&gt;, on verra s'il convient. On prépare le terrain en créant un dossier "caliban", lui donnant les bons droits et en créant un fichier &lt;code&gt;index.html&lt;/code&gt; qui regroupera à terme les liens vers les différents &lt;em&gt;modules&lt;/em&gt; du site.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# mkdir caliban&lt;/span&gt;
&lt;span class="c1"&gt;# chown -R www-data:simon caliban&lt;/span&gt;
&lt;span class="c1"&gt;# cd caliban/&lt;/span&gt;
&lt;span class="c1"&gt;# vim index.html&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;html&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;head&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;title&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Caliban&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;title&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;head&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;body&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Différents tests pour le site de l&amp;#39;Association Caliban Belgique.&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;· &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="na"&gt;href&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;blog/&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Blogotext&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; (voir &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="na"&gt;href&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;http://lehollandaisvolant.net/blogotext/fr/&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;lehollandaisvolant.net/blogotext/&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;)&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;body&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;html&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On continue en téléchargeant l'archive de BlogoText, la dézippant et en renommant le dossier :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;caliban#&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;http://lehollandaisvolant.net/blogotext/blogotext.zip
caliban#&lt;span class="w"&gt; &lt;/span&gt;unzip&lt;span class="w"&gt; &lt;/span&gt;blogotext.zip
caliban#&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;blogotext-3.0.0/&lt;span class="w"&gt; &lt;/span&gt;blog/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Une fois que c'est fait, on peut simplement ouvrir notre nagivateur préféré (&lt;strong&gt;Firefox!!&lt;/strong&gt;) et aller sur &lt;em&gt;http://urldevotresite/caliban/blog/&lt;/em&gt; et on arrive sur une page qui nous invite à configurer les paramètres de base du blog. &lt;/p&gt;
&lt;p&gt;La première page propose de choisir une langue (anglais ou français). J'ai un petit soucis d'affichage :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_1.png"&gt;&lt;img alt="blogotext1" src="../images/blogotext/mini/blogotext_1_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La deuxième page permet de choisir un identifiant, un mot de passe et l'adresse du blog :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_2.png"&gt;&lt;img alt="blogotext2" src="../images/blogotext/mini/blogotext_2_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;J'ai eu une pop-up surprenante me disant que mon mot de passe est faible alors que c'est un password de 20 caractères généré par KeeFox...&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_2-2.png"&gt;&lt;img alt="blogotext2-2" src="../images/blogotext/mini/blogotext_2-2_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On peut ensuite choisir notre base de données (SQLite ou MySQL) :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_3.png"&gt;&lt;img alt="blogotext3" src="../images/blogotext/mini/blogotext_3_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Et on est -déjà- redirigé vers la page de connexion à l'interface d'administration du blog :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_4.png"&gt;&lt;img alt="blogotext4" src="../images/blogotext/mini/blogotext_4_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Là, on retrouve les différentes parties de l'interface d'administration :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_5.png"&gt;&lt;img alt="blogotext5" src="../images/blogotext/mini/blogotext_5_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-1.png"&gt;&lt;img alt="blogotext5-1" src="../images/blogotext/mini/blogotext_5-1_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-2.png"&gt;&lt;img alt="blogotext5-2" src="../images/blogotext/mini/blogotext_5-2_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-3.png"&gt;&lt;img alt="blogotext5-3" src="../images/blogotext/mini/blogotext_5-3_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-4.png"&gt;&lt;img alt="blogotext5-4" src="../images/blogotext/mini/blogotext_5-4_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-5.png"&gt;&lt;img alt="blogotext5-5" src="../images/blogotext/mini/blogotext_5-5_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;
&lt;a href="../images/blogotext/blogotext_5-6.png"&gt;&lt;img alt="blogotext5-6" src="../images/blogotext/mini/blogotext_5-6_mini.png" title="accueil blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Quand on clique sur l'icône en haut à droite, on accède au préférences du blog, permettant de changer le nom d'utilisateur, de configurer une adresse e-mail, une description du site, le thème et plein d'autres choses.&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_7.png"&gt;&lt;img alt="blogotext7" src="../images/blogotext/mini/blogotext_7_mini.png" title="préférences blogotext"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Et finalement, un premier aperçu du blog :&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/blogotext/blogotext_6.png"&gt;&lt;img alt="blogotext6" src="../images/blogotext/mini/blogotext_6_mini.png" title="accueil blog"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Il reste un peu de travail pour que ça ait de la gueule mais l'interface d'administration et l'installation sont simplissimes ! Je n'ai pas encore trouvé s'il était possible de faire de la colorisation syntaxique (je ne crois pas) et je sais qu'on ne peut pas créer plusieurs comptes pour administrer le blog. On verra ce qu'en pensent les autres. ;-)&lt;/p&gt;
&lt;h1&gt;Changer de thème&lt;/h1&gt;
&lt;p&gt;On va dans le dossier &lt;code&gt;themes&lt;/code&gt; du blog, on télécharge &lt;a href="http://lehollandaisvolant.net/blogotext/fr/?themes"&gt;un thème au choix&lt;/a&gt;, on ouvre l'archive avant de la supprimer et il n'y a plus ensuite qu'à choisir le thème dans l'interface d'administration.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;caliban/blog/themes#&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;http://lehollandaisvolant.net/blogotext/themes/2.0.1.1/caesium/caesium.zip
caliban/blog/themes#&lt;span class="w"&gt; &lt;/span&gt;unzip&lt;span class="w"&gt; &lt;/span&gt;caesium.zip
caliban/blog/themes#&lt;span class="w"&gt; &lt;/span&gt;rm&lt;span class="w"&gt; &lt;/span&gt;caesium.zip
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Bonus sécurité&lt;/h1&gt;
&lt;p&gt;On peut modifier le dossier &lt;code&gt;admin&lt;/code&gt; pour diminuer le risque d'une attaque. Vu la complexité (ahah!) de la modification, on ne va pas se géner! On regarde le dossier avant, on modifie le nom du dossier &lt;code&gt;admin&lt;/code&gt; en &lt;code&gt;yoloa&lt;/code&gt; (pour exemple) et on vérifie. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;caliban#&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;blog/
admin&lt;span class="w"&gt;  &lt;/span&gt;atom.php&lt;span class="w"&gt;  &lt;/span&gt;config&lt;span class="w"&gt;  &lt;/span&gt;databases&lt;span class="w"&gt;  &lt;/span&gt;files&lt;span class="w"&gt;  &lt;/span&gt;img&lt;span class="w"&gt;  &lt;/span&gt;inc&lt;span class="w"&gt;  &lt;/span&gt;index.php&lt;span class="w"&gt;  &lt;/span&gt;LICENSE.txt&lt;span class="w"&gt;  &lt;/span&gt;README.md&lt;span class="w"&gt;  &lt;/span&gt;rss.php&lt;span class="w"&gt;  &lt;/span&gt;themes
caliban#&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;blog/admin/&lt;span class="w"&gt; &lt;/span&gt;blog/yoloa/
caliban#&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;blog/
atom.php&lt;span class="w"&gt;  &lt;/span&gt;config&lt;span class="w"&gt;  &lt;/span&gt;databases&lt;span class="w"&gt;  &lt;/span&gt;files&lt;span class="w"&gt;  &lt;/span&gt;img&lt;span class="w"&gt;  &lt;/span&gt;inc&lt;span class="w"&gt;  &lt;/span&gt;index.php&lt;span class="w"&gt;  &lt;/span&gt;LICENSE.txt&lt;span class="w"&gt;  &lt;/span&gt;README.md&lt;span class="w"&gt;  &lt;/span&gt;rss.php&lt;span class="w"&gt;  &lt;/span&gt;themes&lt;span class="w"&gt;  &lt;/span&gt;yoloa
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(Ce n'est pas ce que j'ai vraiment utilisé...)&lt;/p&gt;</content><category term="Tuto"></category><category term="blogotext php"></category></entry><entry><title>Post-installation d'une Debian 8 Jessie</title><link href="https://blog.simonlefort.be/post-install-debian.html" rel="alternate"></link><published>2015-08-07T19:22:00+02:00</published><updated>2015-08-07T19:22:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-08-07:/post-install-debian.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. En 2020, nous sommes à la version 10 de Debian, &lt;a href="https://wiki.debian.org/fr/DebianBuster"&gt;Buster&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;(23/09/2015 : L'article n'est pas totalement terminé, je fais encore des ajouts en fonction des choses que je rencontre au quotidien.)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;J'installe Debian de plus en plus régulièrement et j'ai toujours peur …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. En 2020, nous sommes à la version 10 de Debian, &lt;a href="https://wiki.debian.org/fr/DebianBuster"&gt;Buster&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;(23/09/2015 : L'article n'est pas totalement terminé, je fais encore des ajouts en fonction des choses que je rencontre au quotidien.)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;J'installe Debian de plus en plus régulièrement et j'ai toujours peur d'oublier quelque chose dans les petits détails les configurations &lt;em&gt;post-installation&lt;/em&gt;. Voici donc une petite liste de choses auxquelles je dois penser après avoir installé une Debian "fraiche". Sur mes machines de bureau, j'utilise Gnome3. Certaines choses seront à adapter en fonction de votre environnement de bureau.&lt;/p&gt;
&lt;h1&gt;Programmes à installer&lt;/h1&gt;
&lt;p&gt;Liste de programmes dont j'ai besoin au quotidien.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;su
password:&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="c1"&gt;# apt-get install aptitude&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# aptitude install git tree vim mc&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Git&lt;/strong&gt; : Vite indispensable pour installer des petits programmes depuis Github ou autre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tree&lt;/strong&gt; : Pratique pour afficher le contenu d'un dossier avec une arborescence&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vim&lt;/strong&gt; : J'ai besoin de détailler ?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mc&lt;/strong&gt; : &lt;a href="http://la-vache-libre.org/midnight-commander-4-8-7-disponible/"&gt;Midnight Commander&lt;/a&gt; est un gestionnaire de fichier dans le terminal.&lt;/p&gt;
&lt;h1&gt;Paramètres de base :&lt;/h1&gt;
&lt;p&gt;&lt;img alt="param_debian" src="../images/photos/blog/post-install-debian//param_debian.png" title="Tous les paramètres"&gt;&lt;/p&gt;
&lt;h3&gt;Date &amp;amp; heure&lt;/h3&gt;
&lt;p&gt;Il ne faut pas oublier de vérifier la configuration de l'heure, même si elle semble correcte. J'avais un décalage de plusieurs minutes avant de mettre ces paramètres en automatiques. 
&lt;img alt="configuration_heure" src="../images/photos/blog/post-install-debian/heure_debian.png" title="Configuration de l'heure"&gt;&lt;/p&gt;
&lt;h3&gt;Énergie&lt;/h3&gt;
&lt;p&gt;Par défaut, 5 minutes d'inactivité suffisent à passer en veille et à verouiller la session. Je trouve que c'est un peu court. Pour modifier ça, on va tout d'abord dans "Énergie"
&lt;img alt="energie" src="../images/photos/blog/post-install-debian/energie_debian.png" title="Énergie"&gt;&lt;/p&gt;
&lt;h3&gt;Confidentialité&lt;/h3&gt;
&lt;p&gt;Par défaut, l'écran se verrouille dès que l'écran s'éteint (en fonction du temps configuré dans &lt;em&gt;Énergie&lt;/em&gt;). On peut cependant changer ça et mettre, par exemple, 30 minutes. 
&lt;img alt="confidentialité" src="../images/photos/blog/post-install-debian/confid_debian.png" title="Confidentialité"&gt;   &lt;/p&gt;
&lt;p&gt;N'oubliez pas qu'on peut -et qu'on doit!- verouiller sa session quand on quitte son bureau. On utilise pour ce faire la combinaison de touches "&lt;a href="https://fr.wikipedia.org/wiki/Touche_Windows" title="Touche Super"&gt;Super&lt;/a&gt; + l".&lt;/p&gt;
&lt;h1&gt;Récupérer tout son home depuis un autre ordinateur&lt;/h1&gt;
&lt;p&gt;Dans le cas qui m'occupe, je change de machine. J'ai donc deux machines allumées avec Debian 8. Je peux faire une copie de tout mon home de la vieille vers la nouvelle machine. J'ai utilisé la commande &lt;code&gt;rsync&lt;/code&gt; mais ça peut aussi se faire avec un &lt;code&gt;scp&lt;/code&gt;. Depuis le vieil ordinateur: &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;rsync&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;ssh&lt;span class="w"&gt; &lt;/span&gt;-rlt&lt;span class="w"&gt; &lt;/span&gt;/home/simon&lt;span class="w"&gt; &lt;/span&gt;sim@IP.NOUVEL.ORDI.NATEUR:/home/sim/old_home/&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(source : &lt;a href="http://doc.ubuntu-fr.org/tutoriel/sauvegarder_home_avec_rsync"&gt;ubuntu-fr&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;En fonction de ce que je vais configurer par la suite, je n'ai qu'à déplacer les fichiers dont j'ai besoin du dossier &lt;code&gt;/home/sim/old_home/simon/&lt;/code&gt; vers &lt;code&gt;/home/sim/&lt;/code&gt;.&lt;/p&gt;
&lt;h1&gt;Iceweasel&lt;/h1&gt;
&lt;h3&gt;Récupérer la configuration de l'ancienne machine&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;-r&lt;span class="w"&gt; &lt;/span&gt;/home/sim/old_home/simon/.mozilla&lt;span class="w"&gt; &lt;/span&gt;/home/sim/.mozilla
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Installer et configurer KeeFox&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude install keepass2 mono-complete &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Normalement on doit installer KeeFox depuis les &lt;a href="https://addons.mozilla.org/fr/firefox/addon/keefox/"&gt;plugins de Firefox&lt;/a&gt; mais comme on a tout recopié précédemment, pas besoin. On doit cependant recopier le fichier &lt;code&gt;KeePassRPC.plgx&lt;/code&gt; vers &lt;code&gt;/usr/lib/keepass2/&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# cp /home/sim/.mozilla/firefox/ajcz7x9o.default/extensions/keefox@chris.tomlinson/deps/KeePassRPC.plgx /usr/lib/keepass2&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Plus qu'à ouvrir Iceweasel, à l'autoriser à accéder à KeePass2 et lui indiquer où est notre fichier &lt;code&gt;.kdbx&lt;/code&gt;.&lt;/p&gt;
&lt;h1&gt;Icedove&lt;/h1&gt;
&lt;h3&gt;Installer Icedove et supprimer Evolution&lt;/h3&gt;
&lt;p&gt;Je n'utilise pas Evolution mais Icedove (version Debian de Thunderbird). Le seul problème c'est qu'Evolution est très imbrigué avec Gnome. Si on se contente de supprimer evolution sans faire attention, on supprime aussi le méta-paquet &lt;code&gt;gnome&lt;/code&gt; ce qui cause toute une série de problème de dépendances par la suite.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude remove evolution&lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;seront&lt;span class="w"&gt; &lt;/span&gt;ENLEVÉS&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt;                   &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;evolution&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;mis&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;jour,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nouvellement&lt;span class="w"&gt; &lt;/span&gt;installés,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;enlever&lt;span class="w"&gt; &lt;/span&gt;et&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;mis&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;jour.
Il&lt;span class="w"&gt; &lt;/span&gt;est&lt;span class="w"&gt; &lt;/span&gt;nécessaire&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;télécharger&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;o&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;archives.&lt;span class="w"&gt; &lt;/span&gt;Après&lt;span class="w"&gt; &lt;/span&gt;dépaquetage,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;366&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;ko&lt;span class="w"&gt; &lt;/span&gt;seront&lt;span class="w"&gt; &lt;/span&gt;libérés.
Les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;ont&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;dépendances&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;satisfaites&lt;span class="w"&gt; &lt;/span&gt;:
&lt;span class="w"&gt; &lt;/span&gt;evolution-plugins&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;evolution&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;.12.9~git20141130.241663-1+b1&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;sera&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;installé.
&lt;span class="w"&gt; &lt;/span&gt;gnome&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Dépend:&lt;span class="w"&gt; &lt;/span&gt;evolution&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&amp;gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;.12&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;mais&lt;span class="w"&gt; &lt;/span&gt;il&lt;span class="w"&gt; &lt;/span&gt;ne&lt;span class="w"&gt; &lt;/span&gt;sera&lt;span class="w"&gt; &lt;/span&gt;pas&lt;span class="w"&gt; &lt;/span&gt;installé.
Les&lt;span class="w"&gt; &lt;/span&gt;actions&lt;span class="w"&gt; &lt;/span&gt;suivantes&lt;span class="w"&gt; &lt;/span&gt;permettront&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;résoudre&lt;span class="w"&gt; &lt;/span&gt;ces&lt;span class="w"&gt; &lt;/span&gt;dépendances&lt;span class="w"&gt; &lt;/span&gt;:

&lt;span class="w"&gt;     &lt;/span&gt;Supprimer&lt;span class="w"&gt; &lt;/span&gt;les&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt;                   &lt;/span&gt;
&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;     &lt;/span&gt;evolution-plugins&lt;span class="w"&gt;                                &lt;/span&gt;
&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;     &lt;/span&gt;gnome
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut d'abord "dé-solidariser" tout ce qui est contenu dans le méta-paquet &lt;code&gt;gnome&lt;/code&gt; avant de le supprimer. Voici une solution trouvée sur &lt;a href="https://www.debian-fr.org/suppresion-evolution-t31077.html"&gt;debian-fr.org&lt;/a&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# dpkg -s gnome | grep ^Depends: | sed &amp;quot;s/,/\ \n /g&amp;quot; | awk &amp;#39;{print $1}&amp;#39; | sed -e &amp;#39;/Depends:/d&amp;#39; &amp;gt; file&lt;/span&gt;
&lt;span class="c1"&gt;# cat file &lt;/span&gt;
desktop-base
network-manager-gnome
bijiben
brasero
cheese
evolution
evolution-plugins
file-roller
gedit
gnome-clocks
gnome-color-manager
gnome-documents
gnome-games
gnome-getting-started-docs
gnome-logs
gnome-maps
gnome-music
gnome-nettool
gnome-photos
gnome-sound-recorder
gnome-tweak-tool
nautilus-sendto
gnome-orca
polari
rygel-playbin
rygel-tracker
seahorse
vinagre
alacarte
avahi-daemon
gimp
hamster-applet
inkscape
libreoffice-evolution
libreoffice-gnome
libreoffice-writer
libreoffice-calc
libreoffice-impress
rhythmbox
simple-scan
goobox
transmission-gtk
xdg-user-dirs-gtk
cups-pk-helper
gedit-plugins
gnome-shell-extension-weather
gstreamer1.0-libav
gstreamer1.0-plugins-ugly
rhythmbox-plugins
rhythmbox-plugin-cdrecorder
telepathy-gabble
telepathy-rakia
telepathy-salut
totem-plugins
libgtk2-perl
&lt;span class="c1"&gt;# aptitude unmarkauto &amp;lt; file&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut maintenant supprimer &lt;code&gt;evolution&lt;/code&gt; et le méta-paquet &lt;code&gt;gnome&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude remove evolution&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On termine en installant Icedove et le paquet pour qu'il soit en français :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude install icedove icedove-l10n-fr&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Récupérer la configuration de l'ancienne machine&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;-r&lt;span class="w"&gt; &lt;/span&gt;/home/sim/old_home/simon/.icedove/&lt;span class="w"&gt; &lt;/span&gt;/home/sim&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai maintenant récupéré toute la configuration de mes comptes mails. Continuons!&lt;/p&gt;
&lt;h1&gt;Vim&lt;/h1&gt;
&lt;h3&gt;Prérequis&lt;/h3&gt;
&lt;p&gt;Pour que le plugin &lt;code&gt;Gundo&lt;/code&gt; que j'utilise (voir &lt;a href="http://blog.simonlefort.be/vim-config.html"&gt;ma configuration de Vim&lt;/a&gt;) fonctionne, j'ai besoin de &lt;code&gt;vim-nox&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;deb#&lt;span class="w"&gt; &lt;/span&gt;aptitude&lt;span class="w"&gt; &lt;/span&gt;search&lt;span class="w"&gt; &lt;/span&gt;vim-nox
p&lt;span class="w"&gt;   &lt;/span&gt;vim-nox&lt;span class="w"&gt;                                                       &lt;/span&gt;-&lt;span class="w"&gt; &lt;/span&gt;Vi&lt;span class="w"&gt; &lt;/span&gt;IMproved&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="w"&gt; &lt;/span&gt;enhanced&lt;span class="w"&gt; &lt;/span&gt;vi&lt;span class="w"&gt; &lt;/span&gt;editor&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;scripting&lt;span class="w"&gt; &lt;/span&gt;languages&lt;span class="w"&gt; &lt;/span&gt;support&lt;span class="w"&gt;     &lt;/span&gt;
deb#&lt;span class="w"&gt; &lt;/span&gt;aptitude&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;vim-nox
Les&lt;span class="w"&gt; &lt;/span&gt;NOUVEAUX&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;vont&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt;     &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;libruby2.1&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libtcl8.6&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libyaml-0-2&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;vim-nox&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Récupération de l'ancienne configuration&lt;/h3&gt;
&lt;p&gt;On récupère ensuite le dossier &lt;code&gt;.vim&lt;/code&gt; et le fichier &lt;code&gt;.vimrc&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;-r&lt;span class="w"&gt; &lt;/span&gt;/home/sim/old_home/simon/.vim/&lt;span class="w"&gt; &lt;/span&gt;/home/sim
$&lt;span class="w"&gt; &lt;/span&gt;cp&lt;span class="w"&gt; &lt;/span&gt;/home/sim/old_home/simon/.vimrc&lt;span class="w"&gt; &lt;/span&gt;/home/sim/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Partager la configuration de Vim entre root et l'utilisateur courant&lt;/h3&gt;
&lt;p&gt;J'ai maintenant récupéré tous les plugins que j'avais installé et ma configuration dans le &lt;code&gt;.vimrc&lt;/code&gt;. On peut encore partager la configuration entre l'utilisateur courant et root. On commence par supprimer la configuration vim de &lt;code&gt;root&lt;/code&gt; et on fait les liens vers les configuration de l'utilisateur courant (sim, dans mon cas). &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# rm -r /root/.vim&lt;/span&gt;
&lt;span class="c1"&gt;# ln -s /home/sim/.vim/ /root&lt;/span&gt;
&lt;span class="c1"&gt;# ln -s /home/sim/.vimrc /root &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Configuration des vlans&lt;/h1&gt;
&lt;p&gt;Au boulot ma machine est connectée sur plusieurs vlans. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude install vlan&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Configurer le fichier interfaces :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# vim /etc/network/interfaces&lt;/span&gt;

&lt;span class="nb"&gt;source&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;/etc/network/interfaces.d/*

&lt;span class="c1"&gt;# The loopback network interface&lt;/span&gt;
auto&lt;span class="w"&gt; &lt;/span&gt;lo
iface&lt;span class="w"&gt; &lt;/span&gt;lo&lt;span class="w"&gt; &lt;/span&gt;inet&lt;span class="w"&gt; &lt;/span&gt;loopback

&lt;span class="c1"&gt;# VLAN14 : nom du vlan11&lt;/span&gt;
auto&lt;span class="w"&gt; &lt;/span&gt;eth1.14

iface&lt;span class="w"&gt; &lt;/span&gt;eth1.14&lt;span class="w"&gt; &lt;/span&gt;inet&lt;span class="w"&gt; &lt;/span&gt;static
&lt;span class="w"&gt;    &lt;/span&gt;address&lt;span class="w"&gt; &lt;/span&gt;IP.SUR.VLAN.14
&lt;span class="w"&gt;    &lt;/span&gt;netmask&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;.255.255.0

&lt;span class="c1"&gt;# VLAN27 : nom du vlan27&lt;/span&gt;
auto&lt;span class="w"&gt; &lt;/span&gt;eth1.27

iface&lt;span class="w"&gt; &lt;/span&gt;eth1.27&lt;span class="w"&gt; &lt;/span&gt;inet&lt;span class="w"&gt; &lt;/span&gt;static
&lt;span class="w"&gt;    &lt;/span&gt;address&lt;span class="w"&gt; &lt;/span&gt;IP.SUR.VLAN.27
&lt;span class="w"&gt;    &lt;/span&gt;netmask&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;.255.255.0
&lt;span class="w"&gt;    &lt;/span&gt;gateway&lt;span class="w"&gt; &lt;/span&gt;IP.GATEWAY.VLAN.27
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(note: UN SEUL GATEWAY! ;-) )&lt;/p&gt;
&lt;p&gt;Ensuite on peut activer les vlan avec ifup.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# ifup eth1.14&lt;/span&gt;
&lt;span class="c1"&gt;# ifup eth1.27&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Redémarrer :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# reboot&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Installer les drivers Nvidia&lt;/h1&gt;
&lt;p&gt;Mon deuxième écran n'était pas détecté parce que je n'avais pas les bons drivers pour ma carte graphique. Il faut d'abord commencer par &lt;a href="https://wiki.debian.org/fr/NvidiaGraphicsDrivers"&gt;identifier la carte graphique&lt;/a&gt; avec &lt;code&gt;lspci&lt;/code&gt; et/ou &lt;code&gt;nvidia-detect&lt;/code&gt; (à installer). Voici la procédure que j'ai faite pour installer &lt;code&gt;nvidia-driver&lt;/code&gt; et configurer Xorg. Il faudra évidemment adapter en fonction de votre carte graphique. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;su&lt;span class="w"&gt; &lt;/span&gt;
password:
&lt;span class="c1"&gt;# lspci|grep VGA&lt;/span&gt;
&lt;span class="m"&gt;02&lt;/span&gt;:00.0&lt;span class="w"&gt; &lt;/span&gt;VGA&lt;span class="w"&gt; &lt;/span&gt;compatible&lt;span class="w"&gt; &lt;/span&gt;controller:&lt;span class="w"&gt; &lt;/span&gt;NVIDIA&lt;span class="w"&gt; &lt;/span&gt;Corporation&lt;span class="w"&gt; &lt;/span&gt;G96GL&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;Quadro&lt;span class="w"&gt; &lt;/span&gt;FX&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;380&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;rev&lt;span class="w"&gt; &lt;/span&gt;a1&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# nvidia-detect &lt;/span&gt;
Detected&lt;span class="w"&gt; &lt;/span&gt;NVIDIA&lt;span class="w"&gt; &lt;/span&gt;GPUs:
&lt;span class="m"&gt;02&lt;/span&gt;:00.0&lt;span class="w"&gt; &lt;/span&gt;VGA&lt;span class="w"&gt; &lt;/span&gt;compatible&lt;span class="w"&gt; &lt;/span&gt;controller&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="m"&gt;0300&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;NVIDIA&lt;span class="w"&gt; &lt;/span&gt;Corporation&lt;span class="w"&gt; &lt;/span&gt;G96GL&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;Quadro&lt;span class="w"&gt; &lt;/span&gt;FX&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;380&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;10de:0658&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;rev&lt;span class="w"&gt; &lt;/span&gt;a1&lt;span class="o"&gt;)&lt;/span&gt;
Your&lt;span class="w"&gt; &lt;/span&gt;card&lt;span class="w"&gt; &lt;/span&gt;is&lt;span class="w"&gt; &lt;/span&gt;supported&lt;span class="w"&gt; &lt;/span&gt;by&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;default&lt;span class="w"&gt; &lt;/span&gt;drivers&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;legacy&lt;span class="w"&gt; &lt;/span&gt;driver&lt;span class="w"&gt; &lt;/span&gt;series&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;304&lt;/span&gt;.
It&lt;span class="w"&gt; &lt;/span&gt;is&lt;span class="w"&gt; &lt;/span&gt;recommended&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;the
&lt;span class="w"&gt;    &lt;/span&gt;nvidia-driver
package.
&lt;span class="c1"&gt;# aptitude install nvidia-driver&lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;NOUVEAUX&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;vont&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt;     &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;dkms&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;gcc&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;gcc-4.8&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;gcc-4.9&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libc-dev-bin&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libc6-dev&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;libgcc-4.8-dev&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libgcc-4.9-dev&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;libgl1-nvidia-glx&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;linux-compiler-gcc-4.8-x86&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;linux-headers-3.16.0-4-amd64&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;linux-headers-amd64&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nvidia-driver&lt;span class="w"&gt; &lt;/span&gt;nvidia-driver-bin&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;nvidia-kernel-dkms&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nvidia-settings&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nvidia-vdpau-driver&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;xserver-xorg-video-nvidia&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;mis&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;jour,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;18&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nouvellement&lt;span class="w"&gt; &lt;/span&gt;installés,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;enlever&lt;span class="w"&gt; &lt;/span&gt;et&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;mis&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;jour.
Il&lt;span class="w"&gt; &lt;/span&gt;est&lt;span class="w"&gt; &lt;/span&gt;nécessaire&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;télécharger&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;.234&lt;span class="w"&gt; &lt;/span&gt;ko/33,4&lt;span class="w"&gt; &lt;/span&gt;Mo&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="s1"&gt;&amp;#39;archives. Après dépaquetage, 153 Mo seront utilisés.&lt;/span&gt;
&lt;span class="s1"&gt;Voulez-vous continuer ? [Y/n/?] &lt;/span&gt;
&lt;span class="s1"&gt;(...)&lt;/span&gt;
&lt;span class="s1"&gt;# mkdir /etc/X11/xorg.conf.d&lt;/span&gt;
&lt;span class="s1"&gt;# echo -e &amp;#39;&lt;/span&gt;Section&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Device&amp;quot;&lt;/span&gt;&lt;span class="se"&gt;\n\t&lt;/span&gt;Identifier&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;My GPU&amp;quot;&lt;/span&gt;&lt;span class="se"&gt;\n\t&lt;/span&gt;Driver&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;nvidia&amp;quot;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;EndSection&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;/etc/X11/xorg.conf.d/20-nvidia.conf
&lt;span class="c1"&gt;# reboot&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(source : &lt;a href="https://wiki.debian.org/fr/NvidiaGraphicsDrivers#configure"&gt;wiki.debian.org&lt;/a&gt; ) &lt;/p&gt;
&lt;h1&gt;Installer un deuxième disque dur&lt;/h1&gt;
&lt;p&gt;J'ai deux disques durs dans ma nouvelle machine. À l'installation, j'ai formaté le deuxième en ext4 pour l'utiliser comme espace de stockage. Cependant, il ne se montait pas automatiquement au démarrage car fstab n'était pas complet. J'ai donc rajouté la ligne suivante dans fstab :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;su
password:
&lt;span class="c1"&gt;# nano /etc/fstab&lt;/span&gt;
&lt;span class="c1"&gt;#deuxieme disque dur:&lt;/span&gt;
/dev/sdf1&lt;span class="w"&gt;   &lt;/span&gt;/media/hd2&lt;span class="w"&gt;  &lt;/span&gt;ext4&lt;span class="w"&gt;    &lt;/span&gt;defaults&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Maintenant le disque dur se monte automatiquement au démarrage. Je peux aussi le monter/démonter avec mount/umount :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;mount&lt;span class="w"&gt; &lt;/span&gt;/media/hd2
$&lt;span class="w"&gt; &lt;/span&gt;umount&lt;span class="w"&gt; &lt;/span&gt;/media/hd2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Configuration du terminal&lt;/h1&gt;
&lt;p&gt;Pour avoir un terminal efficace et &lt;em&gt;joli&lt;/em&gt;, j'utilise le thème &lt;a href="http://ethanschoonover.com/solarized"&gt;Solarized&lt;/a&gt; d'Ethan Schoonover ainsi que le shell &lt;a href=""&gt;Zsh&lt;/a&gt; et le thème &lt;a href=""&gt;Agnoster&lt;/a&gt;. &lt;/p&gt;
&lt;h3&gt;Configuration du thème Solarized (Dark)&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;--no-check-certificate&lt;span class="w"&gt; &lt;/span&gt;https://raw.github.com/seebi/dircolors-solarized/master/dircolors.ansi-dark
$&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;dircolors.ansi-dark&lt;span class="w"&gt; &lt;/span&gt;.dircolors
$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;eval&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;dircolors&lt;span class="w"&gt; &lt;/span&gt;~/.dircolors&lt;span class="sb"&gt;`&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;(source : &lt;a href="http://www.webupd8.org/2011/04/solarized-must-have-color-paletter-for.html"&gt;webupd8.org&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Une fois ces commandes exécutées, on ouvre les Préférences du profil (dans le menu Édition) et on configure les couleurs pour utilisé le thème &lt;em&gt;Solarizé sombre&lt;/em&gt;.
&lt;img alt="solarized" src="../images/photos/blog/post-install-debian/profil_term_debian.png" title="Configuration des couleurs du terminal"&gt;&lt;/p&gt;
&lt;h3&gt;Installation de Zsh&lt;/h3&gt;
&lt;p&gt;Je réutilise Zsh depuis quelques semaines avec l'extension Oh-my-zsh. Voici comment l'installer.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# aptitude install zsh&lt;/span&gt;
Les&lt;span class="w"&gt; &lt;/span&gt;NOUVEAUX&lt;span class="w"&gt; &lt;/span&gt;paquets&lt;span class="w"&gt; &lt;/span&gt;suivants&lt;span class="w"&gt; &lt;/span&gt;vont&lt;span class="w"&gt; &lt;/span&gt;être&lt;span class="w"&gt; &lt;/span&gt;installés&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt;     &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;zsh&lt;span class="w"&gt; &lt;/span&gt;zsh-common&lt;span class="o"&gt;{&lt;/span&gt;a&lt;span class="o"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
...
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Faire de Zsh son shell par défaut :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;chsh&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;which&lt;span class="w"&gt; &lt;/span&gt;zsh&lt;span class="k"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut quitter le terminal ou changer d'utilisateur pour que le changement soit effectif.)
Quand on réouvre un terminal et qu'on a pas encore configuré quoi que ce soit, Zsh nous propose de mettre une configuration par défaut (ou pas). Je choisi pour ma part d'utiliser la configuration par défaut dans un premier temps. (Option 2)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;This&lt;span class="w"&gt; &lt;/span&gt;is&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;Z&lt;span class="w"&gt; &lt;/span&gt;Shell&lt;span class="w"&gt; &lt;/span&gt;configuration&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;new&lt;span class="w"&gt; &lt;/span&gt;users,
zsh-newuser-install.
You&lt;span class="w"&gt; &lt;/span&gt;are&lt;span class="w"&gt; &lt;/span&gt;seeing&lt;span class="w"&gt; &lt;/span&gt;this&lt;span class="w"&gt; &lt;/span&gt;message&lt;span class="w"&gt; &lt;/span&gt;because&lt;span class="w"&gt; &lt;/span&gt;you&lt;span class="w"&gt; &lt;/span&gt;have&lt;span class="w"&gt; &lt;/span&gt;no&lt;span class="w"&gt; &lt;/span&gt;zsh&lt;span class="w"&gt; &lt;/span&gt;startup&lt;span class="w"&gt; &lt;/span&gt;files
&lt;span class="o"&gt;(&lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;files&lt;span class="w"&gt; &lt;/span&gt;.zshenv,&lt;span class="w"&gt; &lt;/span&gt;.zprofile,&lt;span class="w"&gt; &lt;/span&gt;.zshrc,&lt;span class="w"&gt; &lt;/span&gt;.zlogin&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;directory
~&lt;span class="o"&gt;)&lt;/span&gt;.&lt;span class="w"&gt;  &lt;/span&gt;This&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;can&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;help&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;you&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;a&lt;span class="w"&gt; &lt;/span&gt;few&lt;span class="w"&gt; &lt;/span&gt;settings&lt;span class="w"&gt; &lt;/span&gt;that&lt;span class="w"&gt; &lt;/span&gt;should
make&lt;span class="w"&gt; &lt;/span&gt;your&lt;span class="w"&gt; &lt;/span&gt;use&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;shell&lt;span class="w"&gt; &lt;/span&gt;easier.

You&lt;span class="w"&gt; &lt;/span&gt;can:

&lt;span class="o"&gt;(&lt;/span&gt;q&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;Quit&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;nothing.&lt;span class="w"&gt;  &lt;/span&gt;The&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;will&lt;span class="w"&gt; &lt;/span&gt;be&lt;span class="w"&gt; &lt;/span&gt;run&lt;span class="w"&gt; &lt;/span&gt;again&lt;span class="w"&gt; &lt;/span&gt;next&lt;span class="w"&gt; &lt;/span&gt;time.

&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;Exit,&lt;span class="w"&gt; &lt;/span&gt;creating&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc&lt;span class="w"&gt; &lt;/span&gt;containing&lt;span class="w"&gt; &lt;/span&gt;just&lt;span class="w"&gt; &lt;/span&gt;a&lt;span class="w"&gt; &lt;/span&gt;comment.
&lt;span class="w"&gt;     &lt;/span&gt;That&lt;span class="w"&gt; &lt;/span&gt;will&lt;span class="w"&gt; &lt;/span&gt;prevent&lt;span class="w"&gt; &lt;/span&gt;this&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;being&lt;span class="w"&gt; &lt;/span&gt;run&lt;span class="w"&gt; &lt;/span&gt;again.

&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;Continue&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;main&lt;span class="w"&gt; &lt;/span&gt;menu.

&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;Populate&lt;span class="w"&gt; &lt;/span&gt;your&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;configuration&lt;span class="w"&gt; &lt;/span&gt;recommended
&lt;span class="w"&gt;     &lt;/span&gt;by&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;system&lt;span class="w"&gt; &lt;/span&gt;administrator&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;you&lt;span class="w"&gt; &lt;/span&gt;will&lt;span class="w"&gt; &lt;/span&gt;need&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;edit
&lt;span class="w"&gt;     &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;by&lt;span class="w"&gt; &lt;/span&gt;hand,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;so&lt;span class="w"&gt; &lt;/span&gt;desired&lt;span class="o"&gt;)&lt;/span&gt;.

---&lt;span class="w"&gt; &lt;/span&gt;Type&lt;span class="w"&gt; &lt;/span&gt;one&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;keys&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;parentheses&lt;span class="w"&gt; &lt;/span&gt;---&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;
prompt_adam1_setup:1:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;prompt_adam1_color1&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:2:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;prompt_adam1_color2&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:3:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;prompt_adam1_color3&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:5:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;base_prompt&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:6:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;post_prompt&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:8:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;base_prompt_no_color&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
prompt_adam1_setup:9:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;post_prompt_no_color&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
/home/sim/.zshrc:15:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;HISTFILE&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;eval&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;:1:&lt;span class="w"&gt; &lt;/span&gt;scalar&lt;span class="w"&gt; &lt;/span&gt;parameter&lt;span class="w"&gt; &lt;/span&gt;LS_COLORS&lt;span class="w"&gt; &lt;/span&gt;created&lt;span class="w"&gt; &lt;/span&gt;globally&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;function&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour info, on peut vérifier le Shell utilisé par défaut : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$SHELL&lt;/span&gt;
/usr/bin/zsh
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Installer Oh-my-zsh :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sh&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh&lt;span class="w"&gt; &lt;/span&gt;-O&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;
--2015-08-14&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;11&lt;/span&gt;:54:19--&lt;span class="w"&gt;  &lt;/span&gt;https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh
Résolution&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;raw.github.com&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;raw.github.com&lt;span class="o"&gt;)&lt;/span&gt;…&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;23&lt;/span&gt;.235.43.133
Connexion&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;raw.github.com&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;raw.github.com&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="m"&gt;23&lt;/span&gt;.235.43.133&lt;span class="p"&gt;|&lt;/span&gt;:443…&lt;span class="w"&gt; &lt;/span&gt;connecté.
requête&lt;span class="w"&gt; &lt;/span&gt;HTTP&lt;span class="w"&gt; &lt;/span&gt;transmise,&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;attente&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;réponse…&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;301&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;Moved&lt;span class="w"&gt; &lt;/span&gt;Permanently
Emplacement&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;suivant&lt;span class="o"&gt;]&lt;/span&gt;
--2015-08-14&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;11&lt;/span&gt;:54:20--&lt;span class="w"&gt;  &lt;/span&gt;https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh
Résolution&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;raw.githubusercontent.com&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;raw.githubusercontent.com&lt;span class="o"&gt;)&lt;/span&gt;…&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;185&lt;/span&gt;.31.17.133
Connexion&lt;span class="w"&gt; &lt;/span&gt;à&lt;span class="w"&gt; &lt;/span&gt;raw.githubusercontent.com&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;raw.githubusercontent.com&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="m"&gt;185&lt;/span&gt;.31.17.133&lt;span class="p"&gt;|&lt;/span&gt;:443…&lt;span class="w"&gt; &lt;/span&gt;connecté.
requête&lt;span class="w"&gt; &lt;/span&gt;HTTP&lt;span class="w"&gt; &lt;/span&gt;transmise,&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;attente&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;réponse…&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;OK
Taille&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2033&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;,0K&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;text/plain&lt;span class="o"&gt;]&lt;/span&gt;
Sauvegarde&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;STDOUT&lt;span class="w"&gt; &lt;/span&gt;»

-&lt;span class="w"&gt;                   &lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;%&lt;span class="o"&gt;[=====================&lt;/span&gt;&amp;gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;,99K&lt;span class="w"&gt;  &lt;/span&gt;--.-KB/s&lt;span class="w"&gt;   &lt;/span&gt;ds&lt;span class="w"&gt; &lt;/span&gt;0s&lt;span class="w"&gt;     &lt;/span&gt;

&lt;span class="m"&gt;2015&lt;/span&gt;-08-14&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;11&lt;/span&gt;:54:20&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;85&lt;/span&gt;,6&lt;span class="w"&gt; &lt;/span&gt;MB/s&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;—&lt;span class="w"&gt; &lt;/span&gt;envoi&lt;span class="w"&gt; &lt;/span&gt;vers&lt;span class="w"&gt; &lt;/span&gt;sortie&lt;span class="w"&gt; &lt;/span&gt;standard&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="m"&gt;2033&lt;/span&gt;/2033&lt;span class="o"&gt;]&lt;/span&gt;

Cloning&lt;span class="w"&gt; &lt;/span&gt;Oh&lt;span class="w"&gt; &lt;/span&gt;My&lt;span class="w"&gt; &lt;/span&gt;Zsh...
Clonage&lt;span class="w"&gt; &lt;/span&gt;dans&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;/home/sim/.oh-my-zsh&amp;#39;&lt;/span&gt;...
remote:&lt;span class="w"&gt; &lt;/span&gt;Counting&lt;span class="w"&gt; &lt;/span&gt;objects:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;671&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;.
remote:&lt;span class="w"&gt; &lt;/span&gt;Compressing&lt;span class="w"&gt; &lt;/span&gt;objects:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;%&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;542&lt;/span&gt;/542&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;.
remote:&lt;span class="w"&gt; &lt;/span&gt;Total&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;671&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;delta&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;15&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;reused&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;509&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;delta&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;pack-reused&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;
Réception&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;objets:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;%&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;671&lt;/span&gt;/671&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;412&lt;/span&gt;.72&lt;span class="w"&gt; &lt;/span&gt;KiB&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;bytes/s,&lt;span class="w"&gt; &lt;/span&gt;fait.
Résolution&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;deltas:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;%&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;15&lt;/span&gt;/15&lt;span class="o"&gt;)&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;fait.
Vérification&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;connectivité...&lt;span class="w"&gt; &lt;/span&gt;fait.
Looking&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;an&lt;span class="w"&gt; &lt;/span&gt;existing&lt;span class="w"&gt; &lt;/span&gt;zsh&lt;span class="w"&gt; &lt;/span&gt;config...
Found&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc.&lt;span class="w"&gt; &lt;/span&gt;Backing&lt;span class="w"&gt; &lt;/span&gt;up&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc.pre-oh-my-zsh
Using&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;Oh&lt;span class="w"&gt; &lt;/span&gt;My&lt;span class="w"&gt; &lt;/span&gt;Zsh&lt;span class="w"&gt; &lt;/span&gt;template&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;adding&lt;span class="w"&gt; &lt;/span&gt;it&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc
Copying&lt;span class="w"&gt; &lt;/span&gt;your&lt;span class="w"&gt; &lt;/span&gt;current&lt;span class="w"&gt; &lt;/span&gt;PATH&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;adding&lt;span class="w"&gt; &lt;/span&gt;it&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;end&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;you.
&lt;span class="w"&gt;         &lt;/span&gt;__&lt;span class="w"&gt;                                     &lt;/span&gt;__&lt;span class="w"&gt;   &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;____&lt;span class="w"&gt;  &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/_&lt;span class="w"&gt;     &lt;/span&gt;____&lt;span class="w"&gt; &lt;/span&gt;___&lt;span class="w"&gt;  &lt;/span&gt;__&lt;span class="w"&gt;  &lt;/span&gt;__&lt;span class="w"&gt;   &lt;/span&gt;____&lt;span class="w"&gt;  &lt;/span&gt;_____/&lt;span class="w"&gt; &lt;/span&gt;/_&lt;span class="w"&gt;  &lt;/span&gt;
&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;__&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="se"&gt;\/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;__&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="se"&gt;\ &lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;__&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;__&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="se"&gt;\/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt;  &lt;/span&gt;/_&lt;span class="w"&gt;  &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;___/&lt;span class="w"&gt; &lt;/span&gt;__&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="se"&gt;\ &lt;/span&gt;
/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt;  &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt;    &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/_&lt;span class="o"&gt;(&lt;/span&gt;__&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="se"&gt;\_&lt;/span&gt;___/_/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="w"&gt;  &lt;/span&gt;/_/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="se"&gt;\_&lt;/span&gt;_,&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt;    &lt;/span&gt;/___/____/_/&lt;span class="w"&gt; &lt;/span&gt;/_/&lt;span class="w"&gt;  &lt;/span&gt;
&lt;span class="w"&gt;                        &lt;/span&gt;/____/&lt;span class="w"&gt;                       &lt;/span&gt;....is&lt;span class="w"&gt; &lt;/span&gt;now&lt;span class="w"&gt; &lt;/span&gt;installed!


&lt;span class="w"&gt; &lt;/span&gt;Please&lt;span class="w"&gt; &lt;/span&gt;look&lt;span class="w"&gt; &lt;/span&gt;over&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;~/.zshrc&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;select&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;plugins,&lt;span class="w"&gt; &lt;/span&gt;themes,&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;options.


&lt;span class="w"&gt; &lt;/span&gt;p.s.&lt;span class="w"&gt; &lt;/span&gt;Follow&lt;span class="w"&gt; &lt;/span&gt;us&lt;span class="w"&gt; &lt;/span&gt;at&lt;span class="w"&gt; &lt;/span&gt;http://twitter.com/ohmyzsh.


&lt;span class="w"&gt; &lt;/span&gt;p.p.s.&lt;span class="w"&gt; &lt;/span&gt;Get&lt;span class="w"&gt; &lt;/span&gt;stickers&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;t-shirts&lt;span class="w"&gt; &lt;/span&gt;at&lt;span class="w"&gt; &lt;/span&gt;http://shop.planetargon.com.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut maintenant changer de thème. Il y a &lt;a href="https://github.com/robbyrussell/oh-my-zsh/wiki/themes"&gt;une longue liste de thèmes&lt;/a&gt; et j'ai choisi &lt;strong&gt;&lt;a href="https://gist.github.com/agnoster/3712874"&gt;agnoster&lt;/a&gt;&lt;/strong&gt;. En prérequis, il faut installer &lt;a href="https://powerline.readthedocs.org/en/latest/installation/linux.html#font-installation"&gt;powerline&lt;/a&gt; et des &lt;a href="https://github.com/powerline/fonts"&gt;polices&lt;/a&gt; :&lt;/p&gt;
&lt;p&gt;Installation de Powerline et des polices :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;aptitude&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;powerline&lt;span class="w"&gt; &lt;/span&gt;fonts-powerline:
$&lt;span class="w"&gt; &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;clone&lt;span class="w"&gt; &lt;/span&gt;https://github.com/powerline/fonts.git
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;fonts
AnonymousPro&lt;span class="w"&gt;    &lt;/span&gt;DroidSansMonoDotted&lt;span class="w"&gt;   &lt;/span&gt;Inconsolata&lt;span class="w"&gt;    &lt;/span&gt;InputMono&lt;span class="w"&gt;       &lt;/span&gt;Meslo&lt;span class="w"&gt;       &lt;/span&gt;samples&lt;span class="w"&gt;        &lt;/span&gt;UbuntuMono
DejaVuSansMono&lt;span class="w"&gt;  &lt;/span&gt;DroidSansMonoSlashed&lt;span class="w"&gt;  &lt;/span&gt;InconsolataDz&lt;span class="w"&gt;  &lt;/span&gt;install.sh&lt;span class="w"&gt;      &lt;/span&gt;Monofur&lt;span class="w"&gt;     &lt;/span&gt;SourceCodePro
DroidSansMono&lt;span class="w"&gt;   &lt;/span&gt;FiraMono&lt;span class="w"&gt;              &lt;/span&gt;Inconsolata-g&lt;span class="w"&gt;  &lt;/span&gt;LiberationMono&lt;span class="w"&gt;  &lt;/span&gt;README.rst&lt;span class="w"&gt;  &lt;/span&gt;Terminus
$&lt;span class="w"&gt; &lt;/span&gt;./fonts/install.sh&lt;span class="w"&gt; &lt;/span&gt;
All&lt;span class="w"&gt; &lt;/span&gt;Powerline&lt;span class="w"&gt; &lt;/span&gt;fonts&lt;span class="w"&gt; &lt;/span&gt;installed&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;/home/simon/.fonts
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Après l'installation :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt; &lt;/span&gt;±&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;➦&lt;span class="w"&gt; &lt;/span&gt;✘&lt;span class="w"&gt; &lt;/span&gt;⚡&lt;span class="w"&gt; &lt;/span&gt;⚙
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour changer de thème et mettre &lt;strong&gt;agnoster&lt;/strong&gt;, il faut éditer le fichier &lt;code&gt;.zshrc&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;.zshrc
&lt;span class="c1"&gt;# Path to your oh-my-zsh installation.&lt;/span&gt;
&lt;span class="nb"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;ZSH&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home/simon/.oh-my-zsh
&lt;span class="nb"&gt;export&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;DEFAULT_USER&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;simon

&lt;span class="c1"&gt;# Set name of the theme to load.&lt;/span&gt;
&lt;span class="c1"&gt;# Look in ~/.oh-my-zsh/themes/&lt;/span&gt;
&lt;span class="c1"&gt;# Optionally, if you set this to &amp;quot;random&amp;quot;, it&amp;#39;ll load a random theme each&lt;/span&gt;
&lt;span class="c1"&gt;# time that oh-my-zsh is loaded.&lt;/span&gt;
&lt;span class="nv"&gt;ZSH_THEME&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;agnoster&amp;quot;&lt;/span&gt;
&lt;span class="o"&gt;(&lt;/span&gt;...&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Partager la configuration de Zsh entre root et l'utilisateur&lt;/h3&gt;
&lt;p&gt;Pour avoir la même configuration Zsh pour root et l'utilisateur courant, on peut faire quelques liens symboliques.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;deb#&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/sim/.zshrc&lt;span class="w"&gt; &lt;/span&gt;/root
deb#&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/sim/.zsh_history&lt;span class="w"&gt; &lt;/span&gt;/root&lt;span class="w"&gt; &lt;/span&gt;
deb#&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/sim/.zshrc.pre-oh-my-zsh&lt;span class="w"&gt; &lt;/span&gt;/root
deb#&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/sim/.zsh-update&lt;span class="w"&gt; &lt;/span&gt;/root
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Changer l'éditeur par défaut&lt;/h1&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# update-alternatives --config editor&lt;/span&gt;
Il&lt;span class="w"&gt; &lt;/span&gt;existe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;choix&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;alternative&lt;span class="w"&gt; &lt;/span&gt;editor&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;qui&lt;span class="w"&gt; &lt;/span&gt;fournit&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/editor&lt;span class="o"&gt;)&lt;/span&gt;.

&lt;span class="w"&gt; &lt;/span&gt;Sélection&lt;span class="w"&gt;   &lt;/span&gt;Chemin&lt;span class="w"&gt;              &lt;/span&gt;Priorité&lt;span class="w"&gt;  &lt;/span&gt;État
------------------------------------------------------------
*&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/bin/nano&lt;span class="w"&gt;            &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;automatique
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/bin/nano&lt;span class="w"&gt;            &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/vim.basic&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;30&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/vim.nox&lt;span class="w"&gt;     &lt;/span&gt;&lt;span class="m"&gt;40&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;/usr/bin/vim.tiny&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel

Appuyez&lt;span class="w"&gt; &lt;/span&gt;sur&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;Entrée&amp;gt;&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;conserver&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;valeur&lt;span class="w"&gt; &lt;/span&gt;par&lt;span class="w"&gt; &lt;/span&gt;défaut&lt;span class="o"&gt;[&lt;/span&gt;*&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;ou&lt;span class="w"&gt; &lt;/span&gt;choisissez&lt;span class="w"&gt; &lt;/span&gt;le&lt;span class="w"&gt; &lt;/span&gt;numéro&lt;span class="w"&gt; &lt;/span&gt;sélectionné&lt;span class="w"&gt; &lt;/span&gt;:2&lt;span class="w"&gt;      &lt;/span&gt;
update-alternatives:&lt;span class="w"&gt; &lt;/span&gt;utilisation&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/vim.basic&lt;span class="w"&gt; &lt;/span&gt;»&lt;span class="w"&gt; &lt;/span&gt;pour&lt;span class="w"&gt; &lt;/span&gt;fournir&lt;span class="w"&gt; &lt;/span&gt;«&lt;span class="w"&gt; &lt;/span&gt;/usr/bin/editor&lt;span class="w"&gt; &lt;/span&gt;»&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;editor&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;manuel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il y a encore plein de choses à installer mais avec ça, j'ai une machine que je peux utiliser pour travailler. Plus qu'à... :-) &lt;/p&gt;</content><category term="Tuto"></category><category term="debian"></category><category term="jessie"></category><category term="gnu/linux"></category><category term="installation"></category></entry><entry><title>Les conférences de Pas Sage en Seine 2015</title><link href="https://blog.simonlefort.be/pses2015.html" rel="alternate"></link><published>2015-06-23T12:45:00+02:00</published><updated>2015-06-23T12:45:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-06-23:/pses2015.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Certains liens sont obsolètes et les vidéos sont maintenant hébergées sur le &lt;a href="https://video.passageenseine.fr/"&gt;Peertube&lt;/a&gt; de Pas Sage en Seine.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;L'an passé, j'ai regardé une bonne partie des conférences de &lt;em&gt;Pas Sage en Seine&lt;/em&gt; et je m'étais dis que j'essayerais d'y aller en 2015. La vie …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Certains liens sont obsolètes et les vidéos sont maintenant hébergées sur le &lt;a href="https://video.passageenseine.fr/"&gt;Peertube&lt;/a&gt; de Pas Sage en Seine.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;L'an passé, j'ai regardé une bonne partie des conférences de &lt;em&gt;Pas Sage en Seine&lt;/em&gt; et je m'étais dis que j'essayerais d'y aller en 2015. La vie en a décidé autrement, cette année est très très remplie. Qu'à celà ne tienne, je regarderai à nouveau les conférences en différé.&lt;/p&gt;
&lt;p&gt;On peut retrouver les vidéos en &lt;a href="https://numaparis.ubicast.tv/channels/#pas-sage-en-seine-2015" title="vidéos Pas Sage en Seine 2015"&gt;streaming sur numaparis.ubicast.tv&lt;/a&gt; mais ça ne fonctionne pas sur ma Debian 8 Jessie. Encore une histoire de flash... J'ai cependant vu passer une liste des vidéos sur YouTube sur &lt;a href="http://www.shaarli.fr"&gt;Shaarli.fr&lt;/a&gt;. Cette liste a été compilée par &lt;a href="http://book.knah-tsaeb.org/?MZA8xQ"&gt;Knah Tsaeb&lt;/a&gt; sur son Shaarli. &lt;/p&gt;
&lt;p&gt;Sa liste est très utile si vous désirer télécharger les vidéos d'un coup avec &lt;strong&gt;Youtube-dl&lt;/strong&gt; mais vu que je vais probablement regarder les conférences sur une plus ou moins longue période, ça me convient de les regarder sur youtube. Je me permets donc de la recopier sa liste, en ajoutant le titre des vidéos, tirés du site de &lt;a href="http://www.passageenseine.org/fr/archives-et-videos/"&gt;Pas Sage en Seine&lt;/a&gt; et en les triant dans le même ordre que sur le site de PSES.&lt;/p&gt;
&lt;p&gt;[&lt;strong&gt;Mise à jour&lt;/strong&gt;: Toutes les vidéos sont maintenant disponibles en téléchargement sur le site de &lt;a href="http://www.passageenseine.org/fr/archives-et-videos/"&gt;Pas Sage en Seine&lt;/a&gt;. On peut retrouver tous les fichiers (mp4, ogg, slides et webm) aussi directement en allant sur &lt;a href="http://data.passageenseine.org/2015/"&gt;data.passageenseine.org/2015/&lt;/a&gt;. Je laisse cependant les liens vers Youtube pour mémoire et pour ceux que ça peut encore intéresser.]&lt;/p&gt;
&lt;h3&gt;Jeudi 18/06/2015:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=5EsYFZN-KW4"&gt;CIRCLean / KittenGroomer&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=9du2fxMtknI"&gt;De l'importance de la barbe dans le milieu informatique&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=Q8eN44OpH4I"&gt;De la centralisation du net&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=5mRebAWTsHs"&gt;De la surveillance de masse à la paranoïa généralisée (bis)&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=WHEt4OENFNA"&gt;Et si on dégooglisait Internet ?&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=8ckY1jF2Y9Q"&gt;Goleaks&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=nU81XSqRsdc"&gt;Le Réveil du développeur&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=P3xoXW4Xm9w"&gt;Libervia : repenser nos communications&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=tc6j4dyntII"&gt;Open Source Architecture : Wikibuilding&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=BQebYR89Il4"&gt;Rien à cacher&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sWRBx3bei2k"&gt;Ubuntu Snappy : Du téléphone au poste de travail en passant par le Cloud et l'Internet des objets&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=N7FenrM1RD4"&gt;UX et logiciels libres : retour d'expérience (TAILS)&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=mTsApOaxmzA"&gt;VPN, loi renseignement, reprendre la main avec les FAI associatifs&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=WUWXlVzvWVc"&gt;Wake up the geek way !&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Vendredi 19/06/2015:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=JaJg2w1vZKo"&gt;Cloud personnel - les services du cloud, contrôlés par l'utilisateur&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=GuVPaG6NkVM"&gt;Comment faire confiance à des tiers pour protéger mes données numériques ?&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=ki3gxK4CeV4"&gt;Compilations reproductibles : permettre le lien entre un binaire et sa source&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=CvDIgfBV1jY"&gt;Data bullshit&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sd5mnvvitt8"&gt;French Data Network et autres c/ Gouvernement&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=y1Nm-RcR7UY"&gt;Hacker le parlement : pistes et retours d'expérience&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=NCRn0yRfkIE"&gt;La brique internet&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sAOhUsCQHGU"&gt;Les Dessous de L.H.O&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=n6fxMq11A4U"&gt;Maidsafe: limitations des systemes stockage de fichiers sur DHT et evolutions&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=Wvwb7EAeT88"&gt;Open Earth View&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=r8slSSyJCAs"&gt;Pclight&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=M54rJk08X5Q"&gt;Ping Is Not Googledocs&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Samedi 20/06/2015:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=YQM4Y9rjudI"&gt;Bokor ou le P2P au service de l'industrie du cinéma&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=hG0BxM2YVck"&gt;Éthique, sécurité informatique, pourquoi en sommes nous là ?&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=3pFSE16iPZg"&gt;Hacker veut dire se rendre ingouvernable&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=AuHcRd8ED6k"&gt;Il était une fois l'Internet - une histoire fantastique à faire découvrir&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=eVFLcR1ljcg"&gt;IMSI Catchers, GSM/3G/LTe&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=gV3sS3PY7CU"&gt;Movim - Un réseau social libre, standard et décentralisé&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=hrp2WAuAITU"&gt;Pussh - des centaines de serveurs administrés sans efforts&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=HYi6o9uQ5PE"&gt;Radio logicielle&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=5hih8PxcZn4"&gt;RSF - Opération "Collateral Freedom"&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=SdFXfhpuzgw"&gt;Sortir les entreprises des GAFAM&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=7UfYPu7TQv0"&gt;SSL/TLS pour les nul-le-s&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=MptC2Rzkyd8"&gt;Turing, Asimov, Orwell,Huxley - 70 ans d'histoire de l'informatique et de la surveillance.&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Dimanche 21/06/2015:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Chiffrofête - cryptoparty (&lt;em&gt;pas de vidéo?&lt;/em&gt;)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=2cS68QWO7q4"&gt;Hack on Firefox OS&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sY8UwMr9Kxc"&gt;L'April : point d'étape&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=_x3iYewsraI"&gt;La militarisation du secteur de la sécurité informatique&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=dvMpuN_XNzA"&gt;La sécurité web pour les développeurs&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=cMu3XTs0zm4"&gt;Le logiciel libre à la radio&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=5RxjT-lV-v8"&gt;Le wiktionnaire : Libérer le vocabulaire&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=aDqj4dvk-eI"&gt;Un an de campagne à la Quadrature du Net&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=jzWkw4GtayA"&gt;Vie privée et renseignement, pourquoi ça ne fonctionne pas ?&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Merci à toutes ces personnes qui nous permettent de découvrir de nombreux projets et d'ouvrir encore plus notre horizon des possible.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Bon visionnage ! :-) &lt;/p&gt;</content><category term="Conférences"></category><category term="conférences"></category><category term="pas sage en seine"></category><category term="pses"></category></entry><entry><title>Fsck - pour réparer une partition corrompue</title><link href="https://blog.simonlefort.be/fsck.html" rel="alternate"></link><published>2015-06-11T19:42:00+02:00</published><updated>2015-06-11T19:42:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-06-11:/fsck.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015, les commandes présentées sont peut-être obsolètes.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;J'ai eu plusieurs fois un problème de carte SD corrompue suite à des redémarrages violents de Raspberry Pi. J'ai utilisé l'outil &lt;code&gt;fsck&lt;/code&gt; pour régler les problèmes. Voici la procédure, pour que je ne doive pas refarfouiller à chaque …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015, les commandes présentées sont peut-être obsolètes.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;J'ai eu plusieurs fois un problème de carte SD corrompue suite à des redémarrages violents de Raspberry Pi. J'ai utilisé l'outil &lt;code&gt;fsck&lt;/code&gt; pour régler les problèmes. Voici la procédure, pour que je ne doive pas refarfouiller à chaque fois.&lt;/p&gt;
&lt;p&gt;La première chose à faire est de brancher la carte SD sur un ordinateur avec un système GNU/Linux. (C'est probablement faisable sous Windows mais je ne connais pas les outils...). Ensuite, on peut vérifier les logs : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;/media/simon/548da502-ebde-45c0-9ab2-de5e2431ee0b/var/log/dmesg
...
&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;17&lt;/span&gt;.698285&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;FAT-fs&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;mmcblk0p1&lt;span class="o"&gt;)&lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;Volume&lt;span class="w"&gt; &lt;/span&gt;was&lt;span class="w"&gt; &lt;/span&gt;not&lt;span class="w"&gt; &lt;/span&gt;properly&lt;span class="w"&gt; &lt;/span&gt;unmounted.&lt;span class="w"&gt; &lt;/span&gt;Some&lt;span class="w"&gt; &lt;/span&gt;data&lt;span class="w"&gt; &lt;/span&gt;may&lt;span class="w"&gt; &lt;/span&gt;be&lt;span class="w"&gt; &lt;/span&gt;corrupt.&lt;span class="w"&gt; &lt;/span&gt;Please&lt;span class="w"&gt; &lt;/span&gt;run&lt;span class="w"&gt; &lt;/span&gt;fsck.
...
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On voit que le volume n'arrive pas à se monter et ils proposent d'utiliser fsck. On regarde sous quel nom est la carte SD :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;# avec la carte SD montée:&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;/dev/
...
sdb
sdb1
sdb2
...

&lt;span class="c1"&gt;# avec les partitions démontées:&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;/dev/
...
sdb
...

&lt;span class="c1"&gt;# en retirant la carte sd de l&amp;#39;ordinateur: &lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;ls&lt;span class="w"&gt; &lt;/span&gt;/dev/
...
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;La carte est sous le nom "sdb" !&lt;/p&gt;
&lt;p&gt;On rebranche ensuite le lecteur de carte SD et on démonte les partitions : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;umount&lt;span class="w"&gt; &lt;/span&gt;/dev/sdb1
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;umount&lt;span class="w"&gt; &lt;/span&gt;/dev/sdb2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On lance fsck sur chaque partition. J'ai repris les arguments utilisés sur &lt;a href="http://hardware-libre.fr/2014/03/raspberry-pi-et-corruption-de-carte-sd/" title="hardware-libre.fr"&gt;hardware-libre.fr&lt;/a&gt;. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;fsck&lt;span class="w"&gt; &lt;/span&gt;/dev/sdb1&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;-v&lt;span class="w"&gt; &lt;/span&gt;
fsck&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;util-linux&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;.25.2
CP0:&lt;span class="w"&gt; &lt;/span&gt;Argument&lt;span class="w"&gt; &lt;/span&gt;invalide
Trying&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fallback&lt;span class="w"&gt; &lt;/span&gt;DOS&lt;span class="w"&gt; &lt;/span&gt;codepage&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;437&lt;/span&gt;
fsck.fat&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;.0.27&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;2014&lt;/span&gt;-11-12&lt;span class="o"&gt;)&lt;/span&gt;
0x25:&lt;span class="w"&gt; &lt;/span&gt;Dirty&lt;span class="w"&gt; &lt;/span&gt;bit&lt;span class="w"&gt; &lt;/span&gt;is&lt;span class="w"&gt; &lt;/span&gt;set.&lt;span class="w"&gt; &lt;/span&gt;Fs&lt;span class="w"&gt; &lt;/span&gt;was&lt;span class="w"&gt; &lt;/span&gt;not&lt;span class="w"&gt; &lt;/span&gt;properly&lt;span class="w"&gt; &lt;/span&gt;unmounted&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;some&lt;span class="w"&gt; &lt;/span&gt;data&lt;span class="w"&gt; &lt;/span&gt;may&lt;span class="w"&gt; &lt;/span&gt;be&lt;span class="w"&gt; &lt;/span&gt;corrupt.
&lt;span class="w"&gt; &lt;/span&gt;Automatically&lt;span class="w"&gt; &lt;/span&gt;removing&lt;span class="w"&gt; &lt;/span&gt;dirty&lt;span class="w"&gt; &lt;/span&gt;bit.
Performing&lt;span class="w"&gt; &lt;/span&gt;changes.
/dev/sdb1:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;files,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2385&lt;/span&gt;/7161&lt;span class="w"&gt; &lt;/span&gt;clusters
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;fsck&lt;span class="w"&gt; &lt;/span&gt;/dev/sdb2&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;-v
fsck&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;util-linux&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;.25.2
/dev/sdb2:&lt;span class="w"&gt; &lt;/span&gt;Updating&lt;span class="w"&gt; &lt;/span&gt;bad&lt;span class="w"&gt; &lt;/span&gt;block&lt;span class="w"&gt; &lt;/span&gt;inode.

&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;71298&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;i-noeuds&lt;span class="w"&gt; &lt;/span&gt;utilisés&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;7&lt;/span&gt;.51%,&lt;span class="w"&gt; &lt;/span&gt;sur&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;949664&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;54&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;contigus&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;.1%&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;93&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;répertoires&lt;span class="w"&gt; &lt;/span&gt;non&lt;span class="w"&gt; &lt;/span&gt;contigus&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;.1%&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;             &lt;/span&gt;nombre&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="s1"&gt;&amp;#39;i-noeuds avec des blocs ind/dind/tind : 0/0/0&lt;/span&gt;
&lt;span class="s1"&gt;             Histogramme des profondeurs d&amp;#39;&lt;/span&gt;extents&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;55895&lt;/span&gt;/13
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="m"&gt;552209&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;blocs&lt;span class="w"&gt; &lt;/span&gt;utilisés&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;14&lt;/span&gt;.35%,&lt;span class="w"&gt; &lt;/span&gt;sur&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3846912&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;bloc&lt;span class="w"&gt; &lt;/span&gt;défectueux
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichier&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;grande&lt;span class="w"&gt; &lt;/span&gt;taille

&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;50842&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;normaux
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="m"&gt;4879&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;répertoires
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;56&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;périphérique&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;caractère
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;périphérique&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;bloc
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fifos
&lt;span class="w"&gt;         &lt;/span&gt;&lt;span class="m"&gt;689&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens
&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;15480&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens&lt;span class="w"&gt; &lt;/span&gt;symboliques&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;15294&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens&lt;span class="w"&gt; &lt;/span&gt;symboliques&lt;span class="w"&gt; &lt;/span&gt;rapides&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sockets
------------
&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;71978&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Le tutoriel sur hardware-libre.fr conseille d'utiliser aussi les arguments &lt;code&gt;-c -v -y&lt;/code&gt;. Je ne suis pas bien sûr de la différence entre la commande précédente. Il faudrait que je fouille un peu.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;fsck&lt;span class="w"&gt; &lt;/span&gt;/dev/sdb2&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;-v&lt;span class="w"&gt; &lt;/span&gt;-y&lt;span class="w"&gt; &lt;/span&gt;
fsck&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;util-linux&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;.25.2
e2fsck&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;.42.12&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;29&lt;/span&gt;-Aug-2014&lt;span class="o"&gt;)&lt;/span&gt;
Vérification&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;blocs&lt;span class="w"&gt; &lt;/span&gt;défectueux&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;test&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;lecture&lt;span class="w"&gt; &lt;/span&gt;seule&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;complété&lt;span class="w"&gt;                                             &lt;/span&gt;
/dev/sdb2:&lt;span class="w"&gt; &lt;/span&gt;Updating&lt;span class="w"&gt; &lt;/span&gt;bad&lt;span class="w"&gt; &lt;/span&gt;block&lt;span class="w"&gt; &lt;/span&gt;inode.
Passe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;vérification&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;i-noeuds,&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;blocs&lt;span class="w"&gt; &lt;/span&gt;et&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;tailles
Passe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;vérification&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;structure&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;répertoires
Passe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;vérification&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;la&lt;span class="w"&gt; &lt;/span&gt;connectivité&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;répertoires
Passe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;vérification&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;compteurs&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;référence
Passe&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;vérification&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;l&lt;span class="s1"&gt;&amp;#39;information du sommaire de groupe&lt;/span&gt;

&lt;span class="s1"&gt;/dev/sdb2: ***** LE SYSTÈME DE FICHIERS A ÉTÉ MODIFIÉ *****&lt;/span&gt;

&lt;span class="s1"&gt;       71298 i-noeuds utilisés (7.51%, sur 949664)&lt;/span&gt;
&lt;span class="s1"&gt;          54 fichiers non contigus (0.1%)&lt;/span&gt;
&lt;span class="s1"&gt;          93 répertoires non contigus (0.1%)&lt;/span&gt;
&lt;span class="s1"&gt;             nombre d&amp;#39;&lt;/span&gt;i-noeuds&lt;span class="w"&gt; &lt;/span&gt;avec&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;blocs&lt;span class="w"&gt; &lt;/span&gt;ind/dind/tind&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;/0/0
&lt;span class="w"&gt;             &lt;/span&gt;Histogramme&lt;span class="w"&gt; &lt;/span&gt;des&lt;span class="w"&gt; &lt;/span&gt;profondeurs&lt;span class="w"&gt; &lt;/span&gt;d&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;extents&lt;span class="w"&gt; &lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;55895&lt;/span&gt;/13
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="m"&gt;552209&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;blocs&lt;span class="w"&gt; &lt;/span&gt;utilisés&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;14&lt;/span&gt;.35%,&lt;span class="w"&gt; &lt;/span&gt;sur&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3846912&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;bloc&lt;span class="w"&gt; &lt;/span&gt;défectueux
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichier&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;grande&lt;span class="w"&gt; &lt;/span&gt;taille

&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;50842&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;normaux
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="m"&gt;4879&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;répertoires
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;56&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;périphérique&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;caractère
&lt;span class="w"&gt;          &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;périphérique&lt;span class="w"&gt; &lt;/span&gt;en&lt;span class="w"&gt; &lt;/span&gt;mode&lt;span class="w"&gt; &lt;/span&gt;bloc
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fifos
&lt;span class="w"&gt;         &lt;/span&gt;&lt;span class="m"&gt;689&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens
&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;15480&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens&lt;span class="w"&gt; &lt;/span&gt;symboliques&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;15294&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;liens&lt;span class="w"&gt; &lt;/span&gt;symboliques&lt;span class="w"&gt; &lt;/span&gt;rapides&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sockets
------------
&lt;span class="w"&gt;       &lt;/span&gt;&lt;span class="m"&gt;71978&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;fichiers
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Après avoir fait ça, je peux rebooter sur la carte SD ! :-)&lt;/p&gt;</content><category term="Tuto"></category><category term="fsck"></category><category term="commande"></category><category term="gnu/linux"></category><category term="partition"></category><category term="terminal"></category><category term="raspberry pi"></category></entry><entry><title>Ma configuration de Vim</title><link href="https://blog.simonlefort.be/vim-config.html" rel="alternate"></link><published>2015-05-09T15:25:00+02:00</published><updated>2015-05-09T15:25:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-05-09:/vim-config.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. J'utilise &lt;a href="https://neovim.io/"&gt;Neovim&lt;/a&gt; à présent et je détaille mes astuces sur &lt;a href="https://simonlefort.be/neovim"&gt;mon wiki&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cette semaine, j'ai été amené à réinstaller un ordinateur sous Debian 7 "Wheezy" vers Debian 8 "Jessie". J'ai du à nouveau jeter un œil à ma configuration de &lt;strong&gt;Vim&lt;/strong&gt;. Dans la foulée …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. J'utilise &lt;a href="https://neovim.io/"&gt;Neovim&lt;/a&gt; à présent et je détaille mes astuces sur &lt;a href="https://simonlefort.be/neovim"&gt;mon wiki&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cette semaine, j'ai été amené à réinstaller un ordinateur sous Debian 7 "Wheezy" vers Debian 8 "Jessie". J'ai du à nouveau jeter un œil à ma configuration de &lt;strong&gt;Vim&lt;/strong&gt;. Dans la foulée, je suis tombée sur toute une série d'articles me vantant tels ou tels plugins pour me changer la vie. J'ai donc essayé pas mal de choses. Voici un petit résumé de ma configuration et des quelques plugins et astuces qui me sont devenus indispensables.&lt;/p&gt;
&lt;h1&gt;Installation de Vim&lt;/h1&gt;
&lt;p&gt;C'est évidemment la première étape.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;aptitude&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;vim
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Une fois que vim est installé et que vous l'avez utilisé au moins une fois, un fichier &lt;code&gt;.viminfo&lt;/code&gt; est créé dans votre &lt;code&gt;home&lt;/code&gt;. Il contient l'historique des commandes utilisées, l'historique des fichiers ouverts avec Vim et toute une série d'autres choses qui vous seront peut-être utiles un jour. Personnelement, je ne l'ouvre jamais...&lt;/p&gt;
&lt;h1&gt;Configuration de base&lt;/h1&gt;
&lt;p&gt;Pour rendre &lt;strong&gt;Vim&lt;/strong&gt; un peu plus sexy, on va créer le fichier de configuration &lt;code&gt;~/.vimrc&lt;/code&gt; et y rajouter quelques options. Ce fichier sera chargé au démarrage de &lt;strong&gt;Vim&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot; --- OPTIONS DE BASE&lt;/span&gt;
&lt;span class="c"&gt;&amp;quot; Annule la compatibilité avec Vi&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;nocompatible&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Affichage&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;title&lt;/span&gt;        &lt;span class="c"&gt;&amp;quot;Met à jour le titre de votre fenêtre ou de votre terminal&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="k"&gt;number&lt;/span&gt;       &lt;span class="c"&gt;&amp;quot;Affiche le numéro des lignes&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;ruler&lt;/span&gt;        &lt;span class="c"&gt;&amp;quot;Affiche la position actuelle du curseur&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;wrap&lt;/span&gt;         &lt;span class="c"&gt;&amp;quot;Affiche les lignes trop longues sur plusieurs lignes&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;scrolloff&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;  &lt;span class="c"&gt;&amp;quot;Affiche un minimum de 3 lignes autour du curseur (pour le scroll)&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Recherche&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;ignorecase&lt;/span&gt;   &lt;span class="c"&gt;&amp;quot;Ignore la case lors d&amp;#39;une recherche&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;smartcase&lt;/span&gt;    &lt;span class="c"&gt;&amp;quot;Si une recherche contient une majuscule, réactive la sensibilité à la case&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;incsearch&lt;/span&gt;    &lt;span class="c"&gt;&amp;quot;Surligne les résultats de recherche pendant la saisie&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;hlsearch&lt;/span&gt;     &lt;span class="c"&gt;&amp;quot;Surligne les résultats de recherche&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Beep&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;noerrorbells&lt;/span&gt; &lt;span class="c"&gt;&amp;quot;Empêche Vim de beeper&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Active le comportement habituel de la touche retour en arrière&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;backspace&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;indent&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nb"&gt;eol&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="k"&gt;start&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Cache les fichiers lors de l&amp;#39;ouverture d&amp;#39;autres fichiers&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;hidden&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Active les comportements spécifiques aux types de fichiers comme la syntaxe et l&amp;#39;indentation.&lt;/span&gt;
  &lt;span class="k"&gt;filetype&lt;/span&gt; plugin indent &lt;span class="k"&gt;on&lt;/span&gt;  
  &lt;span class="nb"&gt;syntax&lt;/span&gt; enable

&lt;span class="c"&gt;&amp;quot; Gestion des tabulations (Ctrl + T pour avancer d&amp;#39;une colonne, Ctrl + d pour reculer)&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="k"&gt;sw&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;

&lt;span class="c"&gt;&amp;quot; Gestion du clipboard système&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;clipboard&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;unnamed

&lt;span class="c"&gt;&amp;quot; Désactiver la touche Echap (Esc)&lt;/span&gt;
  :imap ;; Esc
  :map ;; Esc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Toutes ces options ne sont pas indispensables. Testez celles qui vous semblent intéressantes, modifiez-les comme bon vous semble. Je précise qu'une bonne partie de ces options se retrouvent sur beaucoup de sites et aussi dans le très bon livre &lt;a href="https://vimebook.com/" title="Vim pour les humains"&gt;Vim pour les humains&lt;/a&gt;.&lt;/p&gt;
&lt;h1&gt;Installation de Pathogen&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://github.com/tpope/vim-pathogen" title="Pathogen sur Github"&gt;Pathogen&lt;/a&gt; est la première extension que nous allons installer. Pourquoi ? Parce qu'elle permet de faciliter l'installation de toutes les autres, à la manière de &lt;code&gt;pip&lt;/code&gt; pour Python. Elle est en tout cas conseillée dans la plupart des articles qui parlent de Vim et de ses plugins.&lt;/p&gt;
&lt;p&gt;On crée tout d'abord les dossiers &lt;code&gt;~/.vim/autoload&lt;/code&gt; et &lt;code&gt;~/.vim/bundle&lt;/code&gt;. Ensuite, on télécharge le fichier &lt;code&gt;pathogen.vim&lt;/code&gt; avec la commande &lt;code&gt;curl&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;mkdir&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;~/.vim/autoload&lt;span class="w"&gt; &lt;/span&gt;~/.vim/bundle
$&lt;span class="w"&gt; &lt;/span&gt;curl&lt;span class="w"&gt; &lt;/span&gt;-LSso&lt;span class="w"&gt; &lt;/span&gt;~/.vim/autoload/pathogen.vim&lt;span class="w"&gt; &lt;/span&gt;https://tpo.pe/pathogen.vim
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, on peut modifier le fichier &lt;code&gt;~/.vimrc&lt;/code&gt; et ajouter l'appel à pathogen.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;Appeler Pathogen ( https://github.com/tpope/vim-pathogen )&lt;/span&gt;
  execute pathogen#infect&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Installation d'autres extensions&lt;/h1&gt;
&lt;h2&gt;Installation du thème &lt;em&gt;Solarized&lt;/em&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/altercation/vim-colors-solarized" title="Solarized pour Vim"&gt;Solarized&lt;/a&gt; est un thème pour &lt;strong&gt;Vim&lt;/strong&gt;. Il permet de ne pas confondre certains caractères ( o, O, 0, i, I, l, L, ...) et aporte une colorisation sympathique de votre éditeur préféré. Grâce à l'installation de Pathogen, l'installation se fait en deux commandes et une modifications dans le fichier &lt;code&gt;~/vimrc&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;~/.vim/bundle
$&lt;span class="w"&gt; &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;clone&lt;span class="w"&gt; &lt;/span&gt;git://github.com/altercation/vim-colors-solarized.git
$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;Thème Solarized ( https://github.com/altercation/vim-colors-solarized )&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;background&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;dark&lt;/span&gt;
  &lt;span class="k"&gt;colorscheme&lt;/span&gt; solarized
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il peut y avoir un conflit entre les couleurs du terminal et les couleurs de Vim. Le plus simple si vous l'utilisez sur votre ordinateur, c'est de mettre le &lt;a href="https://github.com/Anthony25/gnome-terminal-colors-solarized" title="Solarized pour le terminal"&gt;thème Solarized pour le terminal&lt;/a&gt;. Sur un serveur ou un ordinateur où vous ne voulez pas le thème Solarized, il faut rajouter une ligne dans &lt;code&gt;~/.vimrc&lt;/code&gt; : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;Thème Solarized ( https://github.com/altercation/vim-colors-solarized )&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;background&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;dark&lt;/span&gt;
  &lt;span class="k"&gt;let&lt;/span&gt; &lt;span class="k"&gt;g&lt;/span&gt;:solarized_termcolors&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="m"&gt;256&lt;/span&gt;
  &lt;span class="k"&gt;colorscheme&lt;/span&gt; solarized
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Installation de Gundo&lt;/h2&gt;
&lt;p&gt;&lt;a href="http://sjl.bitbucket.org/gundo.vim/" title="Gundo"&gt;Gundo&lt;/a&gt; permet de naviguer dans l'historique de modifications d'un fichier de manière beaucoup plus simple que la commande &lt;code&gt;undo&lt;/code&gt; intégrée à vim. Pour que ce plugin puisse fonctionner, il faut installer &lt;code&gt;vim-nox&lt;/code&gt; et bien évidemment Pathogen.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;aptitude&lt;span class="w"&gt; &lt;/span&gt;install&lt;span class="w"&gt; &lt;/span&gt;vim-nox
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Une fois vim-nox installé, on télécharge gundo et on le placer dans le dossier &lt;code&gt;~/.vim/bundle/&lt;/code&gt;. Ensuite, on rajoute ces lignes dans &lt;code&gt;~/.vimrc&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;clone&lt;span class="w"&gt; &lt;/span&gt;http://github.com/sjl/gundo.vim.git&lt;span class="w"&gt; &lt;/span&gt;~/.vim/bundle/gundo
$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;Gundo ( http://sjl.bitbucket.org/gundo.vim/ )&lt;/span&gt;
  &lt;span class="nb"&gt;noremap&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;F5&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; :GundoToggle&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;CR&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour rendre l'historique de Gundo persistant et garder une trace de toutes les modifications réalisées sur nos fichiers avec &lt;strong&gt;Vim&lt;/strong&gt;, on crée un dossier &lt;code&gt;~/.vim/gundodir&lt;/code&gt; et on le renseigne dans le &lt;code&gt;~/.vimrc&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;mkdir&lt;span class="w"&gt; &lt;/span&gt;-p&lt;span class="w"&gt; &lt;/span&gt;~/.vim/gundodir
$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;Gundo persistant&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;undofile&lt;/span&gt;
  &lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nb"&gt;undodir&lt;/span&gt;&lt;span class="p"&gt;=~&lt;/span&gt;&lt;span class="sr"&gt;/.vim/&lt;/span&gt;gundodir
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Installation de NERDTree&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/scrooloose/nerdtree" title="NERDTree sur Github"&gt;NERDTree&lt;/a&gt; permet d'avoir un navigateur de fichiers intégré à &lt;strong&gt;Vim&lt;/strong&gt;, ce qui permet de passer d'un à l'autre sans quitter votre éditeur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$&lt;span class="w"&gt; &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;clone&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;git://github.com/scrooloose/nerdtree&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;~/.vim/bundle/nerdtree
$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;~/.vimrc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;quot;NERDTree ( https://github.com/pendulm/nerdtree )&lt;/span&gt;
  &lt;span class="nb"&gt;noremap&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;F9&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; :NERDTreeToggle&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="k"&gt;return&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="c"&gt;  &amp;quot;BONUS: active NERDTree si on utilise pas d&amp;#39;argument pour ouvrir vim&lt;/span&gt;
  autocmd &lt;span class="nb"&gt;VimEnter&lt;/span&gt; * &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;!&lt;/span&gt;argc&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; NERDTree &lt;span class="p"&gt;|&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Vous pouvez maintenant naviguer dans votre arborescence de fichiers facilement, en appuyant sur la touche &lt;code&gt;F9&lt;/code&gt; dans &lt;strong&gt;Vim&lt;/strong&gt;.&lt;/p&gt;
&lt;h2&gt;Autres extensions&lt;/h2&gt;
&lt;p&gt;Il y a une quantité d'autres extensions très intéressantes à installer avec &lt;strong&gt;Vim&lt;/strong&gt;. Par exemple, &lt;a href="https://github.com/ervandew/supertab"&gt;SuperTab&lt;/a&gt;, &lt;a href="https://github.com/davidhalter/jedi-vim"&gt;Jedi-vim&lt;/a&gt;, &lt;a href="https://github.com/davidhalter/jedi-vim"&gt;ConqueTerm&lt;/a&gt;, ... Je détaillerai peut-être l'installation d'une ou l'autre prochainement.&lt;/p&gt;
&lt;h2&gt;Astuces diverses&lt;/h2&gt;
&lt;h3&gt;Utiliser la même configuration pour l'utilisateur root (sudo) que l'utilisateur courant&lt;/h3&gt;
&lt;p&gt;Pour garder toutes les fonctionnalités des plugins installés ci-dessus quand on modifie un fichier en &lt;code&gt;root&lt;/code&gt; ou avec &lt;code&gt;sudo&lt;/code&gt;, on fait un lien symbolique de notre configuration locale dans le dossier &lt;code&gt;/root/&lt;/code&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="c1"&gt;#sauvegarde de votre config vim root/sudo (si elle existe) :&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;/root/.vimrc&lt;span class="o"&gt;{&lt;/span&gt;,.bak&lt;span class="o"&gt;}&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;/root/.vim&lt;span class="o"&gt;{&lt;/span&gt;,.bak&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;#création des liens symboliques&lt;/span&gt;
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/simon/.vimrc&lt;span class="w"&gt; &lt;/span&gt;/root/
$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;ln&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;/home/simon/.vim&lt;span class="w"&gt; &lt;/span&gt;/root/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'espère que ça vous aidera pour vous lancer dans le monde de &lt;strong&gt;Vim&lt;/strong&gt;. Sinon, ça me servira au moins d'aide-mémoire. ;-)&lt;/p&gt;
&lt;h3&gt;Quelques liens&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://joacodepel.tk/posts/vim-pour-python/" title="Vim pour Python"&gt;Joacodepel.tk&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://artisan.karma-lab.net/configurer-vim" title="Configurer Vim"&gt;Artisan.karma-lab.net&lt;/a&gt;&lt;/p&gt;</content><category term="Tuto"></category><category term="vim"></category><category term="linux"></category><category term="configuration"></category><category term="tuto"></category><category term="plugin"></category></entry><entry><title>Configuration de Syncthing via l'interface web et via le fichier de configuration</title><link href="https://blog.simonlefort.be/syncthing2.html" rel="alternate"></link><published>2015-05-01T07:25:00+02:00</published><updated>2015-05-01T07:25:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-05-01:/syncthing2.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Je n'utilise plus que Nextcloud à présent.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Maintenant qu'&lt;a href="https://blog.simonlefort.be/syncthing.html" title="Installation de Syncthing"&gt;on a installé Syncthing&lt;/a&gt;, au moins sur deux machines, on peut passer à la configuration. Celle-ci peut se faire de manière graphique, via la page web ( localhost:8080 ou IP:8080 ) ou bien directement dans …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Je n'utilise plus que Nextcloud à présent.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Maintenant qu'&lt;a href="https://blog.simonlefort.be/syncthing.html" title="Installation de Syncthing"&gt;on a installé Syncthing&lt;/a&gt;, au moins sur deux machines, on peut passer à la configuration. Celle-ci peut se faire de manière graphique, via la page web ( localhost:8080 ou IP:8080 ) ou bien directement dans le fichier de configuration.&lt;/p&gt;
&lt;p&gt;Si vous l'avez installé comme moi, votre configuration sur trouve dans &lt;code&gt;/home/pi/.config/syncthing/config.xml&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Allons jeter un œil à cette configuration vierge !&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;cat&lt;span class="w"&gt; &lt;/span&gt;.config/syncthing/config.xml
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;configuration&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;version=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;10&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;default&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;/home/pi/Sync&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ro=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;rescanIntervalS=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;60&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ignorePerms=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;autoNormalize=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;H2P4J43-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-ABW74QX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;versioning&amp;gt;&amp;lt;/versioning&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;lenientMtimes&amp;gt;&lt;/span&gt;false&lt;span class="nt"&gt;&amp;lt;/lenientMtimes&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;copiers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/copiers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;pullers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/pullers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;hashers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/hashers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/folder&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;H2P4J43-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-ABW74QX&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;raspberrypi&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;compression=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;metadata&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;introducer=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;dynamic&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;gui&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;enabled=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;tls=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;127.0.0.1:8080&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;apikey&amp;gt;&lt;/span&gt;XGQSXXXXXXXXXXXXXXXXXXXXXXXXXXSi&lt;span class="nt"&gt;&amp;lt;/apikey&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/gui&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;options&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;listenAddress&amp;gt;&lt;/span&gt;0.0.0.0:22000&lt;span class="nt"&gt;&amp;lt;/listenAddress&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;globalAnnounceServer&amp;gt;&lt;/span&gt;udp4://announce.syncthing.net:22026&lt;span class="nt"&gt;&amp;lt;/globalAnnounceServer&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;globalAnnounceServer&amp;gt;&lt;/span&gt;udp6://announce-v6.syncthing.net:22026&lt;span class="nt"&gt;&amp;lt;/globalAnnounceServer&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;globalAnnounceEnabled&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/globalAnnounceEnabled&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;localAnnounceEnabled&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/localAnnounceEnabled&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;localAnnouncePort&amp;gt;&lt;/span&gt;21025&lt;span class="nt"&gt;&amp;lt;/localAnnouncePort&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;localAnnounceMCAddr&amp;gt;&lt;/span&gt;[ff32::5222]:21026&lt;span class="nt"&gt;&amp;lt;/localAnnounceMCAddr&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;maxSendKbps&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/maxSendKbps&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;maxRecvKbps&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/maxRecvKbps&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;reconnectionIntervalS&amp;gt;&lt;/span&gt;60&lt;span class="nt"&gt;&amp;lt;/reconnectionIntervalS&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;startBrowser&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/startBrowser&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;upnpEnabled&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/upnpEnabled&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;upnpLeaseMinutes&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/upnpLeaseMinutes&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;upnpRenewalMinutes&amp;gt;&lt;/span&gt;30&lt;span class="nt"&gt;&amp;lt;/upnpRenewalMinutes&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;urAccepted&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/urAccepted&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;urUniqueID&amp;gt;&amp;lt;/urUniqueID&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;restartOnWakeup&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/restartOnWakeup&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;autoUpgradeIntervalH&amp;gt;&lt;/span&gt;12&lt;span class="nt"&gt;&amp;lt;/autoUpgradeIntervalH&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;keepTemporariesH&amp;gt;&lt;/span&gt;24&lt;span class="nt"&gt;&amp;lt;/keepTemporariesH&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;cacheIgnoredFiles&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/cacheIgnoredFiles&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;progressUpdateIntervalS&amp;gt;&lt;/span&gt;5&lt;span class="nt"&gt;&amp;lt;/progressUpdateIntervalS&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;symlinksEnabled&amp;gt;&lt;/span&gt;true&lt;span class="nt"&gt;&amp;lt;/symlinksEnabled&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;limitBandwidthInLan&amp;gt;&lt;/span&gt;false&lt;span class="nt"&gt;&amp;lt;/limitBandwidthInLan&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/options&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/configuration&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Concrètement, la configuration de tout syncthing se retrouve dans ces quelques lignes. Qu'on fasse un changement via l'interface web ou directement via la configuration ne change rien. Il faudra juste penser à relancer syncthing après chaque modification.&lt;/p&gt;
&lt;p&gt;La première chose que j'ai changée après l'installation, c'est la possibilité d'accéder à l'interface web depuis un autre ordinateur. Soit on va sur l'interface web et on change &lt;code&gt;Adresse du GUI&lt;/code&gt; dans la configuration, soit on change directement la ligne concernée dans le fichier &lt;code&gt;config.xml&lt;/code&gt;. Au passage, j'ai aussi changé le nom du &lt;code&gt;device&lt;/code&gt;. &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;configuration&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;version=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;10&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;(...)
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;H2P4J43-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-ABW74QX&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;RaspberryPi&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;compression=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;metadata&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;introducer=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;dynamic&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;gui&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;enabled=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;tls=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;0.0.0.0:8080&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;apikey&amp;gt;&lt;/span&gt;XGQSXXXXXXXXXXXXXXXXXXXXXXXXXXSi&lt;span class="nt"&gt;&amp;lt;/apikey&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/gui&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;(...)
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/options&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/configuration&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour ajouter un device, on ajoute ceci dans la configuration, sous les équipements existants :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;ZKOZAPE-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-SWOAVAW&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;Debian&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;compression=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;metadata&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;introducer=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;dynamic&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour ajouter un dossier partagé avec ce device :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;files&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;/media/usb-pi/Sync/files/&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ro=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;rescanIntervalS=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;60&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ignorePerms=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;autoNormalize=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;ZKOZAPE-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-SWOAVAW&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;H2P4J43-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-ABW74QX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;versioning&amp;gt;&amp;lt;/versioning&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;lenientMtimes&amp;gt;&lt;/span&gt;false&lt;span class="nt"&gt;&amp;lt;/lenientMtimes&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;copiers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/copiers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;pullers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/pullers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;hashers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/hashers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/folder&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Un autre exemple : Un dossier partagé entre quatre machines. Chaque machine peut écrire dans le dossier.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;All-files&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;path=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;/home/user/Sync/All-files&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ro=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;rescanIntervalS=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;60&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;ignorePerms=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;autoNormalize=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;ZKOZAPE-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;Z4AMOJH-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;2LVP7TC-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;device&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;H2P4J43-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/device&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;versioning&amp;gt;&amp;lt;/versioning&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;lenientMtimes&amp;gt;&lt;/span&gt;false&lt;span class="nt"&gt;&amp;lt;/lenientMtimes&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;copiers&amp;gt;&lt;/span&gt;1&lt;span class="nt"&gt;&amp;lt;/copiers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;pullers&amp;gt;&lt;/span&gt;16&lt;span class="nt"&gt;&amp;lt;/pullers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;hashers&amp;gt;&lt;/span&gt;0&lt;span class="nt"&gt;&amp;lt;/hashers&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/folder&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut évidemment ajouter cette configuration sur les deux -ou plus- instances Syncthing que vous utilisez. Avec ça, on a la base.
Plus qu'à jouer et expérimenter les différentes options.&lt;/p&gt;
&lt;h1&gt;Erreurs rencontrées :&lt;/h1&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="mi"&gt;13&lt;/span&gt;:&lt;span class="mi"&gt;34&lt;/span&gt;:&lt;span class="mi"&gt;10&lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;All-files&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;isn&lt;/span&gt;&lt;span class="err"&gt;&amp;#39;t making progress - check logs for possible root cause. Pausing puller for 1m0s.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;L'erreur est due à des noms de fichiers qui ne sont pas compatibles avec &lt;a href="https://fr.wikipedia.org/wiki/FAT16"&gt;FAT16&lt;/a&gt;. En effet, ce système de fichier ne supporte pas certains caractères ( / \ : * ? " &amp;lt; &amp;gt; | ). J'ai quelques musiques avec des ? à la place des caractères accentués... &lt;/p&gt;
&lt;p&gt;J'ai aussi eu droit à un dossier avec un espace à la fin du nom. Belle galère à trouver. Il faudrait que je fasse un petit script pour repérer les noms de fichiers ou dossiers non compatibles.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;:&lt;span class="mi"&gt;52&lt;/span&gt;:&lt;span class="mi"&gt;57&lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Stopping&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;All-files&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;path&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;exists&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;but&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;folder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;marker&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;missing&lt;/span&gt;,&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;check&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;mount&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;issues&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Le dossier est vide, j'ai coupé le partage en attendant de corriger les mauvais noms de fichiers et j'ai cette erreur. Il n'y a pas de fichier &lt;code&gt;.stfolder&lt;/code&gt; dans le dossier &lt;code&gt;All-files&lt;/code&gt;. Parce-que le dossier n'est pas partagé ? J'ai copié &lt;code&gt;.stfolder&lt;/code&gt; depuis un autre dossier et ça n'a rien changé.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L'erreur a disparue quand j'ai relancé le partage.&lt;/strong&gt;
~~~&lt;/p&gt;</content><category term="Tuto"></category><category term="syncthing"></category><category term="raspberry pi"></category><category term="linux"></category><category term="synchronisation"></category><category term="back-up"></category></entry><entry><title>Markdown et Pelican</title><link href="https://blog.simonlefort.be/markdown.html" rel="alternate"></link><published>2015-04-14T07:20:00+02:00</published><updated>2015-04-14T07:20:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-04-14:/markdown.html</id><summary type="html">&lt;p&gt;Je me retrouve souvent à aller relire mes anciens articles pour me rappeler comment on souligne quelque chose, comment on intègre une image ou comment on fait un lien en Markdown. Et comme j'ai une mauvaise mémoire et que je n'écris pas assez souvent ici, je perds vite du temps …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Je me retrouve souvent à aller relire mes anciens articles pour me rappeler comment on souligne quelque chose, comment on intègre une image ou comment on fait un lien en Markdown. Et comme j'ai une mauvaise mémoire et que je n'écris pas assez souvent ici, je perds vite du temps... Voici donc un petit article de rappel sur les possibilités du langage de formatage Markdown.&lt;/p&gt;
&lt;p&gt;Liens utiles :&lt;/p&gt;
&lt;p&gt;&lt;a href="https://daringfireball.net/projects/markdown/basics"&gt;Référence du markdown&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://sourceforge.net/p/pelican-edt/wiki/markdown_syntax/"&gt;Pelican / Wiki / Markdown Syntax&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Titres :&lt;/h1&gt;
&lt;p&gt;On peut faire plusieurs niveaux de titres :&lt;/p&gt;
&lt;h1&gt;Titre de niveau 1&lt;/h1&gt;
&lt;h2&gt;Titre de niveau 2&lt;/h2&gt;
&lt;h3&gt;Titre de niveau 3&lt;/h3&gt;
&lt;h4&gt;Titre de niveau 4&lt;/h4&gt;
&lt;h5&gt;Titre de niveau 5&lt;/h5&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gh"&gt;#Titre de niveau 1&lt;/span&gt;
&lt;span class="gu"&gt;##Titre de niveau 2&lt;/span&gt;
&lt;span class="gu"&gt;###Titre de niveau 3&lt;/span&gt;
&lt;span class="gu"&gt;####Titre de niveau 4&lt;/span&gt;
&lt;span class="gu"&gt;#####Titre de niveau 5&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Je viens de remarquer que les titres de niveaux 1 et 2 s'affichent de la même manière malgré leur différenciation dans le code ( &lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; et &lt;code&gt;&amp;lt;h2&amp;gt;&lt;/code&gt; dans le code source de la page ). Il faut que je regarde au niveau du CSS du plugin de style.&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Table des matières :&lt;/h1&gt;
&lt;p&gt;Si j'installais le &lt;a href="https://github.com/getpelican/pelican-plugins/tree/master/extract_toc" title="extract_toc pour Pelican"&gt;plugin qui-va-bien&lt;/a&gt;, je n'aurais qu'à taper &lt;code&gt;[TOC]&lt;/code&gt; pour faire apparaitre une table des matières. &lt;code&gt;TO DO&lt;/code&gt; donc.&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Formatage :&lt;/h1&gt;
&lt;p&gt;Mettre en &lt;em&gt;italique&lt;/em&gt;, en &lt;strong&gt;gras&lt;/strong&gt; ou les &lt;strong&gt;&lt;em&gt;deux en même temps&lt;/em&gt;&lt;/strong&gt; :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Texte en &lt;span class="ge"&gt;*italique*&lt;/span&gt; et en &lt;span class="ge"&gt;_italique_&lt;/span&gt;.
Texte en &lt;span class="gs"&gt;**gras**&lt;/span&gt; et en &lt;span class="gs"&gt;__gras__&lt;/span&gt;.
Texte en ***italique et gras*** et en ___italique et gras___.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour &lt;s&gt;barrer du texte&lt;/s&gt;, il faut utiliser la balise &lt;code&gt;&amp;lt;s&amp;gt;&lt;/code&gt; de l'html :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Voilà du &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;s&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;texte barré&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;s&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour &lt;u&gt;souligner&lt;/u&gt;, on fait appel à la balise &lt;code&gt;&amp;lt;u&amp;gt;&lt;/code&gt; de l'html :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Voilà du &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;u&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;texte souligné&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;u&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour faire une barre horizontale :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gu"&gt;***&lt;/span&gt;
&lt;span class="gu"&gt;---&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;hr&gt;
&lt;h1&gt;Liens :&lt;/h1&gt;
&lt;p&gt;&lt;a href="http://blog.simonlefort.be"&gt;http://blog.simonlefort.be&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.simonlefort.be"&gt;Blog de Simon Lefort&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.simonlefort.be" title="mon blog"&gt;Blog de Simon Lefort&lt;/a&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&amp;lt;http://blog.simonlefort.be&amp;gt;

[&lt;span class="nt"&gt;Blog de Simon Lefort&lt;/span&gt;](&lt;span class="na"&gt;http://blog.simonlefort.be&lt;/span&gt;)

[&lt;span class="nt"&gt;Blog de Simon Lefort&lt;/span&gt;](&lt;span class="na"&gt;http://blog.simonlefort.be &amp;quot;mon blog&amp;quot;&lt;/span&gt;)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On peut aussi utiliser des &lt;a href="http://blog.simonlefort.be" title="mon blog"&gt;liens de référence&lt;/a&gt; et placer le lien sous le paragraphe.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;On peut aussi utiliser des [&lt;span class="nt"&gt;liens de référence&lt;/span&gt;][&lt;span class="nl"&gt;1&lt;/span&gt;] et placer le lien sous le paragraphe.
[&lt;span class="nl"&gt;1&lt;/span&gt;]: &lt;span class="na"&gt;http://blog.simonlefort.be &amp;quot;mon blog&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;hr&gt;
&lt;h1&gt;Images :&lt;/h1&gt;
&lt;p&gt;&lt;img alt="alternate text" src="https://sourceforge.net/images/icon_linux.gif"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="tiny arrow" src="https://sourceforge.net/images/icon_linux.gif" title="tiny arrow"&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;![&lt;span class="nt"&gt;alternate text&lt;/span&gt;](&lt;span class="na"&gt;https://sourceforge.net/images/icon_linux.gif&lt;/span&gt;)
![&lt;span class="nt"&gt;tiny arrow&lt;/span&gt;](&lt;span class="na"&gt;https://sourceforge.net/images/icon_linux.gif &amp;quot;tiny arrow&amp;quot;&lt;/span&gt;)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;hr&gt;
&lt;h1&gt;Listes :&lt;/h1&gt;
&lt;p&gt;On peut utiliser &lt;code&gt;*&lt;/code&gt;, &lt;code&gt;+&lt;/code&gt; ou &lt;code&gt;-&lt;/code&gt; pour des éléments non-numérotés et il faut commencer une liste numérotée par un chiffre. Pour descendre d'un niveau dans la liste, on met 4 espaces.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;premier élément&lt;/li&gt;
&lt;li&gt;second élément&lt;ul&gt;
&lt;li&gt;sous-élément&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Liste numérotée :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;premier élément&lt;/li&gt;
&lt;li&gt;second élément&lt;/li&gt;
&lt;li&gt;troisième élément&lt;ul&gt;
&lt;li&gt;sous-élément&lt;/li&gt;
&lt;li&gt;sous-élément&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;quatrième élément&lt;ol&gt;
&lt;li&gt;sous-élément numéroté&lt;/li&gt;
&lt;li&gt;sous-élément numéroté&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;1.&lt;/span&gt; premier élément
&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;second élément
&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;troisième élément
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sous-élément
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sous-élément
&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;quatrième élément
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;1.&lt;/span&gt; sous-élément numéroté
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sous-élément numéroté
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;hr&gt;
&lt;h1&gt;Tableaux :&lt;/h1&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Nom colonne&lt;/th&gt;
&lt;th&gt;Nom autre colonne&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;contenu1&lt;/td&gt;
&lt;td&gt;contenu2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;contenu3&lt;/td&gt;
&lt;td&gt;contenu4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;le contenu5 est le plus long&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;contenu7&lt;/td&gt;
&lt;td&gt;contenu8&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Nom colonne | Nom autre colonne
------------|------------------
contenu1    | contenu2
contenu3    | contenu4
le contenu5 est le plus long
contenu7    | contenu8
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Oui, il n'y a pas de &lt;code&gt;contenu6&lt;/code&gt;, ce n'est pas obligé. &lt;/p&gt;
&lt;h1&gt;Insérer du code :&lt;/h1&gt;
&lt;h3&gt;Python:&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;test Python&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Autre test Python&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;    :::python
    print(&amp;quot;test Python&amp;quot;)


 ```python
 print(&amp;quot;Autre test Python&amp;quot;)
 ``` 
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Bash:&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="c1"&gt;### BEGIN INIT INFO&lt;/span&gt;
&lt;span class="c1"&gt;# Provides: ...&lt;/span&gt;
&lt;span class="c1"&gt;# Required-Start: $local_fs $remote_fs&lt;/span&gt;
&lt;span class="c1"&gt;# ...&lt;/span&gt;
&lt;span class="c1"&gt;### END INIT INFO&lt;/span&gt;

&lt;span class="nv"&gt;syncthing_USERS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;simon&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#blabla&lt;/span&gt;
&lt;span class="nv"&gt;DAEMON&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/.../syncthing&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="c1"&gt;#blabla&lt;/span&gt;

startd&lt;span class="o"&gt;()&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;{&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;..
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;lsblk
NAME&lt;span class="w"&gt;        &lt;/span&gt;MAJ:MIN&lt;span class="w"&gt; &lt;/span&gt;RM&lt;span class="w"&gt;   &lt;/span&gt;SIZE&lt;span class="w"&gt; &lt;/span&gt;RO&lt;span class="w"&gt; &lt;/span&gt;TYPE&lt;span class="w"&gt; &lt;/span&gt;MOUNTPOINT
sda&lt;span class="w"&gt;           &lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;:0&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;15G&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;disk
└─sda1&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;:1&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;15G&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;part&lt;span class="w"&gt; &lt;/span&gt;/media/usb-pi
mmcblk0&lt;span class="w"&gt;     &lt;/span&gt;&lt;span class="m"&gt;179&lt;/span&gt;:0&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;7&lt;/span&gt;,4G&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;disk
├─mmcblk0p1&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;179&lt;/span&gt;:1&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;56M&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;part&lt;span class="w"&gt; &lt;/span&gt;/boot
└─mmcblk0p2&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;179&lt;/span&gt;:2&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="m"&gt;7&lt;/span&gt;,3G&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;part&lt;span class="w"&gt; &lt;/span&gt;/
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;    :::bash
    code bash

&lt;span class="sb"&gt; ```bash&lt;/span&gt;
&lt;span class="w"&gt; &lt;/span&gt;code&lt;span class="w"&gt; &lt;/span&gt;bash
&lt;span class="sb"&gt; ```&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Autres :&lt;/h2&gt;
&lt;p&gt;On peut mettre pas mal de langages différents. J'ai aussi essayé &lt;code&gt;xml&lt;/code&gt; et &lt;code&gt;markdown&lt;/code&gt;. La liste complète des langages supportés par &lt;a href="http://pygments.org/languages/" title="langages supportés par Pygments"&gt;Pygments est ici&lt;/a&gt;. Il y en a un paquet !&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Citation :&lt;/h1&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Texte cité niveau 2
Texte cité niveau 1&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&amp;gt;&amp;gt; Texte cité niveau 2
&lt;span class="k"&gt;&amp;gt; &lt;/span&gt;&lt;span class="ge"&gt;Texte cité niveau 1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;hr&gt;
&lt;p&gt;J'ai noté ici tout ce qui me semblait important de retenir. Si vous avez besoin d'autre chose, n'hésitez pas à regarder les liens que j'ai mis en début d'article. Ils sont &lt;strong&gt;plus complets&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;~~~&lt;/p&gt;</content><category term="Tuto"></category><category term="markdown"></category><category term="pelican"></category></entry><entry><title>Installation de Syncthing sur un Raspberry Pi 2, modèle B</title><link href="https://blog.simonlefort.be/syncthing.html" rel="alternate"></link><published>2015-04-12T15:43:00+02:00</published><updated>2015-04-12T15:43:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-04-12:/syncthing.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. J'ai utilisé Syncthing quelques temps avant de passer exclusivement à Nextcloud.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Depuis un moment, je réfléchis à un système de sauvegarde pour mes fichiers. Je n'ai pas envie d'utiliser un service de "cloud" en ligne sur lequel je n'ai pas de prise et j'ai …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. J'ai utilisé Syncthing quelques temps avant de passer exclusivement à Nextcloud.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Depuis un moment, je réfléchis à un système de sauvegarde pour mes fichiers. Je n'ai pas envie d'utiliser un service de "cloud" en ligne sur lequel je n'ai pas de prise et j'ai bien deux VPS chez OVH mais avec seulement 10 Gb d'espace de stockage, je ne vais pas aller bien loin... Une autre solution consiste à placer des disques chez différentes personnes et les synchroniser. À partir de trois disques, ça devient solide. &lt;/p&gt;
&lt;p&gt;J'ai plusieurs Raspberry Pi chez moi, j'ai donc décidé de tester en local avant d'imaginer en placer ailleurs. Il faudra aussi trouver le bon moyen pour chiffrer les documents envoyés pour plus de sécurité mais sans que ça soit trop compliqué à utiliser. (Si ça prend 1h à chaque fois pour rajouter un fichier dans le système, je ne vais pas l'utiliser...)&lt;/p&gt;
&lt;p&gt;Après plusieurs recherches, mon choix s'est tourné vers &lt;a href="https://syncthing.net/"&gt;Syncthing&lt;/a&gt;. Ce programme est &lt;strong&gt;libre&lt;/strong&gt;, il fonctionne sur les systèmes GNU/Linux, Android, Mac et même Windows. Je décrit ici les différentes étapes pour l'installer sur un Raspberry Pi mais l'installation sera similaire sur un autre Linux. Pour Android, on l'installera à partir de F-Droid.&lt;/p&gt;
&lt;p&gt;Syncthing étant un programme libre, on peut le télécharger en toute légalité. Il est hébergé sur Github. Toutes les versions sont accessibles sur la page &lt;a href="https://github.com/syncthing/syncthing/releases/"&gt;github.com/syncthing&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On télécharge la dernière release pour ARM de Syncthing, la v0.10.30 :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;https://github.com/syncthing/syncthing/releases/download/v0.10.30/syncthing-linux-arm-v0.10.30.tar.gz
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Note:&lt;/h1&gt;
&lt;p&gt;Sur une Debian 8 en 64 bits, par exemple, on changera de version et on prendra celle pour l'amd64 :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;user@debian:~$&lt;span class="w"&gt; &lt;/span&gt;wget&lt;span class="w"&gt; &lt;/span&gt;https://github.com/syncthing/syncthing/releases/download/v0.10.30/syncthing-linux-amd64-v0.10.30.tar.gz
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, on décompresse l'archive fraichement téléchargée dans le dossier syncthing et on supprime l'archive :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;tar&lt;span class="w"&gt; &lt;/span&gt;xvzf&lt;span class="w"&gt; &lt;/span&gt;syncthing-linux-arm-v0.10.30.tar.gz
syncthing-linux-arm-v0.10.30/README.txt
syncthing-linux-arm-v0.10.30/LICENSE.txt
syncthing-linux-arm-v0.10.30/AUTHORS.txt
syncthing-linux-arm-v0.10.30/syncthing
syncthing-linux-arm-v0.10.30/syncthing.md5
syncthing-linux-arm-v0.10.30/etc/README.md
syncthing-linux-arm-v0.10.30/etc/linux-runit/README.md
syncthing-linux-arm-v0.10.30/etc/linux-runit/log/run
syncthing-linux-arm-v0.10.30/etc/linux-runit/run
syncthing-linux-arm-v0.10.30/etc/linux-systemd/README.md
syncthing-linux-arm-v0.10.30/etc/linux-systemd/system/syncthing@.service
syncthing-linux-arm-v0.10.30/etc/linux-systemd/user/syncthing.service
syncthing-linux-arm-v0.10.30/etc/macosx-launchd/README.md
syncthing-linux-arm-v0.10.30/etc/macosx-launchd/syncthing.plist
syncthing-linux-arm-v0.10.30/etc/solaris-smf/README.md
syncthing-linux-arm-v0.10.30/etc/solaris-smf/syncthing.xml
syncthing-linux-arm-v0.10.30/etc/windows/ReadMe.txt
syncthing-linux-arm-v0.10.30/etc/windows/SyncThingSetup.nsi
syncthing-linux-arm-v0.10.30/etc/windows/syncthingservice.xml
syncthing-linux-arm-v0.10.30/FAQ.pdf
syncthing-linux-arm-v0.10.30/Getting-Started.pdf

pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;mv&lt;span class="w"&gt; &lt;/span&gt;syncthing-linux-arm-v0.10.30/&lt;span class="w"&gt; &lt;/span&gt;syncthing/

pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;rm&lt;span class="w"&gt; &lt;/span&gt;syncthing-linux-arm-v0.10.30.tar.gz
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On va dans le dossier et on démarre syncthing : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;syncthing/
pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;./syncthing
&lt;span class="o"&gt;[&lt;/span&gt;monitor&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:04:53&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Starting&lt;span class="w"&gt; &lt;/span&gt;syncthing
&lt;span class="m"&gt;16&lt;/span&gt;:04:53&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Generating&lt;span class="w"&gt; &lt;/span&gt;RSA&lt;span class="w"&gt; &lt;/span&gt;key&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;certificate&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;syncthing...
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;syncthing&lt;span class="w"&gt; &lt;/span&gt;v0.10.30&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;go1.4.2&lt;span class="w"&gt; &lt;/span&gt;linux-arm&lt;span class="w"&gt; &lt;/span&gt;default&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;unknown-user@syncthing-builder&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2015&lt;/span&gt;-03-29&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;07&lt;/span&gt;:46:44&lt;span class="w"&gt; &lt;/span&gt;UTC
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;My&lt;span class="w"&gt; &lt;/span&gt;ID:&lt;span class="w"&gt; &lt;/span&gt;H2P4J43-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;No&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;starting&lt;span class="w"&gt; &lt;/span&gt;with&lt;span class="w"&gt; &lt;/span&gt;empty&lt;span class="w"&gt; &lt;/span&gt;defaults
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Edit&lt;span class="w"&gt; &lt;/span&gt;/home/pi/.config/syncthing/config.xml&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;taste&lt;span class="w"&gt; &lt;/span&gt;or&lt;span class="w"&gt; &lt;/span&gt;use&lt;span class="w"&gt; &lt;/span&gt;the&lt;span class="w"&gt; &lt;/span&gt;GUI
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Starting&lt;span class="w"&gt; &lt;/span&gt;web&lt;span class="w"&gt; &lt;/span&gt;GUI&lt;span class="w"&gt; &lt;/span&gt;on&lt;span class="w"&gt; &lt;/span&gt;http://127.0.0.1:8080/
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Loading&lt;span class="w"&gt; &lt;/span&gt;HTTPS&lt;span class="w"&gt; &lt;/span&gt;certificate:&lt;span class="w"&gt; &lt;/span&gt;open&lt;span class="w"&gt; &lt;/span&gt;/home/pi/.config/syncthing/https-cert.pem:&lt;span class="w"&gt; &lt;/span&gt;no&lt;span class="w"&gt; &lt;/span&gt;such&lt;span class="w"&gt; &lt;/span&gt;file&lt;span class="w"&gt; &lt;/span&gt;or&lt;span class="w"&gt; &lt;/span&gt;directory
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Creating&lt;span class="w"&gt; &lt;/span&gt;new&lt;span class="w"&gt; &lt;/span&gt;HTTPS&lt;span class="w"&gt; &lt;/span&gt;certificate
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:06:39&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Generating&lt;span class="w"&gt; &lt;/span&gt;RSA&lt;span class="w"&gt; &lt;/span&gt;key&lt;span class="w"&gt; &lt;/span&gt;and&lt;span class="w"&gt; &lt;/span&gt;certificate&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;raspberrypi...
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:43&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Starting&lt;span class="w"&gt; &lt;/span&gt;UPnP&lt;span class="w"&gt; &lt;/span&gt;discovery...
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;UPnP&lt;span class="w"&gt; &lt;/span&gt;discovery&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;complete&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;found&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;devices&lt;span class="o"&gt;)&lt;/span&gt;.
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Starting&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;local&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;discovery&lt;span class="w"&gt; &lt;/span&gt;announcements
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Local&lt;span class="w"&gt; &lt;/span&gt;discovery&lt;span class="w"&gt; &lt;/span&gt;over&lt;span class="w"&gt; &lt;/span&gt;IPv6&lt;span class="w"&gt; &lt;/span&gt;unavailable
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Starting&lt;span class="w"&gt; &lt;/span&gt;global&lt;span class="w"&gt; &lt;/span&gt;discovery&lt;span class="w"&gt; &lt;/span&gt;announcements
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;OK:&lt;span class="w"&gt; &lt;/span&gt;Ready&lt;span class="w"&gt; &lt;/span&gt;to&lt;span class="w"&gt; &lt;/span&gt;synchronize&lt;span class="w"&gt; &lt;/span&gt;default&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;read-write&lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Device&lt;span class="w"&gt; &lt;/span&gt;H2P4J43-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx&lt;span class="w"&gt; &lt;/span&gt;is&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;raspberrypi&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;at&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;dynamic&lt;span class="o"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;H2P4J&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;16&lt;/span&gt;:07:49&lt;span class="w"&gt; &lt;/span&gt;INFO:&lt;span class="w"&gt; &lt;/span&gt;Completed&lt;span class="w"&gt; &lt;/span&gt;initial&lt;span class="w"&gt; &lt;/span&gt;scan&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;rw&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;of&lt;span class="w"&gt; &lt;/span&gt;folder&lt;span class="w"&gt; &lt;/span&gt;default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h1&gt;Note:&lt;/h1&gt;
&lt;p&gt;Ça prend un peu de temps parce que les clés sont générées.&lt;/p&gt;
&lt;p&gt;L'interface web est accesible depuis le Raspberry Pi. ( &lt;a href="http://localhost:8080/"&gt;localhost:8080&lt;/a&gt; ) mais il est évidemment intéressant de pouvoir y accéder depuis un autre ordinateur afin de laisser le Raspberry Pi &lt;em&gt;dans un coin&lt;/em&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;nano&lt;span class="w"&gt; &lt;/span&gt;/home/pi/.config/syncthing/config.xml&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut changer la ligne "address" et mettre "0.0.0.0:8080" :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;gui&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;enabled=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;tls=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="cm"&gt;&amp;lt;!-- config par défaut --&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="cm"&gt;&amp;lt;!-- &amp;lt;address&amp;gt;127.0.0.1:8080&amp;lt;/address&amp;gt; --&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="cm"&gt;&amp;lt;!-- nouvelle configuration --&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;address&amp;gt;&lt;/span&gt;0.0.0.0:8080&lt;span class="nt"&gt;&amp;lt;/address&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;apikey&amp;gt;&lt;/span&gt;A5RG4UMX-xx-xxxxxxxxxxxxxxxxxxxx&lt;span class="nt"&gt;&amp;lt;/apikey&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/gui&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On va ensuite configurer Syncthing pour qu'il se lance automatiquement au démarrage. La première étape est de faire créer un fichier d'initialisation :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing
&lt;span class="c1"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="c1"&gt;### BEGIN INIT INFO&lt;/span&gt;
&lt;span class="c1"&gt;# Provides: syncthing&lt;/span&gt;
&lt;span class="c1"&gt;# Required-Start: $local_fs $remote_fs&lt;/span&gt;
&lt;span class="c1"&gt;# Required-Stop: $local_fs $remote_fs&lt;/span&gt;
&lt;span class="c1"&gt;# Should-Start: $network&lt;/span&gt;
&lt;span class="c1"&gt;# Should-Stop: $network&lt;/span&gt;
&lt;span class="c1"&gt;# Default-Start: 2 3 4 5&lt;/span&gt;
&lt;span class="c1"&gt;# Default-Stop: 0 1 6&lt;/span&gt;
&lt;span class="c1"&gt;# Short-Description: Multi-user daemonized version of syncthing.&lt;/span&gt;
&lt;span class="c1"&gt;# Description: Starts the syncthing daemon for all registered users.&lt;/span&gt;
&lt;span class="c1"&gt;### END INIT INFO&lt;/span&gt;

&lt;span class="c1"&gt;#Sur Debian, j&amp;#39;ai eu une erreur &amp;quot;start-stop-daemon not found&amp;quot;, j&amp;#39;ai rajouté la ligne suivante : &lt;/span&gt;
&lt;span class="c1"&gt;# PATH=/sbin:/bin:/usr/sbin:/usr/bin #A decommenter si vous avez l&amp;#39;erreur&lt;/span&gt;

&lt;span class="c1"&gt;# Replace with users you want to run syncthing clients for&lt;/span&gt;
&lt;span class="nv"&gt;syncthing_USERS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;pi&amp;quot;&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="c1"&gt;#Remplacer par l&amp;#39;utilisateur qui lance syncthing&lt;/span&gt;
&lt;span class="nv"&gt;DAEMON&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home/pi/syncthing/syncthing&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="c1"&gt;#Remplacer cette ligne par le bon chemin vers syncthing&lt;/span&gt;

startd&lt;span class="o"&gt;()&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;{&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;stuser&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$syncthing_USERS&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nv"&gt;HOMEDIR&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;getent&lt;span class="w"&gt; &lt;/span&gt;passwd&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;awk&lt;span class="w"&gt; &lt;/span&gt;-F:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;{print $6}&amp;#39;&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$config&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Starting syncthing for &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;start-stop-daemon&lt;span class="w"&gt; &lt;/span&gt;-b&lt;span class="w"&gt; &lt;/span&gt;-o&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-S&lt;span class="w"&gt; &lt;/span&gt;-u&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$DAEMON&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;else&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Couldn&amp;#39;t start syncthing for &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="s2"&gt; (no &lt;/span&gt;&lt;span class="nv"&gt;$config&lt;/span&gt;&lt;span class="s2"&gt; found)&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

stopd&lt;span class="o"&gt;()&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;{&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;stuser&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$syncthing_USERS&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nv"&gt;dbpid&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;pgrep&lt;span class="w"&gt; &lt;/span&gt;-fu&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$DAEMON&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="w"&gt; &lt;/span&gt;-z&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$dbpid&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Stopping syncthing for &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;start-stop-daemon&lt;span class="w"&gt; &lt;/span&gt;-o&lt;span class="w"&gt; &lt;/span&gt;-c&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-K&lt;span class="w"&gt; &lt;/span&gt;-u&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-x&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$DAEMON&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

status&lt;span class="o"&gt;()&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;{&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;stuser&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$syncthing_USERS&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nv"&gt;dbpid&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;pgrep&lt;span class="w"&gt; &lt;/span&gt;-fu&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$DAEMON&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-z&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$dbpid&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;then&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;syncthing for USER &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="s2"&gt;: not running.&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;else&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;syncthing for USER &lt;/span&gt;&lt;span class="nv"&gt;$stuser&lt;/span&gt;&lt;span class="s2"&gt;: running (pid &lt;/span&gt;&lt;span class="nv"&gt;$dbpid&lt;/span&gt;&lt;span class="s2"&gt;)&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;case&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;start&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;startd
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p"&gt;;;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;stop&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;stopd
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p"&gt;;;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;restart&lt;span class="p"&gt;|&lt;/span&gt;reload&lt;span class="p"&gt;|&lt;/span&gt;force-reload&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;stopd&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;startd
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p"&gt;;;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;status&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;status
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p"&gt;;;&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;*&lt;span class="o"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Usage: /etc/init.d/syncthing {start|stop|reload|force-reload|restart|status}&amp;quot;&lt;/span&gt;
&lt;span class="w"&gt;     &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="p"&gt;;;&lt;/span&gt;
&lt;span class="k"&gt;esac&lt;/span&gt;

&lt;span class="nb"&gt;exit&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, on rend le script exécutable et on met à jour la séquence de démarrage.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;chmod&lt;span class="w"&gt; &lt;/span&gt;+x&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing&lt;span class="w"&gt; &lt;/span&gt;
pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;update-rc.d&lt;span class="w"&gt; &lt;/span&gt;syncthing&lt;span class="w"&gt; &lt;/span&gt;defaults&lt;span class="w"&gt; &lt;/span&gt;
update-rc.d:&lt;span class="w"&gt; &lt;/span&gt;using&lt;span class="w"&gt; &lt;/span&gt;dependency&lt;span class="w"&gt; &lt;/span&gt;based&lt;span class="w"&gt; &lt;/span&gt;boot&lt;span class="w"&gt; &lt;/span&gt;sequencing
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour voir le status du daemon et/ou le démarrer, nous pouvons utiliser les commandes suivantes : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing&lt;span class="w"&gt; &lt;/span&gt;status
syncthing&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;USER&lt;span class="w"&gt; &lt;/span&gt;pi:&lt;span class="w"&gt; &lt;/span&gt;not&lt;span class="w"&gt; &lt;/span&gt;running.
pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing&lt;span class="w"&gt; &lt;/span&gt;start
Starting&lt;span class="w"&gt; &lt;/span&gt;syncthing&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;pi
pi@raspberrypi&lt;span class="w"&gt; &lt;/span&gt;~&lt;span class="w"&gt; &lt;/span&gt;$&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing&lt;span class="w"&gt; &lt;/span&gt;status
syncthing&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;USER&lt;span class="w"&gt; &lt;/span&gt;pi:&lt;span class="w"&gt; &lt;/span&gt;running&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;pid&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;15060&lt;/span&gt;
&lt;span class="m"&gt;15068&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Sur Debian, j'ai eu cette erreur:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@debian8:~$&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing&lt;span class="w"&gt; &lt;/span&gt;stop
Stopping&lt;span class="w"&gt; &lt;/span&gt;syncthing&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;simon
/etc/init.d/syncthing:&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;35&lt;/span&gt;:&lt;span class="w"&gt; &lt;/span&gt;/etc/init.d/syncthing:&lt;span class="w"&gt; &lt;/span&gt;start-stop-daemon:&lt;span class="w"&gt; &lt;/span&gt;not&lt;span class="w"&gt; &lt;/span&gt;found
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pour résoudre ce problème, vous pouvez décommenter la ligne 15 du script ci-dessus. &lt;/p&gt;
&lt;p&gt;Une fois l'installation terminée, on peut accéder à l'interface web depuis le Raspberry Pi ( avec &lt;a href="http://localhost:8080/"&gt;localhost:8080&lt;/a&gt; ) ou bien depuis une autre machine du réseau ( http://ip-du-raspberry-pi:8080/ ). Plus qu'à suivre la même méthode pour l'installer sur votre·vos autre·s machine·s et configurer quels dossiers synchroniser.&lt;/p&gt;
&lt;p&gt;Nous aborderons la configuration dans &lt;a href="http://blog.simonlefort.be/syncthing2.html" title="Configuration de Syncthing"&gt;un prochain article&lt;/a&gt;.&lt;/p&gt;
&lt;h1&gt;Sources :&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://syncthing.net/"&gt;https://syncthing.net/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://techdelirium.blogspot.be/2015/02/how-to-install-syncthing-on-your.html"&gt;http://techdelirium.blogspot.be/2015/02/how-to-install-syncthing-on-your.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;~~~&lt;/p&gt;</content><category term="Tuto"></category><category term="syncthing"></category><category term="raspberry pi"></category><category term="linux"></category><category term="synchronisation"></category><category term="back-up"></category></entry><entry><title>Papa</title><link href="https://blog.simonlefort.be/papa.html" rel="alternate"></link><published>2015-03-27T08:26:00+01:00</published><updated>2015-03-27T08:26:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-03-27:/papa.html</id><summary type="html">&lt;p&gt;Je suis papa. Depuis une semaine. Juste une petite semaine et ma vie est déjà tellement bouleversée, modifiée et changée ! J'ai l'impression de redécouvrir le monde sous un œil nouveau. Comme si tous mes schémas de pensée avaient été mélangés.&lt;/p&gt;
&lt;p&gt;Moi qui ait très peur du manque de sommeil, je …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Je suis papa. Depuis une semaine. Juste une petite semaine et ma vie est déjà tellement bouleversée, modifiée et changée ! J'ai l'impression de redécouvrir le monde sous un œil nouveau. Comme si tous mes schémas de pensée avaient été mélangés.&lt;/p&gt;
&lt;p&gt;Moi qui ait très peur du manque de sommeil, je ne rechigne pas à me lever à 4h du mat' pour le changer. &lt;/p&gt;
&lt;p&gt;Moi qui ne suit pas un expert du rangement, ça me semble maintenant naturel de faire place nette partout où je passe, dès qu'une occasion se présente de remettre un truc à sa place. &lt;/p&gt;
&lt;p&gt;Moi qui ait souvent la tête qui part dans toutes les sens à la recherche du prochain projet terrible que je vais faire, je me surprends à rêvasser devant un p'tit bout d'homme endormi pendant des heures, sans pensées parasites. Ça ne m'était pas arrivé depuis longtemps.&lt;/p&gt;
&lt;p&gt;Encore une fois, je sens que j'ouvre des yeux différents sur le monde. J'imagine les magiciens comme des changeurs de langes pros, capables d'utiliser leurs dix doigts à leur paroxysme dans cet exercice un peu compliqué au départ, surtout en essayant de rassurer le petit bout en même temps. Je repense à certains passages de films et je me dis que j'avais loupé un bout du message. Je comprends encore mieux la force de l'amour qui unit parents et enfants.&lt;/p&gt;
&lt;p&gt;Je regarde même ma femme différemment, avec encore plus d'amour. Émerveillés par cette vie que nous avons conçue à deux, nous sommes encore plus proches. Elle est merveilleuse, tellement merveilleuse en maman.&lt;/p&gt;
&lt;p&gt;Et il y a encore tellement à découvir !&lt;/p&gt;
&lt;p&gt;D'ailleurs, j'y retourne, j'ai encore des machines de linges à replier et un petit bonhomme à changer. Mais j'avais envie de coucher quelques impressions sur un clavier.&lt;/p&gt;
&lt;p&gt;~~&lt;/p&gt;</content><category term="Humeurs"></category><category term="humeur"></category></entry><entry><title>Isso - un serveur de commentaires auto-hébergé</title><link href="https://blog.simonlefort.be/isso.html" rel="alternate"></link><published>2015-03-16T23:42:00+01:00</published><updated>2015-03-16T23:42:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2015-03-16:/isso.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Je n'ai finalement jamais pris le temps de configurer &lt;a href="https://posativ.org/isso/"&gt;Isso&lt;/a&gt;... En aout 2020, j'ai migré mon blog sur un serveur géré avec Yunohost et Isso n'est pas dans les applications disponibles. Ça pourrait être un challenge intéressant...&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;[EDIT: Attention, ça ne marche pas encore …&lt;/em&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2015. Je n'ai finalement jamais pris le temps de configurer &lt;a href="https://posativ.org/isso/"&gt;Isso&lt;/a&gt;... En aout 2020, j'ai migré mon blog sur un serveur géré avec Yunohost et Isso n'est pas dans les applications disponibles. Ça pourrait être un challenge intéressant...&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;[EDIT: Attention, ça ne marche pas encore! La partie "Isso" apparait bien en dessous de l'article mais je n'arrive pas à soumettre un nouveau commentaire. Je cherche la solution.]&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;J'ai découvert Isso un peu par hasard en me balladant sur la toile. Je pense que c'était sur le blog &lt;a href="https://www.libre-parcours.net/post/des-commentaires/" title="Lien vers le blog Libre-parcours.net"&gt;Libre-parcours.net&lt;/a&gt; mais je n'en suis même plus sûr. Isso est un serveur de commentaire similaire à Disqus. Cependant, on peut l'héberger sur son serveur !&lt;/p&gt;
&lt;p&gt;Avant de commencer, j'ai fouillé la toile à la recherche des liens qui vont bien et qui allaient me permettre d'installer &lt;em&gt;rapidemment&lt;/em&gt; Isso. Voici les liens que j'ai trouvé et qui m'ont servi :&lt;/p&gt;
&lt;p&gt;Le site officiel : &lt;a href="http://posativ.org/isso/" title="Lien vers le site officiel d'Isso"&gt;posativ.org&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Un blog avec des détails sur l'installation : &lt;a href="http://hackriculture.fr/isso-disqus-like-auto-heberge-pour-pelican.html" title="Lien vers hackriculture.fr"&gt;hackriculture.fr&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Un package Debian : &lt;a href="http://packages.crapouillou.net/#_tab-fr" title="Lien vers packages.crapouillou.net"&gt;crapouillou.net&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Autres blogs utilisant Isso : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://www.libre-parcours.net/post/des-commentaires/" title="Lien vers libre-parcours.net"&gt;libre-parcours.net&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://chabotsi.fr/blog/pages/a-propos.html" title="Lien vers chabotsi.fr"&gt;chabotsi.fr&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.yapbreak.fr/isso-ou-comment-ajouter-un-systeme-de-commentaire.html" title="Lien vers yapbreak.fr"&gt;yapbreak.fr&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://blog.jeanchampemont.com/installation-serveur-commentaire-libre-isso/" title="Lien vers jeanchampemont.com"&gt;jeanchampemont.com&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://blog.passionaqua.me/2014-10-21_Utilisation-de-Isso-comme-systeme-de-commentaires.html" title="Lien vers passionaqua.me"&gt;passionaqua.me&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://etienne.depar.is/a-ecrit/2014/09/29/mise-en-place-des-commentaires/" title="Lien vers etienne.depar.is"&gt;etienne.depar.is&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.saltimfo.com/posts/blog-genesis.html" title="Lien vers saltimfo.com"&gt;saltimfo.com&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://postblue.info/sans-commentaire/" title="postblue.info"&gt;postblue.info&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://fralef.me/configure-isso-to-work-with-multiple-sites-using-gunicorn-and-nginx.html" title="Lien vers fralef.me"&gt;fralef.me&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Des exemples de configuration sur Github: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/jgraichen/debian-isso/blob/master/debian/examples/apache-isso-vhost.conf"&gt;github.com/jgraichen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Après avoir un peu consulté tout ça, voici ce que j'ai fait.
J'ai suivi les instructions pour installer directement le paquet Debian (voir hackriculture.fr). Il faut tout d'abord ajouter les sources vers le dépôt de crapouillou.net :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="err"&gt;simon@serveur:~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;vim&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/etc/apt/sources.list.d/packages.crapouillou.net.list&lt;/span&gt;
&lt;span class="c"&gt;# sources : http://packages.crapouillou.net/#_tab-fr&lt;/span&gt;
&lt;span class="k"&gt;deb&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;http://packages.crapouillou.net&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kp"&gt;wheezy/&lt;/span&gt;

&lt;span class="err"&gt;simon@serveur:~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;vim&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/etc/apt/preferences.d/packages.crapouillou.net.pref&lt;/span&gt;
&lt;span class="err"&gt;Package:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;*&lt;/span&gt;
&lt;span class="err"&gt;Pin:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;release&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;o=packages.crapouillou.net&lt;/span&gt;
&lt;span class="err"&gt;Pin-Priority:&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="err"&gt;150&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, on met tout ça à jour :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nx"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="nx"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;aptitude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;update&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;Ign&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="c1"&gt;//packages.crapouillou.net wheezy/ Release.gpg                         &lt;/span&gt;
&lt;span class="nx"&gt;Get&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="c1"&gt;//packages.crapouillou.net wheezy/ Release [1,519 B]&lt;/span&gt;
&lt;span class="nx"&gt;Get&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="c1"&gt;//packages.crapouillou.net wheezy/ Packages [4,896 B]&lt;/span&gt;
&lt;span class="nx"&gt;Ign&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="c1"&gt;//packages.crapouillou.net wheezy/ Translation-en_GB&lt;/span&gt;
&lt;span class="nx"&gt;Ign&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="c1"&gt;//packages.crapouillou.net wheezy/ Translation-en&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nx"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="nx"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;aptitude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;upgrade&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;...&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On vérifie qu'isso est bien dans la liste et on l'installe :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nx"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="nx"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;aptitude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;search&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;
&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;&lt;span class="w"&gt;                            &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;lightweight&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Disqus&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;alternative&lt;/span&gt;&lt;span class="w"&gt;            &lt;/span&gt;
&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;common&lt;/span&gt;&lt;span class="w"&gt;                     &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;lightweight&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Disqus&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;alternative&lt;/span&gt;

&lt;span class="nx"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="nx"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;aptitude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;
&lt;span class="nx"&gt;The&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;following&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;NEW&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;packages&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;installed&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nx"&gt;gunicorn&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;javascript&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;common&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;libjs&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;jquery&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;libjs&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;sphinxdoc&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nx"&gt;libjs&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;underscore&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;configparser&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;html5lib&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;ipaddr&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;itsdangerous&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;misaka&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;openssl&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;werkzeug&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;realpath&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;wwwconfig&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;common&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;packages&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;upgraded&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;newly&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;installed&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;remove&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;not&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;upgraded&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="nx"&gt;Need&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;get&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;338&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;kB&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;archives&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;After&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;unpacking&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;934&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;kB&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;used&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="nx"&gt;Do&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;want&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;continue&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;Y&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="p"&gt;?]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="nx"&gt;WARNING&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;untrusted&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;versions&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;of&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;following&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;packages&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;will&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;be&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;installed&lt;/span&gt;&lt;span class="p"&gt;!&lt;/span&gt;

&lt;span class="nx"&gt;Untrusted&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;packages&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;could&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;compromise&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;your&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;system&lt;/span&gt;&lt;span class="err"&gt;&amp;#39;&lt;/span&gt;&lt;span class="nx"&gt;s&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;security&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="nx"&gt;You&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;should&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;only&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;proceed&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;with&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;installation&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;are&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;certain&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;that&lt;/span&gt;
&lt;span class="nx"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;what&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;want&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;do&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;

&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;configparser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;itsdangerous&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;python&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;misaka&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;isso&lt;/span&gt;

&lt;span class="nx"&gt;Do&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;you&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;want&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ignore&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;this&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;warning&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;and&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;proceed&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;anyway&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt;
&lt;span class="nx"&gt;To&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;continue&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;enter&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;abort&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;enter&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;No&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Yes&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Une fois isso installé, on peut passer à la configuration d'apache. Il y a des exemples de configuration sur le github que j'ai cité en début d'article (Il y a aussi des exemples pour nginx et lightttpd). Voici l'exemple pour apache :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;VirtualHost&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;*:80&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;ServerName&lt;span class="w"&gt; &lt;/span&gt;comments.example.com
&lt;span class="w"&gt;    &lt;/span&gt;ProxyPreserveHost&lt;span class="w"&gt; &lt;/span&gt;On
&lt;span class="w"&gt;    &lt;/span&gt;ProxyRequests&lt;span class="w"&gt; &lt;/span&gt;off
&lt;span class="w"&gt;    &lt;/span&gt;ProxyPass&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;http://localhost:8095
&lt;span class="w"&gt;    &lt;/span&gt;ProxyPassReverse&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;http://localhost:8095
&lt;span class="nt"&gt;&amp;lt;/VirtualHost&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;J'ai créé un &lt;em&gt;VirtualHost&lt;/em&gt; dans le dossier /etc/apache2/site-available/ avec le nom "comments.simonlefort.be" :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@serveur:~$&lt;span class="w"&gt; &lt;/span&gt;sudo&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;/etc/apache2/sites-available/comments.simonlefort.be&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;VirtualHost&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;*:80&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;DocumentRoot&lt;span class="w"&gt; &lt;/span&gt;/var/www/simonlefort/comments
&lt;span class="w"&gt;    &lt;/span&gt;ServerName&lt;span class="w"&gt; &lt;/span&gt;www.simonlefort.be/comments
&lt;span class="w"&gt;    &lt;/span&gt;ServerAlias&lt;span class="w"&gt; &lt;/span&gt;comments.simonlefort.be
&lt;span class="w"&gt;    &lt;/span&gt;ServerAlias&lt;span class="w"&gt; &lt;/span&gt;simonlefort.be/comments

&lt;span class="w"&gt;    &lt;/span&gt;ProxyPreserveHost&lt;span class="w"&gt; &lt;/span&gt;On
&lt;span class="w"&gt;    &lt;/span&gt;ProxyRequests&lt;span class="w"&gt; &lt;/span&gt;off
&lt;span class="w"&gt;    &lt;/span&gt;ProxyPass&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;http://localhost:8095
&lt;span class="w"&gt;    &lt;/span&gt;ProxyPassReverse&lt;span class="w"&gt; &lt;/span&gt;/&lt;span class="w"&gt; &lt;/span&gt;http://localhost:8095

&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;Directory&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;/var/www/simonlefort/comments&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;Options&lt;span class="w"&gt; &lt;/span&gt;-Indexes&lt;span class="w"&gt; &lt;/span&gt;+FollowSymlinks
&lt;span class="w"&gt;        &lt;/span&gt;AllowOverride&lt;span class="w"&gt; &lt;/span&gt;All
&lt;span class="w"&gt;        &lt;/span&gt;ServerSignature&lt;span class="w"&gt; &lt;/span&gt;Off
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/Directory&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/VirtualHost&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Bien entendu, il faut créer le dossier "/var/www/simonlefort/comments". Dans ce dossier, il faut créer un dossier "js" et y placer un fichier "embed.min.js". Moi je l'ai copié d'un autre site avec un "wget" : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;mkdir&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;
&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;mkdir&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;js&lt;/span&gt;
&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wget&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;yapbreak&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;fr&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;js&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;embed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;min&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;js&lt;/span&gt;
&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;mv&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;embed&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;min&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;js&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;js&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, il faut activer les modules proxy et proxy_http : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a2enmod&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;proxy&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;proxy_http&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Activer le site : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;etc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;apache2&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;sites&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;enabled&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;a2ensite&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il faut ensuite relancer apache2 :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;service&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;apache2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;restart&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Une fois que tout ça est fait, on paramètre isso : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;vim&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;etc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;isso&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;conf&lt;/span&gt;
&lt;span class="p"&gt;(...)&lt;/span&gt;
&lt;span class="k"&gt;host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;http&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;be&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;comments&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;
&lt;span class="p"&gt;(...)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Il est possible de faire une configuration aux petits oignons avec envoi de mail pour prévenir d'un nouveau commentaire ainsi que de mettre les bons paramètres de modération. J'avoue ne pas encore avoir du tout regardé ! J'éditerai quand ce sera le cas. :-) &lt;/p&gt;
&lt;p&gt;On approche de la fin. Il ne reste plus qu'à faire les liens entre isso et Pelican. On doit tout d'abord ajouter une variable dans le "pelicanconf.py" : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;vim&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pelicanconf&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt;
&lt;span class="p"&gt;(...)&lt;/span&gt;
&lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;CONFIGURE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ISSO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FOR&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;COMMENTS&lt;/span&gt;
&lt;span class="n"&gt;ISSO_SERVER&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="ss"&gt;&amp;quot;http://www.simonlefort.be/comments&amp;quot;&lt;/span&gt;
&lt;span class="p"&gt;(...)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On modifie finalement les templates du blog. Dans mon cas, le thème est "dev-random" :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;simon@serveur:~$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;simon/themes/dev-random/templates/base.html&lt;span class="w"&gt; &lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;(...)&lt;span class="w"&gt;    &lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;ISSO_SERVER&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;script&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;data-isso=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;ISSO_SERVER&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;/&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;&lt;/span&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;ISSO_SERVER&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="s"&gt;/js/embed.min.js&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;(...)
&lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;

simon@serveur:~$&lt;span class="w"&gt; &lt;/span&gt;vim&lt;span class="w"&gt; &lt;/span&gt;simon/themes/dev-random/templates/article.html
(...)
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endblock&lt;/span&gt; &lt;span class="nv"&gt;content&lt;/span&gt; -&lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;ISSO_SERVER&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;hr&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;section&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;isso-thread&amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;noscript&amp;gt;&lt;/span&gt;les&lt;span class="w"&gt; &lt;/span&gt;commentaires&lt;span class="w"&gt; &lt;/span&gt;de&lt;span class="w"&gt; &lt;/span&gt;ce&lt;span class="w"&gt; &lt;/span&gt;site&lt;span class="w"&gt; &lt;/span&gt;utilisent&lt;span class="w"&gt; &lt;/span&gt;javascript&lt;span class="nt"&gt;&amp;lt;/noscript&amp;gt;&lt;/span&gt;
&lt;span class="cp"&gt;{%&lt;/span&gt; &lt;span class="k"&gt;endif&lt;/span&gt; &lt;span class="cp"&gt;%}&lt;/span&gt;
(...)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Normalement, c'est fini au niveau des configuration. Il ne reste plus qu'à relance le service &lt;em&gt;isso&lt;/em&gt; et à réactualiser le blog :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;service&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;isso&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;status&lt;/span&gt;
&lt;span class="n"&gt;isso&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;running&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@serveur&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;service&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;isso&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;restart&lt;/span&gt;
&lt;span class="n"&gt;Restarting&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;isso&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;isso&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Par sécurité, vous pouvez faire une copie de votre répertoire /var/www/ avant de réactualiser votre blog Pelican :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;mkdir&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;backup&lt;/span&gt;
&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cp&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;R&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;backup&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;copie&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;On réactualise enfin son site : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;serveur&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;sudo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;pelican&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;o&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;var&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simonlefort&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;blog&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;s&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pelicanconf&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;py&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Bonus: Les logs d'Isso sont dans "/var/log/isso.log". &lt;/p&gt;</content><category term="Tuto"></category><category term="commentaire"></category><category term="blog"></category></entry><entry><title>Freenet</title><link href="https://blog.simonlefort.be/freenet.html" rel="alternate"></link><published>2014-12-12T12:22:00+01:00</published><updated>2014-12-12T12:22:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2014-12-12:/freenet.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. J'ai arrêté rapidemment d'utiliser Freenet.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Bonjour à tous, &lt;/p&gt;
&lt;p&gt;Je me suis décidé à tester &lt;a href="https://freenetproject.org/"&gt;freenet&lt;/a&gt;. C'est un projet d'internet décentralisé, chaque morceau du réseau Freenet est stockée sur les ordinateurs qui s'y connectent. Tout est chiffré, vous ne savez donc pas ce que vous …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. J'ai arrêté rapidemment d'utiliser Freenet.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Bonjour à tous, &lt;/p&gt;
&lt;p&gt;Je me suis décidé à tester &lt;a href="https://freenetproject.org/"&gt;freenet&lt;/a&gt;. C'est un projet d'internet décentralisé, chaque morceau du réseau Freenet est stockée sur les ordinateurs qui s'y connectent. Tout est chiffré, vous ne savez donc pas ce que vous avez sur votre machine. (On ne peut donc pas vous repprocher de stocker du contenu soumis aux droits d'auteurs, par exemple.)&lt;/p&gt;
&lt;p&gt;Pour l'installer, on commence par le télécharger :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@debian&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;wget&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;https://freenetproject.org/jnlp/freenet_installer.jar&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;O&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new_installer_offline&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;jar&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ensuite, on lance l'installation via java : &lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="n"&gt;simon&lt;/span&gt;&lt;span class="nv"&gt;@debian&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;java&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;jar&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;new_installer_offline&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;jar&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Cette commande ouvre une fenêtre dans laquelle on peut choisir la langue.&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet1" src="../images/freenet/freenet_1.png" title="Freenet1"&gt;&lt;/p&gt;
&lt;p&gt;Une fois qu'on a cliqué sur "OK", on arrive sur une seconde fenêtre avec les différents auteurs du logiciel et leurs adresses mails respectives. On clique ensuite sur "Suivant" (Naaan? Tu nous fais marcher là...).&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet2" src="../images/freenet/freenet_2.png" title="Freenet2"&gt;&lt;/p&gt;
&lt;p&gt;La fenêtre suivante permet de choisir le dossier d'installation de Freenet :&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet3" src="../images/freenet/freenet_3.png" title="Freenet3"&gt;&lt;/p&gt;
&lt;p&gt;Ensuite, on peut "choisir" les &lt;em&gt;paquetages&lt;/em&gt; à installer mais je ne vois aucun choix. ( ? )&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet4" src="../images/freenet/freenet_4.png" title="Freenet4"&gt;&lt;/p&gt;
&lt;p&gt;L'installation est très rapide, quelques secondes.&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet5" src="../images/freenet/freenet_5.png" title="Freenet5"&gt;&lt;/p&gt;
&lt;p&gt;Il y a ensuite le téléchargement de quelques paquets supplémentaires, une configuration de cron pour démarrer Freenet au redémarrage et finalement Freenet est lancé. L'installation est terminée.&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet6" src="../images/freenet/freenet_6.png" title="Freenet6"&gt;&lt;/p&gt;
&lt;p&gt;Dernier choix : Configuration des raccourcis. Je n'en veux personnellement pas sur mon bureau mais vous gérez comme vous l'entendez.&lt;/p&gt;
&lt;p&gt;&lt;img alt="freenet7" src="../images/freenet/freenet_7.png" title="Freenet7"&gt;&lt;/p&gt;
&lt;p&gt;Une fois la fenêtre d'installer fermée, une page s'ouvre sur le navigateur (adresse: 127.0.0.1:8888/wizard/ ) et propose différents modes de connexion. On a le choix entre se connecter à n'importe quel utilisateur de Freenet (sécurité "faible"), se connecter uniquement aux amis (sécurité "haute") et configurer manuellement. Je ne connais pas grand monde qui utilise Freenet, je vais donc choisir de me connecter avec toutes les personnes qui utilisent Freenet. (Mais ça pourrait être intéressant de tester avec quelques amis un jour un réseau privé.)&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/freenet/freenet_8.png" title="Lien vers la capture d'écran 8."&gt;Lien vers la capture d'écran 8.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Il y a un petit avertissement de sécurité concernant le navigateur qui doit évidemment être récent et comporter un mode "navigation privée".&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/freenet/freenet_9.png" title="Lien vers la capture d'écran 9."&gt;Lien vers la capture d'écran 9.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On peut ensuite définir la taille du "datastore". C'est l'espace qu'on accepte de partager avec les membres du réseau. Pour un premier test, je choisi de mettre 3 GiB à disposition. On verra par la suite. Il y a ensuite une question pour savoir si notre connexion a un quota mensuel de données. (Pour limiter les frais, c'est gentil!) Dans mon cas, c'est "non". IL faut ensuite choisir quelles sont les limites de débit que l'on souhaite fixer. Je prends "6 megabits" avec une vitesse de download à "384 KiB/s" et d'upload à "16.0 KiB/s". (Point intéressant: L'espace laissé à Freenet sur le disque dur et les vitesse de download/upload conditionne notre "priorité" sur le réseau.) On arrive ensuite sur la page principale de Freenet ( 127.0.0.1:8888 ).&lt;/p&gt;
&lt;p&gt;Freenet prend un certain temps pour se connecter au réseau (surtout la première fois apparemment). Je vais attendre gentiment.&lt;/p&gt;
&lt;p&gt;&lt;a href="../images/freenet/freenet_10.png" title="Lien vers la capture d'écran 10."&gt;Lien vers la capture d'écran 10.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Quelques minutes plus tard&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;En fait, je me suis vite retrouvé connecté à Freenet mais le message de "Connexion au réseau" n'a pas disparu tout seul. C'est maintenant que ça devient drôle ! Quand on va sur la page "Navigation", on a les liens vers les blogs des développeurs de Freenet ainsi que des index vers d'autres sites. Si je clique sur "&lt;a href="http://127.0.0.1:8888/USK@yGvITGZzrY1vUZK-4AaYLgcjZ7ysRqNTMfdcO8gS-LY,-ab5bJVD3Lp-LXEQqBAhJpMKrKJ19RnNaZMIkusU79s,AQACAAE/toad/55/" title="Lien vers le blog de Toad sur Freenet."&gt;Toad&lt;/a&gt;", la page se télécharge sur mon ordinateur (voir &lt;a href="../images/freenet/freenet_11.png" title="Lien vers la capture d'écran 11."&gt;Lien vers la capture d'écran 11&lt;/a&gt; et après quelques secondes, on arrive sur le site voulu. (voir &lt;a href="../images/freenet/freenet_12.png" title="Lien vers la capture d'écran 12."&gt;Lien vers la capture d'écran 12&lt;/a&gt;). &lt;/p&gt;
&lt;p&gt;Les adresses URL font peur mais ça marche ! :-) Après, je ne sais pas du tout ce que je vais trouver sur Freenet, j'imagine que c'est comme pour TOR, il doit y avoir un peu de tout. Je prendrai le temps de fouiller tout ça un soir.&lt;/p&gt;
&lt;p&gt;Fin du tutoriel d'installation/configuration de Freenet, merci d'avoir lu jusqu'ici.&lt;/p&gt;</content><category term="Tuto"></category><category term="freenet"></category></entry><entry><title>Addiction</title><link href="https://blog.simonlefort.be/addiction.html" rel="alternate"></link><published>2014-12-03T00:17:00+01:00</published><updated>2014-12-03T00:17:00+01:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2014-12-03:/addiction.html</id><summary type="html">&lt;p&gt;Je suis addict. Oui, c'est cela, j'ai une addiction. Peut-être même
plusieurs si on compte le café ainsi que l'alcool et le tabac festifs. Mais
la seule qui me pourri vraiment la vie, c'est ma soif d'information.&lt;/p&gt;
&lt;p&gt;Je veux toujours en savoir plus. Lire. Entendre. Voir. Apprendre.
Emmagasiner. Digérer. Transmettre …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Je suis addict. Oui, c'est cela, j'ai une addiction. Peut-être même
plusieurs si on compte le café ainsi que l'alcool et le tabac festifs. Mais
la seule qui me pourri vraiment la vie, c'est ma soif d'information.&lt;/p&gt;
&lt;p&gt;Je veux toujours en savoir plus. Lire. Entendre. Voir. Apprendre.
Emmagasiner. Digérer. Transmettre. Je suis camé à l'info. Je lis de
nombreux flux RSS, des forums, des actualités, des blogs et sites divers.
Et je n'en ai jamais assez.&lt;/p&gt;
&lt;p&gt;C'est intéressant à de nombreux points de vue. J'apprends pas mal de choses
qui me servent dans mon activité professionnelle et dans ma vie privée. Au
moins, ça alimente les conversations. Au mieux, j'apprends l'existence d'un
outil génial ou d'une commande très utile qui me sauvera un jour la vie, ou
pas. Et puis je discute avec des gens souvent intéressants.&lt;/p&gt;
&lt;p&gt;Ça pose cependant quelques problèmes. Premièrement, je ne suis jamais
rassasié et les flux ne se tarissent jamais. Je pourrais lire des jours et
des nuits durant, ce qui finit toujours par poser un problème dans ma
gestion du temps.  Deuxièmement, je peux parfois donner l'impression que je
procrastine sévère ce qui ne manque pas d'énerver mes proches.
Dernièrement, je me retrouve toujours avec l'esprit encombré et la
sensation d'avoir encore et toujours des choses à faire. J'ai donc parfois
l'impression de ne plus pouvoir profiter du temps présent, simplement.&lt;/p&gt;
&lt;p&gt;Oh, mais je fais des efforts ! J'essaye de faire mon travail au mieux et de
ne lire mes flux que pendant les pauses. J'essaye de ne pas laisser
l'ordinateur envahir tout mon temps libre. J'essaye d'éteindre mon
téléphone quand je monte me coucher. J'essaye de trier un maximum l'info
pour ne pas me laisser distraire par des connerie sans importance.
J'essaye.&lt;/p&gt;
&lt;p&gt;J'essaye et malgré tout, je reste coincé avec cet esprit encombré
d'informations souvent inutiles et dont je me passerais bien. Je trouve
plusieurs perles par jours, mais je ramasse surtout des cailloux. Je dois
trouver un moyen de mieux trier, d'aller à l'essentiel et de simplifier
cette partie de ma vie, afin qu'elle ne bouffe pas tout le reste. Je suis à
la recherche de solutions. Je médite pour trouver. Je vais y arriver.&lt;/p&gt;
&lt;p&gt;°bling!°&lt;/p&gt;
&lt;p&gt;Ah, excusez-moi une info vient de tomber. J'dois y aller. Mais promis,
demain je trouve une solution.&lt;/p&gt;
&lt;p&gt;~~~&lt;/p&gt;
&lt;p&gt;(&lt;em&gt;Petit texte écrit une nuit alors que je ne parvenais pas à dormir. C'est humoristique mais 
il y a un petit fond de vérité...&lt;/em&gt;)&lt;/p&gt;</content><category term="Humeurs"></category><category term="humeur"></category></entry><entry><title>OpenSCAD - 1</title><link href="https://blog.simonlefort.be/openscad-1.html" rel="alternate"></link><published>2014-10-24T17:03:00+02:00</published><updated>2014-10-24T17:03:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2014-10-24:/openscad-1.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. Actuellement, je me tourne plutôt vers &lt;a href="https://www.freecadweb.org/"&gt;Freecad&lt;/a&gt; si j'ai quelque chose à dessiner en 3D.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Comme je l'ai dis dans le premier article du blog, je fais un peu de robotique au sein de l'&lt;a href="http://www.caliban.be/"&gt;Association Caliban Belgique&lt;/a&gt;. Dans ce cadre, nous sommes régulièrement …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. Actuellement, je me tourne plutôt vers &lt;a href="https://www.freecadweb.org/"&gt;Freecad&lt;/a&gt; si j'ai quelque chose à dessiner en 3D.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Comme je l'ai dis dans le premier article du blog, je fais un peu de robotique au sein de l'&lt;a href="http://www.caliban.be/"&gt;Association Caliban Belgique&lt;/a&gt;. Dans ce cadre, nous sommes régulièrement confronté au dessin 3D pour concevoir des chassis ou des pièces particulières. Travaillant sur GNU/Linux, je rage souvent de ne pas avoir des outils comme Autodesk Inventor ou Solidworks à disposition. J'ai donc plusieurs fois regardé ce qu'il existait dans le monde du Libre et je suis tombé sur une petite perle!&lt;/p&gt;
&lt;p&gt;Aujourd'hui, j'ai commencé à jouer avec OpenSCAD. Ce programme permet de créer des formes en 3D à partir de lignes de code. Ce qui permet d'avoir des pièces paramétrables, par exemple. Il est pas mal utilisé dans le monde de l'impression 3D. Je ne vais pas détailler le programme, beaucoup d'autres l'ont fait avant moi. Je vais me contenter de lister quelques liens qui vont bien et de montrer ma première petite réalisation !&lt;/p&gt;
&lt;p&gt;Commençons donc par quelques liens qui m'ont été utiles :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://en.wikibooks.org/wiki/OpenSCAD_User_Manual"&gt;Le manuel sur Wikibooks&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://reprapide.fr/tutoriel-openscad-introduction"&gt;Tuto sur "reprapide.fr"&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://eleydet.free.fr/openscad/"&gt;Tuto sur "eleydet.free.fr"&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour mon premier exercice avec OpenSCAD, j'ai décidé de redessiner un &lt;a href="http://www.pololu.com/product/1442"&gt;Moteur&lt;/a&gt; que l'on a utilisé sur un de nos robot. Ce n'est finalement qu'un ensemble de cylindres à aligner.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;$fn&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;2.2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;h2&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;h3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;1.2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="n"&gt;rotate&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;90&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;-2.2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;darkgray&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;1.55&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;-0.65&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;quot;gray&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.65&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.6&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;gray&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;1.85&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;darkgray&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;h2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;1.725&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="n"&gt;h2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;black&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;h3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="n"&gt;h2&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;0.2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;green&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;1.3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="n"&gt;translate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="n"&gt;h2&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mf"&gt;0.8&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;black&amp;quot;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;cylinder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.9&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Et voici ce que ça donne :&lt;/p&gt;
&lt;p&gt;&lt;img alt="moteur1" src="https://blog.simonlefort.be/images/openscad1/moteur1_1.png" title="Moteur 1"&gt; &lt;/p&gt;
&lt;p&gt;&lt;img alt="moteur2" src="https://blog.simonlefort.be/images/openscad1/moteur1_2.png" title="Moteur 2"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="moteurPololu" src="https://blog.simonlefort.be/images/openscad1/moteur1_pololu.png" title="Moteur réel"&gt;&lt;/p&gt;
&lt;p&gt;Bonus :  &lt;a href="https://blog.simonlefort.be/files/openscad1/moteur1.scad"&gt;Le fichier .scad&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On peut donc, à partir de quelques petites lignes de codes assez simple générer des objets &lt;em&gt;complexes&lt;/em&gt;. Il est possible d'exporter en .stl et donc de les convertir par la suite assez facilement en GCode et les envoyer à l'imprimante 3D ou à la fraiseuse à commande numérique. Je n'en suis encore qu'au début mais c'est passionnant !&lt;/p&gt;
&lt;p&gt;Ah, une dernière petite chose. J'ai fait tout ça sur un pc qui a des années sur lequel il serait impossible de faire tourner un SolidWorks ou un Autocad. Et pourtant, ça "compile" en 1 seconde!&lt;/p&gt;
&lt;p&gt;À très bientôt pour la suite. &lt;/p&gt;</content><category term="3D"></category><category term="moteur"></category><category term="3D"></category><category term="robotique"></category></entry><entry><title>Hello World</title><link href="https://blog.simonlefort.be/hello-world.html" rel="alternate"></link><published>2014-07-30T20:53:00+02:00</published><updated>2014-07-30T20:53:00+02:00</updated><author><name>Simon Lefort</name></author><id>tag:blog.simonlefort.be,2014-07-30:/hello-world.html</id><summary type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. J'ai mis à jour l'aricle en aout 2020, j'ai corrigé les liens des outils que j'utilise toujours.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Il y a une quinzaine d'année, j'ai découvert le &lt;strong&gt;réseau&lt;/strong&gt;. Un internet encore jeune mais tellement prometteur.
Si au départ je n'y ai vu qu'un intérêt ludique …&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;&lt;u&gt;Avertissement:&lt;/u&gt; Cet article date de 2014. J'ai mis à jour l'aricle en aout 2020, j'ai corrigé les liens des outils que j'utilise toujours.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Il y a une quinzaine d'année, j'ai découvert le &lt;strong&gt;réseau&lt;/strong&gt;. Un internet encore jeune mais tellement prometteur.
Si au départ je n'y ai vu qu'un intérêt ludique, je n'ai jamais pu décrocher du clavier. On m'a poussé assez tôt 
vers les systèmes GNU/Linux et j'ai pris goût à la liberté qu'ils offrent.&lt;/p&gt;
&lt;p&gt;Depuis, j'ai beaucoup appris. Je me suis intéressé à de nombreux domaines comme l'électronique, la programmation, 
la robotique, l'administration de serveurs, le réseau... Et plus j'apprends, plus je me rends compte de tout ce que 
je ne connais pas. Si j'ouvre aujourd'hui ce blog, c'est pour l'utiliser comme aide-mémoire dans un premier temps 
mais également pour suivre les traces des bloggeurs qui ont guidé mes pas dans le cyberespace et pour partager à 
mon tour les découvertes que j'y fais.&lt;/p&gt;
&lt;p&gt;Je parlerai donc d'informatique, de robotique et de technique en général mais aussi peut-être de politique ou d'actualité. 
J'ouvre la porte et je ne compte pas me mettre trop de barrières. Je compte écrire sur ce qui me touche, me frappe ou m'
interpelle. Le blog est &lt;em&gt;propulsé&lt;/em&gt; par &lt;a href="https://blog.getpelican.com/" title="Le site de Pelican"&gt;Pelican&lt;/a&gt; et j'utiliserai en outre 
différents outils &lt;em&gt;annexes&lt;/em&gt; comme &lt;a href="https://links.simonlefort.be/" title="Mon Shaarli"&gt;Shaarli&lt;/a&gt;, MyCryptoChat, 
Zerobin et peut-être d'autres dans le futur.&lt;/p&gt;</content><category term="Blog"></category><category term="Blog"></category></entry></feed>