Wallabag sur un hébergement mutualisé

Wallabag est une application web libre permettant la lecture différée d’articles. Je ne l’utilisais plus parce que la migration de la version 1 à la version 2 sur un hébergement mutualisé était plutôt mal documentée. J’ai décidé de m’y remettre et de partager avec vous la procédure que j’ai suivi sur Gandi.

Présentation de Wallabag

Wallabag, initialement nommée « poche », est une application web créée en 2013 et distribuée sous licence libre, la licence MIT. Ses auteurs sont Nicolas Lœuillet, Thomas Citharel, Jérémy Benoist, mais la communauté participe également au développement. L’application étant open source, vous pouvez retrouver son code sur le dépôt Github.

Wallabag Logo

Cette application web vous permet de sauvegarder des articles et de les organiser pour les lire plus tard. Le principe est assez similaire aux marques pages, sauf qu’il est possible de lire les articles sauvegardés en dehors de sites originels. Le contenu est extrait de la page web et vous pouvez alors le lire dans une interface épurée et homogénéisée. Il s’agit ainsi d’une alternative à Pocket ou Instapaper.

Wallabag doit au préalable être installé sur un serveur web. Le logiciel peut ensuite être utilisé depuis son navigateur, une application mobile ou une application pour liseuse. Si vous n’avez pas les moyens de l’installer sur votre propre serveur, vous pouvez trouver des sites proposant des instances de l’application. Certains seront payants, comme Wallabag.it, d’autres seront gratuits mais auront des limitations, comme Framabag.

Guide : installer Wallabag sur un hébergement mutualisé

La documentation pour installer Wallabag sur un serveur dédié semble assez complète, même si je n’ai pas testé. En revanche, pour installer la version 2 sur un hébergement mutualisé, la documentation laisse à désirer. En l’état, comme beaucoup (moi y compris), vous risquez de vous retrouver bloqué ou, au mieux, de vous retrouver avec une page blanche. Finalement, grâce aux réponses de andrewchenshx et cukabeka sur Github, j’ai réussi à installer Wallabag v2.

Je ne connais pas les fonctionnalités des différents hébergements mutualisés. Je ne peux pas vous garantir que ça marchera pour vous. Ici, je vais utiliser l’offre « Simple hosting » de Gandi. Ce dernier donne accès à une console SSH qui est nécessaire pour exécuter certaines commandes et compléter l’installation de Wallabag. Si vous ne pouvez pas vous connecter avec SSH, consultez la réponse de cukabeka : il propose une alternative (que je n’ai pas testé, donc je ne l’aborderai pas).

Prérequis

Pour suivre ce guide, il vous faudra évidemment un hébergement mutualisé. Ensuite, il vous faudra un nom de domaine ou un sous-domaine. Vérifiez également que votre serveur gère PHP et que vous disposez d’une base de données MySQL, SQLite ou PostgreSQL. Ci-dessous, j’utiliserais MySQL. Il vous faudra également un accès SSH.

Télécharger Wallabag

Pour commencer télécharger l’archive Wallabag et décompressez la :

wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package

Placez-vous dans le dossier créé (nommé à partir du numéro de version normalement) et créez un lien symbolique entre les dossiers web et htdocs :

ls -s web htdocs

Quelques précisions :

  • Gandi utilise un dossier htdocs pour les fichiers accessibles publiquement sur le web ; votre hébergeur utilise peut-être un autre dossier (www par exemple). Pensez à faire les changements nécessaires.
  • Si vous n’êtes pas sur Linux et que vous ne savez pas comment créer un lien symbolique, vous pourrez le faire une fois connecté en SSH, avant de saisir les autres commandes.

Modifier la configuration

Ensuite, allez dans le dossier app/config et modifiez le fichier parameters.yml. Pour ce faire, il faut que vous connaissiez le type de base de données que vous utilisez, le nom de la base de données à utiliser, le nom d’utilisateur et le mot de passe associé. Il faudra également indiquer l’URL pour accéder à Wallabag.

Dans mon cas, avec Gandi, voici les informations que j’ai modifié :

