What is this
This is a new version of MoinMoin (at the moment of writing this page, this is Release 1.12.2). It compiles and run on recent GNU/Linux distributions included DEVUAN GNU/Linux, uses Python 3 and also understand markdown language automagically.
You can find it here: https://github.com/asbestomolesto/moinmoin-py3-md along with debian and other distro's packages.
This is basically the classic MoinMoin 1.9 wiki engine, ported to Python 3 and packaged for current GNU/Linux distributions. It can also hold pages written in Markdown, next to the pages written in MoinMoin wiki syntax.
Based on MoinMoin 1.9.11, the last release of the 1.9 series, which runs only on Python 2.
Runs on Python 3.9 or newer (tested with 3.11, 3.12 and 3.13).
Existing 1.9 wikis work without converting their data.
Markdown and MoinMoin wiki pages can be mixed in one wiki. The markup of each page is recognized from its text.
Packages: .deb (Devuan, Debian, Ubuntu), .rpm (Fedora), Python wheel.
Important: does not use systemd. A sysvinit init script is included, and the wiki also runs inside Apache, nginx with uWSGI, gunicorn, or as CGI, FastCGI or SCGI.
This project is not MoinMoin 2.0 (moinwiki/moin), which is a rewrite with a different data format. moinmoin-py3-md keeps the 1.9 code, data format, themes and plugin interface.
Why this project: a note from the "author"
I maintain a historical wiki that has been online since the early 2000s, with a lot of pages and users.
I tried to port it to the new MoinMoin 2.x and it was kind of a disaster: porting the pages was problematic, and I didn't like the new version at all.
The strength of MoinMoin 1.9.x was that the whole system was very, very fast, simple and very reliable, and, most important, everything in the wiki is a simple text file.
This is a plus, because it is simple to maintain: pages are easy to edit, move or check on a Unix filesystem with basic tools (grep, sed, awk, plain text editors, ...).
The user files are easy to maintain too, because they are text files as well.
MoinMoin 2.x does the opposite.
Pages and files are no longer kept as text files named after the page: each revision is stored as a JSON metadata record and a data blob, both under random UUID keys, either as files in the default "fs" store or inside an SQLite or SQL (SQLAlchemy) database. The wiki also needs a Whoosh search index and an SQLite database for edit locking.
For an old UNIX sysadmin like me, used to simple things, this is a NIGHTMARE.
The themes are also very different from the original 1.9.x ones, which were so practical and simple to use, and which users were used to: a change in the user interface is never welcome when people have been using one for years!
Hence the decision to port MoinMoin 1.9.x to Python 3: to have a working, installable MoinMoin 1.x, and to keep maintaining old wikis that have been online since around 2000.
I also decided to add Markdown support, so this version of MoinMoin can be used with Markdown too, which is a plus: with the old, well-known visual interface, and the old way of storing things as simple text files instead of complicated and obscure databases and file formats, for no reason at all.
About me
I do not have particular skills in Python. I was a programmer back in the '80, '90, 2000, highly skilled in many languages including various Assembly for different CPU's, C, Fortran, COBOL, QuickBasic, Prolog and other stuff. So I can read and understand code that isn't my bread and butter, so to speak.
I made this project with Claude (Anthropic AI): the Python 3 port, the Markdown support, the security fixes and the packages were written by Claude, with me directing the work and testing the results.
This means that I may not be able to understand or fix issues and security problems by myself. I will do my best, using AI to help me.
For these reasons, anyone more skilled than me is welcome to fork this project and maintain it.
- - Asbesto
About
The following pages are about the development of MoinMoin:
MoinMoinTranslation - discussion about translating MoinMoin
MoinMoinBugs - bugs in the software (see also the bug tracker on SourceForge)
MoinMoinDiscussion - discussion about new features
MoinMoinIdeas - you are encouraged to add wishes and ideas to this page
MoinMoinMailingLists - discussion about MoinMoin via email
MoinMoinWinCvs - instructions on using WinCVS to obtain the latest source of MoinMoin
HelpForDevelopers - the rules that govern MoinMoin development
These pages provide information about using and installing MoinMoin:
HelpContents - The main page of the help system
HelpMiscellaneous/FrequentlyAskedQuestions - Frequently Asked Questions
MoinMoinMailingLists - discussion about MoinMoin via email
MoinMoinWikis - list of wiki sites using MoinMoin
/InstallDocs - all the help pages about installation rolled into one
/InstallationsAnleitung - installation docs in German
Other pages about MoinMoin:
External links:
Connect to IRC for meeting the author and other MoinMoin users and developers:
channel #moin on server irc.openprojects.net
see also OPN Home and esp. OPN IRC Servers for more information
