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>
|
|
|
|
|
|