Inhaltsverzeichnis
Was ist das hier
Diese Anleitung beschreibt die Konfiguration von MoinMoin unter Debian GNU/Linux.
Daten fuer die Faxe-Administration
uml |
wikis |
Daten-Verzeichnis |
/data/moin/ |
Konfig-Verzeichnis |
/data/moin/config/ (Debian-Standard ist /etc/moin/) |
Theme-Verzeichnis |
/data/moin/themes/ |
Begriffe und Variablen
Die Variablen muessen durch eintsprechende Eintraege ersetzt werden.
Variable |
Bedeutung |
Beispiel |
$WIKINAME.py |
Konfigurationsdatei fuer das Wiki |
howto.py |
$LOGO |
Dateiname des Logos |
howto_logo.png |
$WIKITITEL |
Titel des Wikis |
Das HowTo-Wiki |
$THEME |
Name des Themes |
modern |
$WIKIUSER |
Anmeldename im Wiki |
phil |
Start
in der /data/moin/config/WIKINAME.py können die moin-Parameter gesetzt werden (siehe HelpOnConfiguration)
- jeder Parameter beginng mit vier Leerzeichen
die http-auth-Einstellungen kannst du in der /data/moin/htaccess-conf.d/$WIKINAME.htaccess anpassen
Eigenes Theme verwenden
Am einfachsten ist es, wenn du ein bestehendes Theme veraenderst und an deine Beduerfnisse anpasst. Erstelle bspw. eine Kopie des "modern-Theme":
cp -r /usr/share/moin/htdocs/modern /usr/share/moin/htdocs/$THEME
Nun passt du die .css-Dateien in $THEME/css an. Die Datei common.css ist dabei am wichtigsten.
Damit das Theme auch auswaehlbar ist, brauchst du eine Theme-Konfig-Datei. Auch hier kannst du eine bestehende verwenden und anpassen:
cp /usr/lib/python2.3/site-packages/MoinMoin/theme/modern.py /usr/lib/python2.3/site-packages/MoinMoin/theme/$THEME.py
Schaue dir die Datei mit einem Editor an - es genuegt erstmal, den Namen des Themes zu veraendern (name = "modern" entsprechend ersetzen):
class Theme(ThemeBase): name = "$THEME"
Fertig. Nun kann das neue Theme ueber die Benutzereinstellungen in Moin ausgewaehlt werden. Um es zum Standard zu machen, bearbeite /data/moin/config/$WIKINAME.py und fuege folgende Zeile ein:
theme_default = '$THEME'
Hinweise fuer Faxe
in /usr/lib/python2.3/site-packages/MoinMoin/theme/ und /usr/share/moin/htdocs/ existieren jeweils nur Symlinks. Die eigentlichen Theme-Daten liegen unter /data/moin/themes/
Logo hinzufuegen
Das Wiki mit einem Logo (wie auf dieser Seite oben links) verschoenern:
Kopiere das Logo nach /usr/share/moin/htdocs (ggf. dort ein Verzeichnis images erstellen)
Fuege zu /data/moin/config/$WIKINAME.py folgende Zeile hinzu:
logo_string = u'<img src="/moin-base/$LOGO" alt="Logo"> $WIKITITEL'
html-header anpassen
Du kannst zum header der Wiki-Seiten mit dem String page_header1 beliebige Informationen hinzufuegen. Das folgendes Beispiel zeigt, wie du der Creative Commons Suchmaschine das Auffinden der Seiten zu ermoeglichst.
Bearbeite /data/moin/config/$WIKINAME.py und fuege folgende Zeile hinzu:
page_header1 = '''<!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <Work rdf:about=""> <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" /> <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" /> </Work> <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"> <permits rdf:resource="http://web.resource.org/cc/Reproduction" /> <permits rdf:resource="http://web.resource.org/cc/Distribution" /> <requires rdf:resource="http://web.resource.org/cc/Notice" /> <requires rdf:resource="http://web.resource.org/cc/Attribution" /> <permits rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> <requires rdf:resource="http://web.resource.org/cc/ShareAlike" /> </License> </rdf:RDF> --> '''
Fusszeile anpassen
Timings entfernen
Zu /data/moin/config/$WIKINAME.py folgende Zeile hinzufuegen:
show_timings = 0
Informationen hinzufuegen
Du kannst zur Fusszeile bspw. einen Hinweis auf die Creative Commons Lizenz hinzufuegen.
Bearbeite /data/moin/config/$WIKINAME.py und fuege folgende Zeile hinzu:
page_footer2 = '''<!-- Creative Commons License --> <br/> <div style="text-align:center"> <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/some$ <font size="1">This page is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License<$ </div> <!-- /Creative Commons License --> '''
Rechte für einzelne Seiten vergeben
Diese Seite beschreibt, wie du den Zugang zum ganzen Wiki beschränken bzw. regeln kannst.
Soll eine genaue Unterscheidung stattfinden, welche Menschen bestimmte Seiten betrachten oder bearbeiten können, kommt ACL zum Einsatz.
Um ACL zu aktivieren, muss folgende Zeile in /data/moin/config/$WIKINAE.py eingefügt werden:
acl_rights_before = "$WIKIUSER:admin,read,write,delete,revert"
Nun kann $WIKIUSER mit der ersten Zeile auf der jeweiligen Wikiseite Rechte vergeben. Im folgenden Beispiel darf $WIKIUSER die Seite betrachten und verändern, während andere Menschen die Seite lediglich betrachten können:
#acl $WIKIUSER:read,write All:read
Mehr Beispiele und die ausführliche Konfiguration befinden sich hier.
Spam-Schutz einrichten
Moin bietet momentan drei Möglichkeiten an, um das Zuspamen eines Wikis zu verhindern. Eine davon sind die TextChas - also eine Art textbasierte Captchas. Die Konfiguration erfolgt über die jeweilige config-Datei des Wikis. Diese importiert bei Bedarf den zu benutztenden Frage-Antwort-Katalog.
Bearbeite die Datei /data/moin/config/$WIKI.py und füge folgende Zeile ein:
from _textchas import *
Der Fragenkatalog kann in /data/moin/config/_textchas.py verändert werden.
Ab sofort erscheint oberhalb des Editor-Fensters eine der eingetragenen Fragen. Bei Verwendung des Standard-Themes (modern) umgibt die Frage ein roter Rahmen, so dass sie auffällt. Bei Verwendung eines anderen Themes ist das TextCha möglicherweise weniger auffällig gestaltet. Um das zu ändern, muss die jeweilige css-Datei /usr/share/moin/htdocs/$THEME/css/screen.css bearbeitet und um den folgenden Inhalt erweitert werden:
#textcha { font-size: 100%; margin-top: 0.5em; border: 2px solid #FF8888; color: black; vertical-align: middle; padding: 3px 2px; } #textcha-answer { border: 2px solid #000000; padding: 3px 2px; }
Superuser einrichten
SuperUser können einiges, u.a. auch Spam-Seiten so entfernen, dass sie nicht in der History erscheinen. Das Einrichten ist fix erledigt, einfach /data/moin/config/$WIKINAME.py bearbeiten und folgende Zeile hinzufügen:
superuser = [u"$USER1","$USER2" ]
Anschließend ist im Menü Weitere Aktionen auch die Option Spam entfernen verfügbar.
Probleme
Nutzereinstellungen koennen nicht gespeichert werden
Das Speichern schlaegt mit der Meldung, dass ein Nutzer mit diesen Namen bereits existiert, fehl.
Bei zugangsbeschraenkten Wikis (per http-auth), uebernimmt Moin automatisch den Benutzernamen des per http-auth eingeloggten Nutzers. Um dies zu verhindern, ist zu /data/moin/config/$WIKINAE.py folgende Zeile hinzuzufuegen:
auth_http_enabled = 0