database_host: localhost
database_name: leNomDeVotreBaseDeDonnees
database_user: leNomDUtilisateurDeVotreBaseDeDonnees
database_password: leMotDePasseAssocie
domain_name: 'https://votreSousDomaine.votreNomDeDomaine.com'
locale: fr
secret: uneChaineDeCaracteres (la longueur par défaut est de 30, j'ai choisi de respecter la même longueur)
fosuser_registration: false (si vous ne souhaitez pas autoriser la création de compte)

En fonction de votre configuration, vous aurez peut-être d’autres modifications à apporter comme le type de base de données (si vous n’utilisez pas MySQL) par exemple.

Transférer les fichiers sur le serveur

Une fois les modifications terminées, vous pouvez vous connecter en SFTP à votre serveur. Placez-vous dans le dossier du sous-domaine qui servira à Wallabag et supprimez le répertoire htdocs. Maintenant, vous pouvez transférez l’ensemble des fichiers sur le serveur. Le transfert est long… soyez patient ; le dossier contient 21 148 éléments.

Se connecter en SSH

Il faut maintenant se connecter à la console SSH. Sur Gandi, l’option se trouve dans l’onglet « Administration » de votre instance « Simple Hosting ». Après avoir cliqué sur le bouton « Activer la console », vous obtiendrez une adresse vous permettant de vous connecter en SSH depuis un terminal. Il faudra ainsi saisir :

// Les étoiles (*) sont à remplacer.
ssh *****@console.sd*.gpaas.net

Il faut ensuite se placer dans le répertoire de Wallabag :

cd web/vhosts/nomDuSousDomaine.votreNomDeDomaine.com/

Si vous n’avez pas pu créer de liens symboliques précédemment, c’est le moment de le faire. Si c’est déjà fait, vous pouvez directement saisir les commandes suivantes :

// Il faut nettoyer le cache.
php bin/console cache:clear --env=prod

// Je ne suis pas sûr que cette commande soit utile, je ne suis pas familier avec Symfony.
php bin/console --env=prod

// Il faut maintenant installer Wallabag.
php bin/console wallabag:install --env=prod

// Que vous utilisiez ou non le 2e commande, vous devriez avoir un "PHP Warning".
// L'installation devrait tout de même fonctionner.

Vous allez maintenant avoir plusieurs informations à saisir :

// Wallabag vérifie si une base de données existe déjà.
It appears that your database already exists. Would you like to reset it? (yes/no) [no]:
> yes

// Wallabag demande si un administrateur doit être créé.
// Si oui, il faut indiquer son nom, son mot de passe et son adresse e-mail.
Would you like to create a new admin user (recommended)? (yes/no) [yes]:
 > yes

Username [wallabag]:
 > votreUsername

Password [wallabag]:
 > votreMotDePasse

Email []:
 > votreEmail

Si tout s’est bien passé, l’installation est terminée. Maintenant, vous pouvez vous rendre à l’adresse de votre Wallabag, il est alors possible de se connecter. Il ne vous reste plus qu’à le paramétrer selon vos préférences et à l’utiliser !

Connexion à Wallabag

Utiliser Wallabag

Je ne vais pas détailler toutes les fonctionnalités de Wallabag, ce n’était pas l’objectif de l’article et la documentation peut vous aider sur ce point. Je vais simplement vous donner un aperçu de ce qu’il est possible de faire avec Wallabag.

Ajouter un nouvel article

Plusieurs méthodes existent pour sauvegarder des articles :

  • le formulaire accessible depuis le bouton « + »
  • l’utilisation d’une extension pour votre navigateur
  • l’application pour smartphone
  • l’utilisation d’un bookmarklet à sauvegarder dans ses marques pages
Bouton ajouter un article sur Wallabag

Personnellement, je préfère le bookmarklet. La méthode est simple d’utilisation et ça ne surcharge pas le navigateur avec une nouvelle extension. Je ne modifie jamais les titres des articles sauvegardés donc je n’ai pas besoin de plus de fonctionnalités avant la sauvegarde.

Consulter les articles sauvegardés

Lorsque vous aurez sauvegardé plusieurs articles, ils seront accessibles dans Wallabag sous forme de tuiles ou de liste. Vous pourrez les « marquer comme lu », « marquer comme favori » ou les supprimer.

Tuiles Wallabag
Liste articles Wallabag

En cliquant sur un article, vous pourrez le lire directement dans Wallabag. Vous aurez également accès à un menu pour ajouter un tag, voir l’article original ou le partager par exemple.

Exemple d'article sur Wallabag

Autres fonctionnalités

Personnalisation

Vous pouvez changer le thème, le nombre de mots par minute qui permet d’estimer le temps de lecture ou le nombre d’articles à afficher par page. Vous pouvez également configurer les services de partage en les activant / désactivant ou en renseignant l’URL à utiliser (pour Shaarli ou Diaspora* par exemple).

Tags automatiques

Vous pouvez définir des règles de tag automatiques basé sur le titre ou l’URL de l’article par exemple. Ainsi, si le titre de l’article contient « WordPress » vous pouvez lui ajouter automatiquement un tag « WordPress ».

Import

Si vous utilisez déjà un service comme Pocket ou si vous avez de nombreux marques-pages dans votre navigateur, il est possible de les importer dans Wallabag.

Et d’autres fonctionnalités

Pour le reste, je vous laisse les découvrir par vous-même soit en explorant Wallabag soit en consultant la documentation.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.