MediaWiki

I use MediaWiki for a few of my wiki web sites. I also work for the Wikimedia Foundation.[1] I really like working on MediaWiki code, and contributing to extensions. It's good software (sometimes annoying, but that's hardly unusual in software; at least with open source code, one can help to improve things).

I've experimented with moving to installation from Ubuntu package, but mostly stick to running from a Git clone (including for extensions). I think that it would be wonderful to be able to manage extension retrieval and updating with Composer, but that's not a widely-held view. For some sorts of development, I also run it in Docker (for testing against other PHP versions, or old MediaWiki extensions such as WeRelate).

Tool: mediawiki-feeds

A tool to get RSS and iCalendar feeds of pages in categories. See https://github.com/samwilson/mediawiki-feeds for more.

Tool: MediaWiki_Backup

A Bash script for backing up a (non-farm) MediaWiki installation. It produces backups, and also dump files suitable for uploading public wikis to the Internet Archive (to match WikiTeam archiving practices). See https://github.com/samwilson/MediaWiki_Backup for more.

Actually, it's often easier to use the following to get the XML dump:

php /var/www/mediawiki/maintenance/dumpBackup.php \
  --full \
  --quiet \
  --wiki wiki_ident \
  --server https://example.org \
  --output=gzip:$BACKUPDIR/wiki-pages.xml.gz

and this to get all images (but excluding any other directories in the images/ directory):

cd /var/www/mediawiki/images
tar zcvhf $BACKUPDIR/wiki-images.tgz ?

Skin: SimpleText

A overly-simple skin for MediaWiki, in use on my personal wikis. See SimpleText MediaWiki skin.

Extension: Genealogy

I maintain the Genealogy extension. It's the simplest thing I could come up with that gets around the redundant links between biographies on a family tree wiki. I'm using it on ArchivesWiki and there's a demo wiki on Toolforge.

Migrating to MediaWiki

Missing or required features:

  • Bulk category changes (based on category membership, search results, galleries, etc.)
  • Track 404 errors (and create redirects) ✔️ done at https://misc.samwilson.id.au/2017/404s
  • Export PDFs of single pages
  • Create PDF photo albums of category contents
  • Mass change of template parameters (names or values)
  • Wiki-to-wiki copy (wwcp)
  • RSS feeds ✔️ done in #mediawiki-feeds
  • iCalendar feeds
  • System to manage geolocation

From Piwigo:

  1. Export all original-resolution files to MediaWiki-compatible names
  2. Export their metadata to wikitext files using the {{photo}} template
  3. Upload all files with mw:Manual:importTextFiles.php

From WordPress:

  1. Export all posts to Markdown with the Jekyll exporter
  2. Use Pandoc to convert to wikitext
  3. Upload all files with mw:Manual:importTextFiles.php

From Flickr:

  • Special:FlickrImport that will import sets, groups, or lists of photo IDs or URLs.