De Wordpress à Pelican

Pour blogguer, je suis passé de Blogger à Wordpress.com et à chaque fois, ma petite motivation pour écrire a dû être supérieure à mon aversion pour l’interface d’édition et de gestion sinon je laissais tomber. Autant dire qu’au fûr et à mesure, cette motivation finit par disparaitre.

Je me suis dit qu’il me fallait (de nouveau) trouver un système de publication plus adapté. Je pensais que mon cahier des charges était compliqué:

  • Je veux un moteur léger, pas d’usine à gaz pour n’écrire que des textes
  • je souhaite pouvoir écrire directement avec Vim
  • je veux m’auto-héberger, donc pas de PHP/MySQL
  • je souhaite que mes articles soient mis facilement sous GIT (contrôle,sauvegarde, …)

Contre toute attente, je suis rapidement tombé sur des moteurs de blogs statiques :

Et là, l’idée m’a séduit, le site généré ne comporte que du HTML/CSS, il peut donc être hébergé facilement car il ne requiert pas de fonctionnalités spéciales de la part de l’hébergeur. L’édition d’articles se fait facilement via votre éditeur de texte favori en utilisant un langage de balisage léger tel que MarkDown ou reStructuredText (rest).

M’étant récemment mis à étudier le langage Python, j’ai tout de suite choisi d’essayer Pelican. Les premiers tests furent conclants, j’ai donc empaqueté Pelican et toutes ses dépendances et ai mis le tout sur le dépôt internet de Salix OS.

J’en ai profité pour fair un énorme tri dans mes articles en ne gardant que l’essentiel. Sachez que Pelican possède un outil d’import pour peu que vous ayez pandoc d’installé sur votre système, sinon, il existe un service en ligne de conversion de HTML vers ReST : SIAFOO.

Installation

La méthode Python

pip install pelican

La méthode Salix

slapt-get -i pelican

Principes

En gros, vous vous mettez dans un dossier vide, vous créez le dossier content dans lequel vous mettez tous vos articles écrits en reStructuredText (.rst), vous lancez :

pelican-quickstart

Vous répondez aux questions posées (URL, nom, …) et vous obtenez vos fichiers de configuration et un fichier MakeFile qui vous facilitera la vie :

    $ make help
    Makefile for a pelican Web site
    Usage:
    make html                        (re)generate the web site
    make clean                       remove the generated files
    make regenerate                  regenerate files upon modification
    make publish                     generate using production settings
    make serve                       serve site at http://localhost:8000
    make devserver                   start/restart develop_server.sh
    ssh_upload                       upload the web site via SSH
    rsync_upload                     upload the web site via rsync+ssh
    dropbox_upload                   upload the web site via Dropbox
    ftp_upload                       upload the web site via FTP
    github                           upload the web site via gh-pages

Comme vous le voyez, c’est très simple pour publier un article :

$ vim content/mon_article_super_interressant.rst
# édition
$ make publish # construction du site en local (vous pouvez voir le résultat)
$ make rsync_upload # mise en ligne des modifications via rsync et SSH

Voilà, pour un début. Ensuite, on peux bien évidemment changer le thème ou faire facilement le sien, mais ce sera pour plus tard ;)

Les commentaires

Oui, on perd la possibilité d’avoir des commentaires, mais sachez qu’il est tout à fait possible de rajouter cette fonction par le biais de DISQUS. Cela reste un service externe sur lequel vous n’avez aucun contrôle, à vous de voir. J’ai choisi de m’en passer. On peut toujours me joindre via l’email, twitter ou Google+, ça devrait le faire.

Quelques liens