| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |      | 
					
						
							|  |  |  |  |     <!DOCTYPE html> | 
					
						
							|  |  |  |  | <html> | 
					
						
							|  |  |  |  |     <head> | 
					
						
							|  |  |  |  |         <meta charset="UTF-8"> | 
					
						
							|  |  |  |  |         <meta name="viewport" content="width=device-width, initial-scale=1"> | 
					
						
							|  |  |  |  |         <meta property="og:image" content="https://www.cipherbliss.com/wp-content/uploads/2016/12/rond.png"> | 
					
						
							|  |  |  |  |         <meta property="og:locale" content="fr_FR"> | 
					
						
							|  |  |  |  |         <meta property="og:description" content="Code, nouvelles technologies et entrepreneurariat par B. Lemoine"> | 
					
						
							| 
									
										
										
										
											2024-11-11 00:02:50 +01:00
										 |  |  |  |         <meta property="og:url" content="https://www.cipherbliss.com"> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |         <meta property="og:site_name" content="Cipher Bliss"> | 
					
						
							| 
									
										
										
										
											2024-11-11 00:58:44 +01:00
										 |  |  |  |         <link rel="alternate" type="application/rss+xml" title="Cipher Bliss » Flux" href="https://www.cipherbliss.com/feed/"> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |         <link href="/style.css" rel="stylesheet"> | 
					
						
							|  |  |  |  |         <meta charset="utf-8"> | 
					
						
							|  |  |  |  |         <meta name="viewport" content="width=device-width, initial-scale=1"> | 
					
						
							|  |  |  |  |         <title></title> | 
					
						
							|  |  |  |  |         <meta name="author" content=""> | 
					
						
							|  |  |  |  |         <link rel="alternate" type="application/rss+xml" title="Cipher Bliss » Flux" | 
					
						
							|  |  |  |  |             href="https://www.cipherbliss.com/feed/"> | 
					
						
							|  |  |  |  |         <meta property="og:title" content=""> | 
					
						
							|  |  |  |  |         <meta property="og:locale" content="fr_FR"> | 
					
						
							|  |  |  |  |         <!-- Description de la page --> | 
					
						
							|  |  |  |  |         <meta name="description" content=""> | 
					
						
							|  |  |  |  |         <meta name="reply-to" content="contact@cipherbliss.com"> | 
					
						
							|  |  |  |  |         <link rel="icon" type="image/png" href="https://www.cipherbliss.com/wp-content/uploads/2016/12/rond.png"> | 
					
						
							|  |  |  |  |     </head> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     <body> | 
					
						
							|  |  |  |  |         <div id="page"> | 
					
						
							|  |  |  |  |             <header id="masthead" class="site-header"> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:43:38 +01:00
										 |  |  |  |                 <div class="header-image" style="background: url(https://www.cipherbliss.com/wp-content/uploads/2016/11/bg.jpg)"> | 
					
						
							|  |  |  |  |                     <a href="/"> | 
					
						
							|  |  |  |  |                     <img src="https://www.cipherbliss.com/wp-content/uploads/2016/12/rond.png" class="site-icon img"> | 
					
						
							|  |  |  |  |                     </a> | 
					
						
							|  |  |  |  |                     <h1 class="blog-title">Cipher Bliss</h1> | 
					
						
							|  |  |  |  |                     <p class="blog-subtitle">Code, nouvelles technologies et entrepreneurariat par B. Lemoine</p> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |                 </div> | 
					
						
							|  |  |  |  |                     <nav class="navbar is-fixed-top is-dark" role="navigation" aria-label="main navigation"> | 
					
						
							|  |  |  |  |                         <div class="navbar-brand"> | 
					
						
							|  |  |  |  |                             <a class="navbar-item" href="https://www.cipherbliss.com"> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:43:38 +01:00
										 |  |  |  |                                  | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |                             </a> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                         </div> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |                         <div id="navbarBasicExample" class="navbar-menu"> | 
					
						
							|  |  |  |  |                             <div class="navbar-start"> | 
					
						
							|  |  |  |  |                                 <a class="navbar-item" href="https://www.cipherbliss.com"> | 
					
						
							|  |  |  |  |                                     <img src="https://www.cipherbliss.com/wp-content/uploads/2016/12/rond.png" | 
					
						
							|  |  |  |  |                                         class="img-fluid"> | 
					
						
							|  |  |  |  |                                 </a> | 
					
						
							| 
									
										
										
										
											2024-11-11 00:02:50 +01:00
										 |  |  |  |                                  | 
					
						
							|  |  |  |  | <nav> | 
					
						
							|  |  |  |  |     <a href="/">Accueil</a> | 
					
						
							|  |  |  |  |     <a href="https://portfolio.cipherbliss.com">Portfolio</a> | 
					
						
							|  |  |  |  |     <a href="/feed">Flux RSS</a> | 
					
						
							|  |  |  |  |     <a href="/contact">Contact</a> | 
					
						
							|  |  |  |  |     <a href="/ressources-de-café-vie-privée">Ressources</a> | 
					
						
							|  |  |  |  | </nav> | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |                             </div> | 
					
						
							|  |  |  |  |                             <div class="navbar-end"> | 
					
						
							|  |  |  |  |                                 <div class="navbar-item"> | 
					
						
							|  |  |  |  |                                     <form role="search" method="get" class="search-form" action="/"> | 
					
						
							|  |  |  |  |                                         <label> | 
					
						
							|  |  |  |  |                                             <input class="search-field" placeholder="Recherche" value="" name="s" | 
					
						
							|  |  |  |  |                                                 type="search"> | 
					
						
							|  |  |  |  |                                         </label> | 
					
						
							|  |  |  |  |                                         <input class="is-hidden search-submit" value="Rechercher" type="submit"> | 
					
						
							|  |  |  |  |                                     </form> | 
					
						
							|  |  |  |  |                                 </div> | 
					
						
							|  |  |  |  |                             </div> | 
					
						
							|  |  |  |  |                         </div> | 
					
						
							|  |  |  |  |                     </nav> | 
					
						
							|  |  |  |  |             </header> | 
					
						
							|  |  |  |  |             <main class="body-wrap boxed-container"> | 
					
						
							|  |  |  |  |                 <article class="content"> | 
					
						
							| 
									
										
										
										
											2024-11-11 00:58:44 +01:00
										 |  |  |  |                      | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  | <header id="title-block-header"> | 
					
						
							|  |  |  |  | <h1 class="title">cipherbliss_blog</h1> | 
					
						
							|  |  |  |  | </header> | 
					
						
							| 
									
										
										
										
											2024-11-11 00:58:44 +01:00
										 |  |  |  | <h1 id="création-dun-blog-gemini-1">Création d'un blog gemini</h1> | 
					
						
							|  |  |  |  | <p>Et hop, un générateur qui fait le café à partir de fichiers orgmode | 
					
						
							|  |  |  |  | ou markdown.</p> | 
					
						
							|  |  |  |  | <p>Génération de capsules gemini et blog html à partir d'articles en | 
					
						
							|  |  |  |  | fichiers Orgmode.</p> | 
					
						
							|  |  |  |  | <p>exemple avec le blog de DragonFeu. | 
					
						
							|  |  |  |  | `sources/dragonfeu<sub>blog</sub>`</p> | 
					
						
							|  |  |  |  | <p>Les articles sont écrits dans le dossier source/, leur nom permet de | 
					
						
							|  |  |  |  | déduire l'ordre de publication grâce à une date YYY-MM-DD en début de | 
					
						
							|  |  |  |  | nom de fichier ## création d'un article Pour un article en langue En, | 
					
						
							|  |  |  |  | sur le blog cipherbliss<sub>blog</sub>, donner le titre entre guillemets | 
					
						
							|  |  |  |  | ainsi: ```shell python3 new<sub>article</sub>.py | 
					
						
							|  |  |  |  | cipherbliss<sub>blog</sub> en "Creation of a gemini blog" ``` ## | 
					
						
							|  |  |  |  | prérequis pour installation</p> | 
					
						
							|  |  |  |  | <p>Avoir des articles au format org, les mettre dans un dossier | 
					
						
							|  |  |  |  | source/nom<sub>dublog</sub>, et avoir quelques bibliothèques dispo:</p> | 
					
						
							|  |  |  |  | <p>```shell bash install.sh ``` [2024-11-04] Testé avec: Pandoc 2.9.2.1 | 
					
						
							|  |  |  |  | <a | 
					
						
							|  |  |  |  | href="http://fr.archive.ubuntu.com/ubuntu/pool/universe/p/pandoc/pandoc_2.9.2.1-3ubuntu2_amd64.deb">http://fr.archive.ubuntu.com/ubuntu/pool/universe/p/pandoc/pandoc_2.9.2.1-3ubuntu2_amd64.deb</a></p> | 
					
						
							|  |  |  |  | <p>Python 3.10.12 ## Conversion des fichiers Org vers gemini et html | 
					
						
							|  |  |  |  | Ceci va convertir ce qui se trouve dans le dossier | 
					
						
							|  |  |  |  | `sources/tykayn<sub>blog</sub>` et produire un site web dans | 
					
						
							|  |  |  |  | `html<sub>output</sub>/tykayn<sub>blog</sub>` ainsi qu'une capsule | 
					
						
							|  |  |  |  | gemini dans `capsules-gemini/tykayn<sub>blog</sub>`</p> | 
					
						
							|  |  |  |  | <p>```shell bash converters.sh tykayn<sub>blog</sub> ```</p> | 
					
						
							|  |  |  |  | <p>## Conversion de blog en capsule gemini</p> | 
					
						
							|  |  |  |  | <p>L'idée est d'avoir un ensemble de billets de blogs en texte simple | 
					
						
							|  |  |  |  | versionnés avec git et servis par une capsule gemini ainsi que par un | 
					
						
							|  |  |  |  | site web. On aura besoin de convertir des billets existants, et de | 
					
						
							|  |  |  |  | rédiger les nouveaux dans un format qui nous convient, par exemple | 
					
						
							|  |  |  |  | markdown ou orgmode afin de rendre le tout le plus pérenne possible. On | 
					
						
							|  |  |  |  | aura aussi besoin de référencer les images dans un dossier de notre | 
					
						
							|  |  |  |  | dépot, et de gérer les relations entres articles pour que les liens | 
					
						
							|  |  |  |  | aient du sens sur la capsule gemini autant que dans la version web. On | 
					
						
							|  |  |  |  | souhaite aussi fournir un flux RSS, et un template de billet de blog | 
					
						
							|  |  |  |  | avec une entête et un pied de page commun qui donne des moyens de | 
					
						
							|  |  |  |  | contact, de soutenir l'auteur, et de revenir à l'accueil. On prendra | 
					
						
							|  |  |  |  | aussi en charge différentes pages:</p> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							|  |  |  |  | <li>à propos</li> | 
					
						
							|  |  |  |  | <li>contact</li> | 
					
						
							|  |  |  |  | <li>nos projets</li> | 
					
						
							|  |  |  |  | <li>une liste des articles triés par date.</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							|  |  |  |  | <p>Il nous faudra aussi un script de mise à jour du blog qui se charge | 
					
						
							|  |  |  |  | de mettre à jour le flux rss, le dépot git. On peut aller chercher de | 
					
						
							|  |  |  |  | l'automatisation dans la gestion de plusieurs capsules différentes en | 
					
						
							|  |  |  |  | tagguant les articles par nom de blog, ce qui nécessite un fichier de | 
					
						
							|  |  |  |  | config pour les correspondances.</p> | 
					
						
							|  |  |  |  | <p>## Depuis wordpress Connec à la base de données mysql, et extraction | 
					
						
							|  |  |  |  | de chaque article pour récupérer la partie HTML et la convertir en | 
					
						
							|  |  |  |  | markdown et en fichiers org.</p> | 
					
						
							|  |  |  |  | <p>## Depuis des fichiers orgmode. J'écris en orgmode une base de | 
					
						
							|  |  |  |  | connaissances qui contient aussi un export de mes anciens billets de | 
					
						
							|  |  |  |  | blog dans un dossier par blog. Pour cibler quels billets utiliser pour | 
					
						
							|  |  |  |  | quel blog j'ai donc deux possibilités: leur chemin de fichier, ou des | 
					
						
							|  |  |  |  | tags particuliers présents dans les fichiers org. <a | 
					
						
							|  |  |  |  | href="id:5a197a1b-ddfe-4c79-8934-d9a28ab6df65">Textes de blog en | 
					
						
							|  |  |  |  | préparation</a> <a | 
					
						
							|  |  |  |  | href="https://forge.chapril.org/tykayn/org-report-stats">https://forge.chapril.org/tykayn/org-report-stats</a></p> | 
					
						
							|  |  |  |  | <p>Rédaction, conversion, completion des nouveaux articles, régénération | 
					
						
							|  |  |  |  | des indexs et flux rss, mise à jour du dépot git, publication des | 
					
						
							|  |  |  |  | pages.</p> | 
					
						
							|  |  |  |  | <p>Offpunk LazyBlog Dotclear, Wordpress, Hugo, Pélican Pandoc, PandocGmi | 
					
						
							|  |  |  |  | <a | 
					
						
							|  |  |  |  | href="https://github.com/njamescouk/pandocGmi/tree/master">https://github.com/njamescouk/pandocGmi/tree/master</a></p> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							|  |  |  |  | <li>config par site web de son nom de domaine</li> | 
					
						
							|  |  |  |  | <li>réécriture des liens internes</li> | 
					
						
							|  |  |  |  | <li>réécriture des url des images vers le dossier courant</li> | 
					
						
							|  |  |  |  | <li>réparer la génération de fichiers gmi</li> | 
					
						
							|  |  |  |  | <li>template footer article: gestion article suivant et précédent</li> | 
					
						
							|  |  |  |  | <li>conversion des liens avec nom de domaine si relatifs</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							|  |  |  |  | <li>navigation sur les pages d'article</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							|  |  |  |  | <p>- gestion des langues dans la source et la destination</p> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							|  |  |  |  | <li>gestion multi site et multi langue</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-11 00:58:44 +01:00
										 |  |  |  |                     <p class="after-article"> | 
					
						
							|  |  |  |  |                      | 
					
						
							|  |  |  |  |                     </p> | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |                 </article> | 
					
						
							|  |  |  |  |             </main> | 
					
						
							|  |  |  |  |             <footer class="site-footer has-top-divider"> | 
					
						
							|  |  |  |  |                 <div class="container"> | 
					
						
							|  |  |  |  |                     <div class="site-footer-inner"> | 
					
						
							|  |  |  |  |                         | 
					
						
							| 
									
										
										
										
											2024-11-10 18:43:38 +01:00
										 |  |  |  |                          | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  |              | 
					
						
							| 
									
										
										
										
											2024-11-11 00:58:44 +01:00
										 |  |  |  |              | 
					
						
							| 
									
										
										
										
											2024-11-11 00:02:50 +01:00
										 |  |  |  | <nav> | 
					
						
							|  |  |  |  |     <a href="/">Accueil</a> | 
					
						
							|  |  |  |  |     <a href="https://portfolio.cipherbliss.com">Portfolio</a> | 
					
						
							|  |  |  |  |     <a href="/feed">Flux RSS</a> | 
					
						
							|  |  |  |  |     <a href="/contact">Contact</a> | 
					
						
							|  |  |  |  |     <a href="/ressources-de-café-vie-privée">Ressources</a> | 
					
						
							|  |  |  |  | </nav> | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-10 18:03:31 +01:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |                     </div> | 
					
						
							|  |  |  |  |                 </div> | 
					
						
							|  |  |  |  |             </footer> | 
					
						
							|  |  |  |  |         </div> | 
					
						
							|  |  |  |  |     </body> | 
					
						
							|  |  |  |  |     <!-- généré avec orgmode-to-gemini-blog par Tykayn --> | 
					
						
							|  |  |  |  | </html> | 
					
						
							|  |  |  |  |   |