Difference between revisions of "WikiServer - Getting VisualEditor working properly"

From The TinkerNet Wiki
Jump to navigation Jump to search
Line 136: Line 136:
 
# Create a user named "parsoid" on your wiki.
 
# Create a user named "parsoid" on your wiki.
 
# Add the following to <code>LocalSettings.php</code> on your Private Wiki:
 
# Add the following to <code>LocalSettings.php</code> on your Private Wiki:
#  
+
#* replace '''127.0.0.1''' with the actual IP address of your Wiki Server
 
 
 
  require_once "$IP/extensions/NetworkAuth/NetworkAuth.php";
 
  require_once "$IP/extensions/NetworkAuth/NetworkAuth.php";
 
   $wgNetworkAuthUsers[] = [
 
   $wgNetworkAuthUsers[] = [
         'iprange' => [ '192.168.0.251' ],
+
         'iprange' => [ '127.0.0.1' ],
 
         'user'    => 'parsoid'
 
         'user'    => 'parsoid'
 
   ];
 
   ];
 
enjoy
 
enjoy

Revision as of 15:03, 1 August 2020

Note:  Apparently, This is being rolled into WikiMedia 1.35 by default. w00t!!!

Installing VisualEditor (MediaWiki 1.34 or earlier... 1.35 has it rolled in)

Note:  This is still a work in progress...  Multi-Wiki is a bit of a fail.

Extension:VisualEditor

VisualEditor does not currently work with private wikis. Supposedly, there are workarounds, but more research is needed.

Requirements

  • Parsoid 0.11.0
  • Node.js 12

Parsoid Install

https://www.mediawiki.org/wiki/Parsoid/Setup

  • sudo apt install dirmngr
  • sudo apt-key advanced --keyserver keys.gnupg.net --recv-keys AF380A3036A03444
  • echo "deb https://releases.wikimedia.org/debian jessie-mediawiki main" | sudo tee /etc/apt/sources.list.d/parsoid.list
  • sudo apt install apt-transport-https
  • sudo apt update && sudo apt install parsoid
  • sudo vim /etc/mediawiki/parsoid/config.yaml

This will require further fuckery for the multi-wiki setup with private wiki!

VisualEditor Install

Find the current version via: Download MediaWiki extension

  • wget https://extdist.wmflabs.org/dist/extensions/VisualEditor-REL1_34-74116a7.tar.gz
    • This URL will change!
  • tar -xzf VisualEditor-REL1_34-74116a7.tar.gz
  • sudo rsync -av VisualEditor /var/www/html/wiki/extensions
  • sudo vim /var/www/html/wiki/LocalSettings.php
wfLoadExtension( 'VisualEditor' );
// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;
// Optional: Set VisualEditor as the default for anonymous users
// otherwise they will have to switch to VE
// $wgDefaultUserOptions['visualeditor-editor'] = "visualeditor";
// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';
// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;
$wgVirtualRestConfig['modules']['parsoid'] = array(
       // URL to the Parsoid instance
       // Use port 8142 if you use the Debian package
       'url' => 'http://localhost:8142',
       // Parsoid "domain", see below (optional)
       'domain' => 'localhost',
       // Parsoid "prefix", see below (optional)
       'prefix' => 'localhost'
);

Multiple Wiki Configuration

Repeat the parts above where stuff is done in the /wiki/ folder

(but use the folder for your second wiki... duh...)

  • sudo vim /etc/mediawiki/parsoid/config.yaml
mwApis:
    - # This is the only required parameter,
      # the URL of you MediaWiki API endpoint.
      uri: 'http://wiki.tinkernow.net/api.php'
      domain: 'wiki'
      prefix: 'wiki'
    - # and another MediaWiki
      uri: 'http://labnotes.tinkernow.net/api.php'
      domain: 'notes'
      prefix: 'notes'
  • sudo service parsoid restart
  • sudo vim /var/www/html/wiki/LocalSettings.php
wfLoadExtension( 'VisualEditor' );

// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;

// Optional: Set VisualEditor as the default for anonymous users
// otherwise they will have to switch to VE
// $wgDefaultUserOptions['visualeditor-editor'] = "visualeditor";

// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';

// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;


$wgVirtualRestConfig['modules']['parsoid'] = array(
#       'url' => 'http://wiki.tinkernow.net:8142',
       'url' => 'http://localhost:8142',
       'domain' => 'wiki',
       'prefix' => 'wiki'
)
  • sudo vim /var/www/html/notes/LocalSettings.php
wfLoadExtension( 'VisualEditor' );

// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;

// Optional: Set VisualEditor as the default for anonymous users
// otherwise they will have to switch to VE
// $wgDefaultUserOptions['visualeditor-editor'] = "visualeditor";

// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';

// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;

#$wgVirtualRestConfig['modules']['parsoid']['forwardCookies'] = true;

$wgVirtualRestConfig['modules']['parsoid'] = array(
       'url' => 'http://localhost:8142',
       'domain' => 'notes',
       'prefix' => 'notes',
       'forwardCookies' => true
);

VisualEditor on MediaWiki 1.35 or newer

Why yes... It IS rolled in.

Enabling VisualEditor on a Private Wiki

  1. Install the NetworkAuth extension
    • (details coming...)
  2. Create a user named "parsoid" on your wiki.
  3. Add the following to LocalSettings.php on your Private Wiki:
    • replace 127.0.0.1 with the actual IP address of your Wiki Server
require_once "$IP/extensions/NetworkAuth/NetworkAuth.php";
 $wgNetworkAuthUsers[] = [
        'iprange' => [ '127.0.0.1' ],
        'user'    => 'parsoid'
 ];

enjoy