Mais ça alors, qu'est-ce qu'il nous raconte ? Wallabag, c'est quoi d'abord ? Wallabag est ce qu'on appelle une read-it-later app. Un exemple connu serait Pocket, et vous avez certainement dû en entendre parler récemment, car Mozilla a noué un partenariat avec Pocket, ce qui a eu l'occasion de faire monter la tension chez les adeptes du panda roux, pour la simple et bonne raison que Pocket n'est pas ouvert. Bien que l'application elle-même est open-source, le service, lui, n'est pas ouvert. C'est là que Wallabag entre en scène puisque c'est ce qu'on appelle une alternative libre, de facto self-hostable (bah oui, sinon ce ne serait pas marrant !). Pour revenir au sujet, Wallabag permet d'archiver une page web en archivant son contenu uniquement (texte et images). Ceci est très utile pour les articles. Vous pouvez également convertir vos articles en plusieurs formats, comme ePub. Wallabag bénéficie d'une intégration à travers des applications et des extensions.

Ce tutoriel nécessite un serveur dédié avec une distribution GNU/Linux récente et maintenue à jour, telle que Debian Jessie (on partira du principe que vous l'utilisez, sinon, commandes à adapter), et avec PHP et MySQL fonctionnels. Normalement, si vous avez suivi quelques tutoriels ici, c'est déjà fait. Le serveur web utilisé est nginx par soucis d'homogénéité avec les tutoriels déjà présents sur ce site.

Commençons par installer les pré-requis (c'est normalement déjà fait, mais rien ne vous empêche de vérifier) :
su
aptitude install mysql-server mysql-client
aptitude install nginx php5-fpm php5-cli php5-mysql php5-mcrypt php5-curl php5-tidy git
Pour installer d'autres dépendances, l'installation de wallabag nécessite composer :
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Ensuite, utilisons git pour récupérer les sources et installer les dernières dépendances :
cd /var/www
git clone https://github.com/wallabag/wallabag.git
chown -R www-data:www-data /var/www/wallabag
cd wallabag
composer install
composer update
Maintenant, il nous faut créer une base de données pour wallabag. MySQL est recommandé, et nous allons l'utiliser :
mysql -u root -p
CREATE DATABASE wallabag;
GRANT ALL PRIVILEGES ON wallabag.* TO 'wallabag'@'localhost' IDENTIFIED BY 'un_mot_de_passe';
FLUSH PRIVILEGES;
exit;
Il va nous falloir créer une configuration pour nginx :
nano /etc/nginx/sites-enabled/wallabag.conf
... et copiez-collez ceci (lisez les commentaires) :
server {
    server_name sous-domaine.domaine.tld;
    listen 80; #remplacez par "listen 443 ssl;" pour activer SSL

    root /var/www/wallabag;
    access_log /var/log/nginx/access.wallabag.log;
    error_log /var/log/nginx/error.wallabag.log;
    index index.html index.php;

    #Pour activer SSL
    #ssl on;
    #ssl_certificate /etc/nginx/keys/key.crt; # à changer
    #ssl_certificate_key /etc/nginx/keys/key.key; # à changer
    #include /etc/nginx/conf.d/ciphers.conf; # suivre tutoriel pour la faille logjam

    location / {
        try_files $uri $uri/ /index.php;
    }

    location ~ /(db) {
        deny all;
        return 404;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        try_files $uri = 404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include /etc/nginx/fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
        fastcgi_index index.php;
    }

}
Un redémarrage de nginx s'impose, évidemment :
service nginx restart
Wallabag devrait enfin être accessible au domaine que vous lui avez attribué. Rentrez l'url dans votre navigateur, vous tomberez sur une page d'installation qui vous décrira les étapes à suivre, notamment :
- Renseigner les informations MySQL (serveur : localhost, db : wallabag, user : wallabag, mot de passe : celui que vous avez choisi)
- Créer un utilisateur (qui sera aussi admin)

Validez et continuez, normalement Wallabag vous indiquera que l'installation s'est effectuée avec succès et que les fichiers d'installation seront supprimés. Continuez et vous aurez accès à wallabag avec les identifiants que vous venez de choisir pour votre utilisateur principal. Dans le menu "Config" vous pouvez créer d'autres utilisateurs.

D'ailleurs, je vous suggère d'aller dans le menu "Config". Vous y verrez des informations utiles telles que les différentes extensions/applications disponibles. Pour utiliser wallabag avec une application tierce, vous aurez néanmoins besoin de générer des tokens, et ce dans la partie "Feeds" (toujours dans "Config").

Voici les applications disponibles :
- Android : https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche
- iOS : https://itunes.apple.com/app/wallabag/id828331015?mt=8
- Windows Phone : http://www.windowsphone.com/en-US/store/app/wallabag/d5226cf1-f422-4e00-996c-88e9c5233332

De même pour les extensions :
- Firefox : https://addons.mozilla.org/firefox/addon/wallabag/
- Chrome : https://chrome.google.com/webstore/detail/wallabag/bepdcjnnkglfjehplaogpoonpffbdcdj

Tous les navigateurs n'ont pas droit aux extensions, c'est pratique mais vous pouvez toujours passer par ce menu "Config" pour ajouter un article (après c'est à vous de voir, par exemple avec Safari iOS il y a une intégration de Wallabag à sélectionner dans le menu d'envoi) :
Voici un aperçu de la page "Unread" après avoir ajouté quelques articles :



Et évidemment, tous ces articles sont synchronisés, avec mon iPad et mon smartphone Android par exemple !
Ceci n'est qu'un petit aperçu des possibilités de Wallabag, bien sûr, je vous laisse découvrir le service par vous-même. Un service qui est le vôtre et qui dépend seulement de votre serveur.
> Topic de discussion ici : http://mondedie.fr/d/6990 <
Répondre…