Vollständige Installationsanleitung

From SemanticOrganization
Revision as of 13:17, 24 June 2022 by Admin (talk | contribs)
Jump to: navigation, search

Vollständige Installation

Datenbank erstellen

mysql> create database DBNAME;
mysql> create user DBUSER@localhost identified by 'DBPASS';
mysql> grant all on DBNAME.* to DBUSER@localhost;

Ersetze DBNAME mit dem gewünschten Namen für die Datenbank, DBUSER mit dem Namen des Datenbankbenutzers und DBPASS mit dem gewählten Passwort.

MediaWiki herunterladen

wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.6.tar.gz
tar xvzf mediawiki-1.35.6.tar.gz 
mv mediawiki-1.35.6 w
rm mediawiki-1.35.6.tar.gz


Tweeki-Skin herunterladen

cd w/skins/
git clone https://github.com/thaider/Tweeki

Extensions herunterladen

cd ../extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/PageForms.git
cd PageForms
git checkout 731d226
cd ..
git clone https://github.com/thaider/SemanticOrganization


Semantic MediaWiki und Semantic Result Formats installieren

Composer installieren, falls nicht bereits vorhanden.

Erzeuge die Datei composer.local.json und lade die Eweiterungen:

cd ..
cp composer.local.json-sample composer.local.json
COMPOSER=composer.local.json composer require --no-update mediawiki/semantic-media-wiki:~3.2
COMPOSER=composer.local.json composer require --no-update mediawiki/semantic-result-formats:~3.2
composer update --no-dev

Installationsprozedur laufen lassen

Öffne /w in deinem Browser (z.B. localhost/w bei lokaler Installation) und folge der Anleitung. Wähle Tweeki als Standard-Skin, aktiviere die ParserFunctions-, Page Forms- und Semantic Organization-Extensions. Es wird empfohlen, semorg nur in privaten Wikis einzusetzen (nur registrierte Benutzer*innen können das Wiki lesen und bearbeiten).

füge folgendes in LocalSettings.php hinzu:

# Use Tweeki as default skin
$wgDefaultSkin = 'tweeki';

# Show Tweeki's advanced features by default
$wgDefaultUserOptions['tweeki-advanced'] = 1;

# Use Bootstrap Tooltips
$wgTweekiSkinUseTooltips = true;

# Enable String Functions
$wgPFEnableStringFunctions = true;

# Enable Semantic MediaWiki
enableSemantics('YOURDOMAIN.TLD');
$smwgEnabledEditPageHelp = false;
$smwgLinksInValues = true;
$smwgPageSpecialProperties[] = '_CDAT';

# Settings for Page Forms
$wgPageFormsAutocompleteOnAllChars = true;

# Allow display titles for automatically created page names
$wgRestrictDisplayTitle = false;

# Encode section IDs with modern html5 style so Scrollspy works with special chars
# becomes obsolete with MW 1.37
$wgFragmentMode = [ 'html5', 'legacy' ];

# Use full screen width when no sidebar is shown
$wgTweekiSkinGridNone = [ 
  "mainoffset" => 0, 
  "mainwidth" => 12
];
php maintenance/install.php --dbname=DBNAME --dbuser=DBUSER --dbpass=DBPASS --scriptpath=/w --lang=en --pass=USERPASS "WIKINAME" "USERNAME"
php maintenance/update.php --skip-external-dependencies

Ersetze DBNAME, DBUSER und DBPASS mit den Datenbank-Zugangsdaten. WIKINAME ist der gewünschte Name für das Wiki. USERNAME/USERPASS sind die Zugangsdaten für den Administrator-Account, der automatisch angelegt wird, damit ein Anmelden nach der Installation möglich ist.

füge das folgende zu LocalSettings.php hinzu:

# Loading extensions
wfLoadExtension('ParserFunctions');
wfLoadExtension('PageForms');
wfLoadExtension('SemanticOrganization');
wfLoadExtension( 'SemanticResultFormats' );

# Make Wiki private
$wgGroupPermissions['*']['createaccount'] = false;
$wgGroupPermissions['*']['read'] = false;
$wgGroupPermissions['*']['edit'] = false;

# Use Tweeki as default skin
$wgDefaultSkin = 'tweeki';

# Show Tweeki's advanced features by default
$wgDefaultUserOptions['tweeki-advanced'] = 1;

# Use Bootstrap Tooltips
$wgTweekiSkinUseTooltips = true;

# Enable String Functions
$wgPFEnableStringFunctions = true;

# Enable Semantic MediaWiki
enableSemantics('YOURDOMAIN.TLD');
$smwgEnabledEditPageHelp = false;
$smwgLinksInValues = true;
$smwgPageSpecialProperties[] = '_CDAT';

# Settings for Page Forms
$wgPageFormsAutocompleteOnAllChars = true;

# Allow display titles for automatically created page names
$wgRestrictDisplayTitle = false;

# Encode section IDs with modern html5 style so Scrollspy works with special chars
# becomes obsolete with MW 1.37
$wgFragmentMode = [ 'html5', 'legacy' ];

# Use full screen width when no sidebar is shown
$wgTweekiSkinGridNone = [ 
  "mainoffset" => 0, 
  "mainwidth" => 12
];

Importiere die Semorg-Vorlagen

Importiere die Standard-Vorlagen, -Formulare und -Kategorien:

php maintenance/importDump.php < extensions/SemanticOrganization/import/semorg_pages.xml

Aufräumen nach dem Import:

php maintenance/rebuildrecentchanges.php
php maintenance/runJobs.php

Apache Setup

Damit Visual Editor in Formularen funktioniert, muss möglicherweise diese Zeile in der Definition des vhost hinzugefügt werden:

AllowEncodedSlashes NoDecode