#pragma section-numbers off This page explains how to quickly set up a MoinMoin wiki on one of your domains. [[TableOfContents]] = New wiki = We already have MoinMoin installed on our system. All you need to do is copy a few files over, make a {{{moin.cgi}}} file, and add some DomTool configuration. == Copying files == Here's what you need to do to copy the files over. We assume that '''$INSTANCE''' is where you'd like to store the wiki data, and '''$USER''' is your username. {{{ $ mkdir -p $INSTANCE $ cp -r /usr/share/moin/data $INSTANCE $ cp -r /usr/share/moin/underlay $INSTANCE $ cp /usr/share/moin/config/wikiconfig.py $INSTANCE $ fs setacl $INSTANCE $USER.daemon read $ fsr setacl $INSTANCE/data $USER.daemon write $ fsr setacl $INSTANCE/underlay $USER.daemon write }}} Thanks to jdrake for figuring this out. == Making a moin.cgi file == You can find an existing {{{moin.cgi}}} file at {{{/usr/share/moin/server/moin.cgi}}}. Copy it into the same directory as the other MoinMoin stuff. {{{ $ cp /usr/share/moin/htdocs/moin.cgi $INSTANCE }}} Then, you'll want to comment out the following line, by placing a "#" in front of it. {{{ sys.path.insert(0, '/etc/moin') }}} == Adding to your Domtool configuration == There are several ways to do this, depending on what URL you want to use to access your wiki. What you place on your "alias" line, we will call '''$HTDOCS''': people commonly use either {{{moin}}} or {{{wikidata}}} there. Here's an example of putting the wiki on a new subdomain called "wiki", with a typical page in the wiki looking like {{{http://wiki.DOMAIN.TLD/SomePage}}}. {{{ web "wiki" with alias "$HTDOCS" "/usr/share/moin/htdocs"; scriptAlias "/" (home "$INSTANCE/moin.cgi/"); end; }}} Here's an example of putting the wiki into an existing domain, under the path "/wiki". A typical page in the wiki will look like {{{http://www.DOMAIN.TLD/wiki/SomePage}}}. {{{ web "www" with (* Some other stuff ... *) alias "$HTDOCS" "/usr/share/moin/htdocs"; scriptAlias "/wiki" (home "$INSTANCE/moin.cgi"); end; }}} == Modifying wikiconfig.py == As the final step, you will want to edit {{{wikiconfig.py}}}, which resides in your '''$INSTANCE''' folder. Remember the directory that you called '''$HTDOCS''' from the previous section, and use it below. Change the line: {{{ url_prefix = '/wiki' }}} to: {{{ url_prefix = '$HTDOCS' }}} At this point, check out the rest of that file to set, for example, your site name. When done, tell {{{domtool}}} to update your configuration, and point a browser at your new wiki installation. = Migrating old MoinMoin wikis = Depending on the last version of MoinMoin you used, this could be tricky. The good news is that once you migrate your wiki instance to the version of MoinMoin that we have installed, migration should be a lot easier in the future. If you know what version of MoinMoin you used previously, then skip to the appropriate section. Otherwise read on, and we will try to help you figure it out. We will call your MoinMoin data directory '''$DATA'''. == Before MoinMoin 1.2 == Good luck. You'll have to download MoinMoin 1.2.4 yourself, upgrade to it first, and then remove MoinMoin 1.2.4 and proceed with the next sections. If you have hosted a MoinMoin on an old HCoop server, you almost certainly had a later version of MoinMoin than this. == MoinMoin 1.2 through 1.3.4 == If you want to know whether you have at least MoinMoin 1.3.4, check for the existence of the {{{$DATA/plugin/__init__.py}}} file. If you have it, skip this section. Otherwise, continue on. First, back up your data by making a copy of it. Then, change to the directory where the migration scripts are located: {{{ $ cd /usr/share/python-support/python-moinmoin/MoinMoin/script/old/migration/ }}} Then, consult {{{/usr/share/doc/moinmoin-common/README.Migration.gz}}}, and figure out which scripts you need to run. Unfortunately, you'll have to either know exactly which version of MoinMoin you were last using, or do some detective work by looking at the migration scripts themselves. To run an individual script (in this example, the 12_to_13_mig11.py script), do: {{{ $ ./12_to_13_mig11.py $DATA }}} This brings you up to MoinMoin 1.3.5. == MoinMoin 1.3.5 == If you have previously used an old HCoop server, this is most likely the version you last used. First, change to the directory where the migration scripts are located: {{{ $ cd /usr/share/python-support/python-moinmoin/MoinMoin/script/old/migration/ }}} Then, run just this one migration script: {{{ $ ./152_to_1050300.py $DATA }}} This brings you up to MoinMoin 1.5.3. == MoinMoin 1.5.3 or later == You have it easy. Just run the following, from any directory. '''$CONFIGDIR''' is the full path to the directory that has your {{{wikidata.py}}} file, without any "~" characters. We will call your Wiki URL (example: {{{wiki.DOMAIN.TLD/}}}) '''$WIKIURL'''. {{{ $ /usr/share/doc/moinmoin-common/examples/moin --config-dir=$CONFIGDIR --wiki-url=$WIKIURL migration data }}}