main
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<!-- Sep 03, 2024 -->
5<meta charset="utf-8" />
6<meta name="viewport" content="width=device-width, initial-scale=1" />
7<title>Gollum comme Wiki personnel</title>
8<meta name="author" content="Vincent Demeester" />
9<meta name="generator" content="Org Mode" />
10<link rel='icon' type='image/x-icon' href='/images/favicon.ico'/>
11<meta name='viewport' content='width=device-width, initial-scale=1'>
12<link rel='stylesheet' href='/css/new.css' type='text/css'/>
13<link rel='stylesheet' href='/css/syntax.css' type='text/css'/>
14<link href='/index.xml' rel='alternate' type='application/rss+xml' title='Vincent Demeester' />
15</head>
16<body>
17<main id="content" class="content">
18<header>
19<h1 class="title">Gollum comme Wiki personnel</h1>
20</header><section id="outline-container-Introduction" class="outline-2">
21<h2 id="Introduction">Introduction</h2>
22<div class="outline-text-2" id="text-Introduction">
23<p>
24Il y a environ 4 mois j’ai eu un accident de vélo ; un traumatisme
25crânien, des brulures sur la face, quelques points de sutures, un doigt
26cassé et une hernie discale m’ont cloué (et me clou encore) plus que
27d’habitude sur ma chaise de bureau. Le bon côté des choses, c’est que
28cela m’a permit de me poser et de réfléchir une bonne façon d’être
29efficace et organiser, au travail et à la maison :-).
30</p>
31
32<p>
33Une des principales <i>action</i> que j’ai pris est d’utiliser un wiki local
34et synchronisé sur <i>tout</i> mes PCs. Le <i>format</i> wiki est assez adapté à
35une prise de note et à la création de contenu plus complet (comme des
36<a href="http://shortbrain.org">articles</a> ou de la documentation pour des
37projets en cours). Les conditions étaient les suivantes :
38</p>
39
40<ul class="org-ul">
41<li>Facilité de mise en place.</li>
42<li>Pas de base de données.</li>
43<li><i>Merging</i> facile (<a href="http://git-scm.com">git</a> <i>rules my world</i>).</li>
44<li><a href="http://daringfireball.net/projects/markdown/">Markdown</a> comme
45syntaxe, car utilisé à peu près partout (blogs, articles, READMEs,
46documentations).</li>
47<li>Éditable à partir d’une interface web ou de mon éditeur favoris.</li>
48</ul>
49
50<p>
51L’outil qui remplit presque toutes ces conditions s’appelle
52<a href="https://github.com/github/gollum">gollum</a>. C’est un moteur wiki,
53écris en ruby, qui se base sur un repository
54<a href="http://git-scm.com">git</a>. Il est développer par l’équipe de
55<a href="http://github.com">Github</a> et c’est celui qui est utilisé par les
56pages wiki là-bas. Il permet d’utiliser à peu près n’importe quel
57syntaxe (dont
58<a href="https://github.com/github/github-flavored-markdown">github-markdown</a>
59qui est assez proche de celle de
60<a href="http://johnmacfarlane.net/pandoc">pandoc</a>). Par ailleurs, comme il se
61base sur <a href="http://git-scm.com">git</a>, les points <i>“pas de base de
62données”</i>, <i>“merging facile”</i> et <i>“éditable également à partir de mon
63éditeur favoris”</i> sont toutes remplies.
64</p>
65
66<p>
67Avec <a href="https://github.com/github/gollum">Gollum</a> vous avez un wiki
68markdown décentralisé, éditable via une interface web ou via votre
69éditeur favoris.
70</p>
71</div>
72</section>
73<section id="outline-container-mise-en-place" class="outline-2">
74<h2 id="mise-en-place">Mise en place</h2>
75<div class="outline-text-2" id="text-mise-en-place">
76<p>
77La mise en place est relativement simple ; après tout dépend du besoin
78que vous avez. L’installation se fait par <a href="rubygems.html">RubyGem</a>
79ou en clonant le repository.
80</p>
81
82<p>
83{{< highlight bash >}} # Installation de gollum et du format markdown de
84github $ gem install gollum gitub-markdown {{< /highlight >}}
85</p>
86
87<p>
88Si vous n’utilisez pas <a href="https://github.com/sstephenson/rbenv">rbenv</a>
89ou <a href="https://rvm.io/">rvm</a> il est probable qu’il faille lancer la
90commande en root ou utiliser sudo.
91</p>
92
93<p>
94Ensuite, il suffit de lancer
95<a href="https://github.com/github/gollum">Gollum</a> dans un dossier qui est un
96repository git ; le tour est joué
97</p>
98
99<p>
100{{< highlight bash >}} # J’ulitise ~/desktop/wiki pour mon wiki $ cd
101~/desktop/wiki && gollum {{< /highlight >}}
102</p>
103
104<p>
105L’idée finale est d’automatiser deux choses :
106</p>
107
108<ol class="org-ol">
109<li>Le démarrage de gollum</li>
110<li>La synchronisation du repository avec les différents autres <i>remotes</i></li>
111</ol>
112
113<p>
114Suivant le système d’exploitation et/ou la distribution utilisées, il y
115a énormément de possibilité d’effectuer cette automatisation. Dans mon
116cas, j’ai une <a href="http://debian.org">Debian</a> assez light, avec surtout
117plein de scripts. Je démarre donc
118<a href="https://github.com/github/gollum">Gollum</a> au démarrage de ma session
119grâce à une script qui est lancé dans la foulée du gestionnaire de
120fenêtre. La synchronisation se fait grâce à une tâche planifiée <i>cron</i>
121qui est “distribué” sur chacune de mes machines.
122</p>
123
124<p>
125<i>C’est tout pour le moment</i> ;-).
126</p>
127</div>
128</section>
129</main>
130<footer id="postamble" class="status">
131<footer>
132 <small><a href="/" rel="history">Index</a> • <a href="/sitemap.html">Sitemap</a> • <a href="https://dl.sbr.pm/">Files</a></small><br/>
133 <small class='questions'>Questions, comments ? Please use my <a href="https://lists.sr.ht/~vdemeester/public-inbox">public inbox</a> by sending a plain-text email to <a href="mailto:~vdemeester/public-inbox@lists.sr.ht">~vdemeester/public-inbox@lists.sr.ht</a>.</small><br/>
134 <small class='copyright'>
135 Content and design by Vincent Demeester
136 (<a rel='licence' href='http://creativecommons.org/licenses/by-nc-sa/3.0/'>Some rights reserved</a>)
137 </small><br />
138</footer>
139</footer>
140</body>
141</html>