1. Background
We are currently using moinmoin version 1.9 for this wiki. Version 1.9 requires Python 2.7 which is no longer developed by Python upstream, and will not be available in future Debian releases. Moinmoin 2 solves that and had many other improvements, but it is still in development.
2. Features
2.1. Current
- Not tied to HCoop accounts, and anyone can create an account
TextCHA for spam prevention
- Domtool/installer help for member's own installations
- Filesystem storage
2.2. Desired
- Current content can be migrated
- Actively developed
- Ability to use hcoop account to reduce need for additional login/account
2.3. Options
See also Wikipedia's wiki comparison
2.3.1. Gitit
- Implemented in Haskell
- Darcs, Git, or Mercurial storage
Syntax: Markdown (pandoc), reST, LaTeX, HTML, DocBook, or Org-mode. https://github.com/jgm/gitit/tree/master/data
2.3.2. Gollum
- Implemented in Ruby
- Git storage
Syntax: Markdown, RDoc, or others through plugins: https://github.com/gollum/gollum#markups
2.3.3. ikiwiki
- Implemented in Perl
- Git or SVN storage
Syntax: Markdown https://ikiwiki.info/ikiwiki/formatting/
2.3.4. MediaWiki
- Implemented in PHP
- Database storage
Syntax: MediaWiki https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Formatting
2.3.5. Moinmoin under Tauthon
Tauthon is a fork of Python 2 that is actively developed. It maintains backwards compatibility with Python 2 while adding language features from Python 3 in a backwards compatible way. We could run moinmoin 1.9 with Tauthon. It is currently not packaged for Debian.
Syntax: https://wiki.hcoop.net/HelpOnMoinWikiSyntax
2.3.6. OddMuse
- Implemented in Perl
- File storage
Many extension modules available; notably used for EmacsWiki
Syntax: Creole or Markdown, customizable: https://oddmuse.org/wiki/Markup
2.3.7. Phriction
- Implemented in PHP
- Appears to support File Storage, but default is Database backed
Integrates with Phabricator for task tracking (used by Wikimedia & Purism)
Not actively maintained, since 2021-06-01
Syntax: Remarkup https://secure.phabricator.com/book/phabricator/article/remarkup/
2.3.8. SourceHut
- Implemented in Python
- Git (or Mercurial?) storage
- Also has an issue tracker, mailing list, repository hosting (git/hg), and CI — in a modular design; parts can be mixed/matched.
- Philosophically aligned (Software Freedom values)
- Editing exclusively through version control (PRs via email patches or from forked repos).
- Syntax: Markdown
2.3.9. Trac
- Implemented in Python
- Database storage
- Also has an issue tracker
Syntax: Wiki markup https://trac.edgewall.org/wiki/WikiFormatting
See also Apache Bloodhound
2.3.10. XWiki
- Implemented in Java
- Database storage
Syntax: XWiki https://www.xwiki.org/xwiki/bin/view/Documentation/UserGuide/Features/XWikiSyntax/
2.3.11. DokuWiki
- Implemented in PHP 7 and jQuery 3
- Packeged in current Debian
- Lastest release 07/2020
- Flat-file storage in file system
- ACLs, full text search, plug-ins, templates
- MediaWiki/PHPwiki syntax
2.3.12. Mycorrhiza
- Implemented in Go
- Git and flat-file storage
Only supports its own markup language: https://mycorrhiza.wiki/help/en/mycomarkup
wiki-wide roles: https://mycorrhiza.wiki/hypha/authorization