WP-PhotoNav Release 0.7

Today, I released version 0.7 of my WP-PhotoNav WordPress plugin. This version includes two new features that have been wished by users:

  • Support for Colorbox (similar to LightBox) via the new popup option.
  • Support for automatic scrolling via the animate option.

If you are yourself a WordPress user and interested in my plugin, visit the plugin homepage on this website to see all features in action or the download page at WordPress.org. If you are interested in what other improvements I’m planning, you can always look it up on the roadmap.

WordPress Multi-Network with Nginx

Today I found out the hard way, how an nginx web-server has to be configured to properly work together with the WP Multi Network plugin.

The problem was, that for some reason and on some machines, WordPress showed always only one blog (not the same on all machines) and ignored the domain entered into the browser. Now it is exactly the purpose of the multi-network plugin to resolve different domains to different blogs (hopefully in a reproducible manner).

It turned out, that the problem was in the nginx configuration that looked like that:

server {
    server_name  _ .fabianmoser.at .nataschastanke.eu;
    #...
}

thus catching both domain names registered for my server.

After some twiddling with the nginx log format to inspect where the http header got lost, I found the following solution:

server {
    server_name  .fabianmoser.at;
    #...
}
server {
    server_name  .nataschastanke.eu;
    #...
}

thus effectively duplicating the virtual server section and giving just one server name each time.

Now everything works fine as you can easily verify yourself.

Pitigliano

Ein kleiner Ausflug während meines Sommerurlaubs führte mich in eine der ältesten Städte Italiens.

Inkscape Standardvorlage

Gestern war ich wieder einmal in der Situation, dass ich eine per Hand gezeichnete Skizze in einem Dokument verwenden wollte. In solchen Faellen ist Vektorgrafik Software Inkscape für mich die erste Wahl. In Inkscape angefertigte Zeichnungen lassen lassen sich ganz natürlich im EPS Format exportieren, das wiederum erste Wahl für Grafiken in LaTeX Dokumenten ist. Bei Bedarf lassen sich EPS Dateien auch unkompliziert in PDF umwandeln und mit pdfLaTeX verwenden.

Nun muss ich jedes Mal, wenn ich eine neue Zeichnung mit Inkscape beginnen wollte, zuerst eine Reihe von Dokumenteneinstellungen ändern, weil eine A4 Seite im Hochformat und mit Pixel Angaben auf den Linealen nicht das ist, was ich brauche. Stattdessen verwende ich immer A6 im Querformat mit Millimeter Angaben und einem 1mm Gitter. Die Vermutung, dass sich die Standardeinstellungen ändern lassen, bestätigte sich anhand eines Treffers in den Inkscape FAQ.

Um es kurz zu machen: Man muss ein leeres Dokument nach den eigenen Vorstellungen erstellen und es als

~/.config/inkscape/templates/default.de.svg

speichern, wenn man, wie ich, Deutsch als Systemsprache verwendet.

DKIM DNS Einstellungen im SERVER4YOU Powerpanel

Heute habe ich meinen Mailserver um ein neues Feature erweitert: die Unterstützung von DomainKeys Identified Mail, einem Verfahren, das helfen soll, Absender Adressen von E-Mails zu verifizieren. Es ist damit ein effektives Werkzeug im Kampf gegen Spam E-Mails

Der versendende Server signiert alle Mails die er versendet vor der Übertragung. Spam Versender haben keinen Zugriff auf den privaten Schlüssel des Servers in dessen Namen sie versenden und können daher keine gültige Signatur bereitstellen. Der empfangende Server kann sich aus einem speziellen DNS Eintrag der Absender-Domain den zur im Absender angegebenen Domain gehörenden öffentlichen Schlüssel holen und damit die Signatur der empfangenen E-Mail überprüfen.

Bei der Einrichtung habe ich mich größtenteils an eine Anleitung von R. I. Pienaar gehalten. Nur bei den DNS Einträgen hatte ich vorübergehend Schwierigkeiten. Im Unterschied zu der Anleitung, habe ich keinen direkten Zugriff auf die Bind Konfigurationsdatei. Stattdessen muss ich die Administrationsoberfläche meines Hosting Providers SERVER4YOU verwenden. Anstatt umständlich das Format der notwendigen Einträge in der Domainverwaltung zu beschreiben, ist hier ein Screenshot von meinen korrekten, funktionierenden Einstellungen:

DNS Einstellungen für DKIM

Man beachte, dass in der oberen Zeile kein v= Eintrag vorkommt und dass ich weder Anführungszeichen noch Backslashes verwende.

Embed PDFs from Zotero

