Installer VisualEditor pour MediaWiki 1.30.0

De Adadov.net wiki
Révision datée du 19 mai 2018 à 15:44 par Adadov (discussion | contributions) (Adadov a déplacé la page Installer VisualEditor vers Installer VisualEditor pour MediaWiki 1.30.0)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

J'ai récemment installé VisualEditor sur ce wiki !

Cet éditeur apporte une solution d'édition très intéressante pour les personnes qui ne sont pas familière avec le langage wiki.

Mais cet éditeur demande pas mal de travail pour sa mise en service ...

Et après de longues heures de combat, j'ai fini par le faire fonctionner.

Voici comment ...

Installation de Parsoid

Installation des dépendances

Avant de pouvoir installer Parsoid, il faut installer ses dépendances.

[root@linux] # dnf install nodejs npm vim-enhanced git policycoreutils-python

Si vous ne l'avez pas, pensez à installer GIT aussi. Il est nécessaire pour installer les sources de Parsoid

Installation du serveur

J'ai utilisé GIT pour les récupérer et les placer dans le dossier /opt/parsoid et j'ai demandé le tag de la version 0.8.0 afin d'avoir une version compatible:

[root@linux] # git clone https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid
[root@linux] # git checkout 0.8.0

Une fois nos sources en place, il ne reste plus qu'à lancer l'installation. Elle devrait se passer sans soucis.

[root@linux] # npm install

Configuration de Parsoid

La configuration de Parsoid pour une utilisation simple est très rapide.

Copiez le fichier config.sample.yaml vers config.yaml et éditez le.

Modifiez la ligne uri: pour qu'elle pointe sur le fichier api.php de votre wiki.

Elle devra avoir la forme suivante:

uri: 'http://monwiki/w/api.php'

Ne vous occupez pas des autres options pour le moment. Vous verrez plus tard si vous souhaitez pousser votre configuration plus loin.

Ajout du script de démarrage

Le mieux reste de voir Parsoid démarrer automatiquement lors du démarrage du serveur.

Pour ça il faut ajouter un script à SystemD.

On va donc créer le script /etc/systemd/system/parsoid.service avec le contenu suivant:

[Unit]
Description=Mediawiki Parsoid web service on node.js
Documentation=http://www.mediawiki.org/wiki/Parsoid
Wants=local-fs.target network.target
After=local-fs.target network.target

[Install]
WantedBy=multi-user.target

[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/opt/parsoid
# EnvironmentFile=-/etc/parsoid/parsoid.env
ExecStart=/usr/bin/node /opt/parsoid/bin/server.js
KillMode=process
Restart=on-success
PrivateTmp=true
StandardOutput=syslog

Une fois le script sauvé, on peut activer et démarrer le serveur via systemd.

[root@linux] # systemctl enable --now parsoid.service

Tester Parsoid

Avant d'aller plus loin, on va tester Parsoid.

De cette manière on sera certain qu'il fonctionne et communique avec MediaWiki.

Pour ça une simple commande suffit:

[root@linux] # curl -L http://localhost:8000/localhost/v3/page/html/[page]/

Remplacez [page] par le nom d'une page existante de votre wiki.

Vous devriez obtenir le code HTML de votre page en retour si tout s'est bien passé.

Installation de l'extension VisualEditor

Pour récupérer les sources on utilisera encore GIT.
[root@linux] # git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/VisualEditor.git
[root@linux] # cd VisualEditor
[root@linux] # git checkout 1.30.0
[root@linux] # git submodule update --init

Les commandes ci-dessus vont télécharger les sources, demander le tag 1.30.0 (version de mediawiki) et télécharger les sous-modules.

Si on oublie la dernière, on va chercher pendant des heures pourquoi ça ne marche pas ...

Configuration de MediaWiki

Maintenant que nous avons tout ce qu'il faut pour faire fonctionner VisualEditor, il ne reste plus qu'à demander à MediaWiki de le mettre en service.

Pour ça on ajoutera les lignes suivantes dans le fichier LocalSettings.php

$wgVirtualRestConfig['modules']['parsoid'] = array(
    // URL vers Parsoid
    'url' => 'http://127.0.0.1:8000',
    // Parsoid "domain", configuration par défaut
    'domain' => 'localhost',
    // Parsoid "prefix", laisser vide
    'prefix' => '',
);


wfLoadExtension('VisualEditor');
// Activer par défaut VisualEditor pour tout le monde
$wgDefaultUserOptions['visualeditor-enable'] = 1;

// Masquer l'option d'activation dans les préférences utilisateur
$wgHiddenPrefs[] = 'visualeditor-enable';

Vous devriez maintenant pouvoir profiter de l'éditeur visuel de mediawiki.