Mediawiki happiness

Two good news from the Mediawiki battle front of a "grizzled Debian veteran" :-) Read the whole article if you are interested.

For the first time ever I experienced a smooth upgrade process of the mediawiki Debian package. In the past these upgrades have always been a major pain in the butt: Installing the latest and greatest package invariably broke the system! I have made the transitions from 1.5 to 1.7 to 1.10 to 1.12, and always there were major problems that had to be fixed before the wiki became operable again. Dreading the next disaster, today I attempted the latest switch from 1.12 to 1.15, but this time the jolt I got was from a really pleasant surprise: I installed the latest package version, performed the database upgrade and everything worked like a charm. My congratulations to Debian, it seems that the Mediawiki packaging effort has finally reached maturity!

The second good news is that I finally managed to get Cite.php to work. The problem I experienced with Cite.php has been reported here, together with the suggested solution: Install the latest version. I tried it and, against all hope, it worked. This means that the Debian package mediawiki-extensions in its current incarnation 1.6, which is dated from March 2009, does not include a properly working Cite.php. This time Debian doesn't look too good, but hey, let's be generous, after all the upgrade had a serious impact on my pleasure centre :-)

Here's the procedure how you can manually install a working version of Cite.php. It obviously will be clobbered when you upgrade mediawiki-extensions the next time, but by then the package will hopefully contain an up-to-date version of Cite.php.

  1. Download the latest version of Cite.php appropriate for the installed Mediawiki version from here
  2. Extract the tar ball, e.g. to /tmp/Cite
  3. As root on the Debian box, do the following:
    cd /usr/share/mediawiki-extensions
    mv Cite.php Cite.php.org  # make a backup copy, just in case :-)
    cp /tmp/Cite/Cite.i18n.php /tmp/Cite/Cite.php /tmp/Cite/Cite_body.php .
    
  4. Finally, if you have pages that already use references, go to each page and load it with the "&action=purge" argument (e.g. https://wiki.herzbube.ch/index.php?title=LearningEclipse&action=purge). This is necessary to tell Mediawiki that it should discard the cached copy of the page and to re-evaluate the page content using the new version of Cite.php.