I’m using Zotero to organise my bibliography. Not only do I store citation information, but I also love the possibility to let it organise the corresponding PDF files. That way I have full-text search and a superb tagging facility for almost everything I read and might need to use and cite later. As a Fedora user, I didn’t have Firefox configured to embed all kind of media into the browser by default. In general I perceive this as an advantage, but in my use-case I have Firefox with Zotero running in full-screen on a separate workspace and want it to manage the screen entirely. And since Evince is the default PDF viewer on Gnome at the moment, I would like it to be embedded into Firefox tabs as I open PDFs from Zotero.

As quick search for the topic brought me to an article in the Ubuntu Forums which solved 90% of the problem. Installing Mozplugger

yum install mozplugger

and raising the priority of Evince as its PDF handler made most of the PDFs open embedded just as intended. However, Zotero seems to assign an unusual MIME type for the PDFs it stores that is “application/octetstream”. Thus to fit my needs, I added that type to the Mozplugger PDF handler

sudo vim /etc/mozpluggerrc

which now reads as

application/pdf:pdf:PDF file
application/x-pdf:pdf:PDF file
text/pdf:pdf:PDF file
text/x-pdf:pdf:PDF file
application/octetstream:pdf:PDF file
        repeat noisy swallow(evince) fill: evince "$file"
#       ACROREAD()
#       repeat noisy swallow(kpdf) fill: kpdf "$file"
#       repeat noisy swallow(Xpdf) fill: xpdf -g +9000+9000 "$file"
#       repeat noisy swallow(okular) fill: okular "$file"
#       GV()
#       repeat noisy fill exits: evince "$file"

“Ersetztteil”



"Ersetztteil", originally uploaded by fabiamo.

Das erste und bisher einzige Teil, das an unserem Auto ersetzt werden musste. Wie man am Foto erkennen kann, hat nur das Abblendlicht den Geist aufgegeben.

Zim

Wie eventuell aus dem Countdown zur Veröffentlichung von Fedora 13 im rechten Rand zu schließen war, ist momentan Linux das Desktop und Laptop Betriebssystem meiner Wahl. Ohne weiter ausholen zu wollen, möchte ich nur anmerken, dass diese Wahl nicht aus ideologischen sondern aus technischen Überlegungen resultiert. Die Hardwareanforderungen aktueller Windows Versionen haben sich zu weit von den mir zur Verfügung stehenden Tatsachen entfernt als dass ein vernünftiger Betrieb möglich wäre. Andererseits ist eine Weiterverwendung veralteter Windows Versionen mit zu vielen, nicht zuletzt sicherheitstechnischen, Nachteilen verbunden.

Die eigentliche Herausforderung, wenn man Windows gänzlich den Rücken kehren möchte, besteht kaum mehr in Inkompatibilitäten wie es scheint, sondern vor allem im Bruch mit Gewohntem. Damit meine ich nicht das Betriebssystem, denn damit hat man als Benutzer kaum Kontakt, sondern die Anwendungen. Ich kann mir gut vorstellen, dass in manchen Bereichen für Linux keine adäquaten Entsprechungen für tausende Euro teure kommerzielle Software zu finden ist. Dennoch möchte ein Beispiel für (m)einen Fall bringen, wo eine Anwendung trotz kleinerem Funktionsumfang eine andere ersetzen kann.

Zim

Eine meiner Lieblingsanwendungen unter Windows ist OneNote. Als Notiz- und Logbuch hat sich dieses Programm als sehr nützlich erwiesen. Die Hauptvorteile gegenüber einem Papierblock sind für mich die Suchfunktion, der Umgang mit Markierungen (Schlagworten) und nicht zuletzt die Möglichkeit, schnell und einfach Bildschirmausschnitte in den Text einzufügen. Da ich beinahe sämtliche Information über den Bildschirm verarbeite, ist das Speichern von Bildschirmausschnitten das allgemeinste Interface. Als Naturwissenschaftler verwende ich diese Technik sehr oft, um Diagramme, die von einem beliebigen Programm erzeugt wurden, in das elektronische Notizbuch zu “kleben”.

Jene Linux Anwendung, die OneNote im Funktionsumfang am nächsten kommt ist vermutlich BasKet. Trotzdem schreibe ich diesen Artikel, weil ich für mich Zim als geeignetste Anwendung befunden habe. Zim wird vom Autor als “Desktop Wiki” bezeichnet. Was die Textverarbeitung betrifft, wird damit das meiste bereits erklärt. Wer jemals einen Wiki Artikel geschrieben hat, kennt das Prinzip.

