Der Homunkulus spricht

Ich wollte weg von Wordpress als Blog-Software. Ich administriere die Installation selber und muss das entsprechend warten und aktuell halten. PHP muss natürlich auch noch aktuell gehalten werden, SSL-Biblitheken möchten auch, SQL, usw. In den Nachrichten auftauchende Sicherheitslücken zu Wordpress oder PHP verschlimmern meinen Eindruck dieses Konstruktes. Somit wollte ich etwas simples, auf statischen Dateien basierendes haben - am besten Javascriptfrei.


Gefunden habe ich, bzw. hat Sharky, Letterpress. Das erfordert zwar auch Python (3.3.2 auf dem Raspberry Pi, um genau zu sein), aber das muss noch nicht einmal auf dem Server laufen.

Letterpress verwendet Markdown für Formatierungsanweisungen von Text, für Bilder usw. Das schreibt sich fast wie natürlicher Text, halt entsprechend um z.B. Einklammerungen, Sternchen o. Ä. ergänzt. Geschrieben wird in jedem beliebigen Texteditor mit UTF8. Ein menschenlesbares, sprachenuniverselles und langlebiges Archivformat!

Das Pythonskript kann dauerhaft laufen. Dann wird das Eingabeverzeichnis stets auf Änderungen der Artikeldateien überwacht, diese werden durch das Skript in HTML-Dateien konvertiert und in ein Ausgabeverzeichnis abgelegt. Dabei werden auch Dateien für einen Artikelzugriff über Tags (Stichworte) und auch über Jahre/Monate (Archivfunktion) angelegt. Man kann das Skript aber auch punktuell starten um die Übersetzung Markdown->HTML vorzunehmen.

Dabei braucht das Skript freilich keine erhöhten Rechte, die HTML-Dateien kommen fast ohne Javascript aus. Das hübsche Design kommt aus dem CSS und wirkt sehr sauber, auch der Code der HTML-Dateien ist gut lesbar. Technisch gut.

Ich habe mir in meiner Installation die Teilen-Knöpfe unter den Artikeln ausgebaut, die kontaktieren auch nur ihre Mutterschiffe bei jedem Seitenaufruf und tracken halt. Das ging leicht weil der Seitenaufbau über Templates geregelt ist, Änderungen somit zentral seitenübergreifend eingepflegt werden können.

Das einzige was jetzt noch an Javascript bleibt ist eine Mathebibliothek von Mathjax.org. Die wird nur eingebunden wenn man in einem Artikel das Tag math verwendet, Formeln werden über Bilder dargestellt. Allerdings habe ich in Zeile 142 des Skriptes letterpress.py den Aufruf der Bibliothek von http nach https geändert:

<script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_HTMLorMML"></script>

Somit sind jetzt nur noch der Webserver und die SSL-Bibliotheken aktuell zu halten. Einfallslücken wie PHP und SQL sind nicht am Start. Und Backups sind auch einfach: Von den Artikeln her würde sogar der Quellordner mit Bildern zur Komplettsicherung reichen. Und egal ob man dieses System noch mal einsetzt oder zukünftig ein anderes, die Artikel sind als fast reiner Text auch ins neue System integrierbar.