In some random event, I decided to try out a wiki engine: MoinMoin. Written in Python, it’s much different compared to MediaWiki which is another wiki engine I ever tried. It doesn’t even require a database – everything is in flat file.
Locking mechanism seems to be done carefully and certainly not designed to be done concurrently though I can’t imagine how non-wyswyg editor could be used concurrently. Additionally, configuration is done by editing a versioned (in hg) file: something I really don’t want to do. ACL is done partially in the config file (defining what group can do what) and in freaking wiki pages (<something>Group
). Sure is quite unique but I don’t think I can come to like it mainly because it’s incomplete – part in wiki, part in config file. Simply feels wrong to me.
And then few minutes later came up another problem: apparently I’m missing language pack. Googled around and found out that checking out from source repository requires manual download of “packages”. Not a big problem, I guess, until I encountered this:
-bash-4.1$ make pagepacks
"Makefile", line 6: Need an operator
Fatal errors encountered -- cannot continue
Whoopsie, seems like some people think it’s funny requiring a GNU Make for this kind of thing. Not a big problem since this is usual thing when you’re running non-GNU system and everyone else in the world assuming Open Source == GNU
. Installed gmake
and I got this instead:
-bash-4.1$ gmake pagepacks
...crapload of output...
cp -a ./tests/wiki/underlay ./wiki/
cp: unknown option -- a
usage: cp [-fip] [-R [-H | -L | -P]] source target
cp [-fip] [-R [-H | -L | -P]] source ... directory
gmake: *** [pagepacks] Error 1
Yeah, not only it requires gmake
, it also requires certain cp
version which supports -a
parameter – something OpenBSD doesn’t have. It’s not defined in POSIX either.
And so that concluded my test with MoinMoin today. I guess I should check their bug reports or at least the development version but apparently I’m too lazy to do that.
On to next wiki (one day)…
Or perhaps I’ll retry this.