Was Zim für mich aber perfekt macht, denn es ist beileibe nicht das einzige Desktop Wiki, sind drei Plugins, die folgende Funktionen zur grundlegenden Wiki Funktionalität hinzufügen:

  • Es ist möglich Schnappschüsse vom ganzen Bildschirm, einzelnen Fenstern und frei wählbaren Ausschnitten zu machen.
  • Es ist möglich, Formeln einzufügen, die man in einem separaten Dialog per LaTeX Syntax formulieren kann.
  • Eine Versionsverwaltung kann verwendet werden, um Änderungen an den Notizen zu verfolgen.

Zur absoluten Perfektion fehlen meiner Meinung nach nur zwei Features:

  • Schlagworte (Tags) – ein für die Zukunft geplantes Feature
  • Versionsverwaltung mit Git (statt Bazaar oder Subversion) – Gewohnheit

Zim in Fedora

Leider enthält Fedora, selbst in der noch nicht freigegebenen Version 13, nicht die aktuelle Version von Zim. Man findet aber in Bugzilla den Bug 563844, der neben einer aufschlussreichen Diskussion auch einen Link auf eine aktuelle SRPM enthält. Wie man daraus eine installierbare RPM baut erfährt man (neben sicherlich unzähligen anderen Stellen) im Fedora Wiki.

Virtuelle Übersiedlung

Die vergangene Woche hat ein paar virtuelle Neuerungen gebracht. Ich habe meinen privaten Server auf eine neue Hardware umgezogen. Tatsächlich geht es zwar genau genommen um virtualisierte Hardware, aber mit dem Umzug haben sich die diversen Ressourcenlimitierungen nach oben verschoben, sprich mehr Speicher und mehr Leistung.

Redmine

Der Grund für die doch etwas aufwendige Aktion war ein mehr oder weniger fehlgeschlagener Versuch, die das Projektmanagement-Tool Redmine als Ersatz für das bisher eingesetzte Trac auszuprobieren. Leider stieß mein alter Server dabei an seine Grenzen und verweigerte für kurze Zeit sogar die Annahme von E-Mails.

Weil ich einen Umstieg schon seit einem Jahr immer wieder überlegte, nahm ich die Situation zum Anlass um mit meinem Provider die Optionen zu besprechen. Mir wurde ein Upgrade angeboten, das sich heute leider als ungültig erwiesen hat. Letztendlich ist der einzige Unterschied eine Monatsmiete, weil ich beide Verträge nur mit einmonatiger Bindung abgeschlossen habe.

Den für Redmine notwendigen Ruby Stack habe ich aus den aktuellen Quellen selbst kompiliert, weil die Versionen in den CentOS Repositories für diese junge Software stark veraltet sind. Ruby stellt mit den gut unterstützen Gems eine gute eigene Paketverwaltung bereit.

CentOS

Weil ich auf meinem Laptop seit einiger Zeit auf die Linux Distribution Fedora setze, habe ich meine Distributionswahl am Server überdacht und statt Debian auf das Fedora-ähnliche aber auf den Servereinsatz aufgelegte CentOS gesetzt. Vom Geist der Revolution beflügelt, habe ich mich auch gleich versuchsweise von Apache als Webserver verabschiedet und auf Nginx umgestellt. Die gerade angezeigte WordPress wird entsprechend von PHP-FPM ausgeführt.

Für die Mailserver Infrastruktur verlasse ich mich weiterhin auf das bewährte Gespann von Dovecot und Exim. Weil mein Server meine zentrale Sammelstelle für alle E-Mail Konten ist (per Fetchmail), wollte ich hier nichts riskieren und sah auch wirklich keinen einzigen Grund für eine Veränderung.

VCS

Meine alten Subversion Repositories habe ich natürlich unverändert kopiert. Daneben habe ich mit Hilfe von Gitosis eine für meine Zwecke perfekte Git Verwahltung eingerichtet, die (wie svn+ssh) unter einem einzelnen Systemaccount und einer Sammlung von autorisierten öffentlichen Schlüsseln beliebig viele Git Repositories mit getrennt einstellbaren Zugriffsrechten zur Verfügung stellt. Nebenbei war die Unterstützung von Git und Subversion einer der Mitgründe für den Umstieg von Trac auf Redmine.

Fertig

Also genug Fachjargon. Fazit: Ich habe einige glückliche Stunden mit meiner virtuellen “Immobilie” verbracht. Nur damit die Änderungen nach außen hin nicht völlig unbemerkt bleiben habe ich auch gleich das WordPress Motiv geändert.

Samstagsausflug nach Lyon

Letzten Samstag war ich zum ersten Mal in Lyon. Zum Glück wurde ich von zwei Lyon-Kennern, Natascha und Dory, geführt:

Lyon - Pont de la Guillotière

Lyon - Place Bellecour

Lyon - Rhône Promenade