Qumana

By | 2 Feb 2009

Homepage: qumana.com

Qumana is a nice blog editor for Windows and Mac. But it is written in Java and thus should run on any platform.

Running under Linux

Download the Mac-Version (.zip) and unpack it. You’ll find a directory Qumana.app which contains a directory Contents which contains a directory Resources which contains a directory Java. There you’ll find a Qumana.jar and some more libraries and configuration files.

Copy everything to /opt/qumana.

Starting it with

java -jar Qumana.jar

shows the splash screen and the blog-manager, where you can add your blog without problems. It even shows the last posts of your blog. But you’ll crash it when trying to edit a posting or start a new one: The console shows several stack traces.

The thing is: The problem doesn’t really lie in Qumana but more in the GtkLookAndFeel. This seems to request various properties from the system which then flood the HashTable which is causing a StackOverflow. So you need to switch it to e.g. the MetalLookAndFeel.

Usually you can force a Java application to a specific LAF by specifing -Dswing.laf=com.sun.java.swing.plaf.metal.MetalLookAndFeel as a parameter (might also be swing.defaultlaf or swing.systemlaf). This didn’t work as Qumana queries all available LAFs itself and tries to make an intelligent decision. So the new task: How to get rid of the GtkLookAndFeel?

After some Google’ing, I found this thread in the java.net-forums where Scott Violet writes:

As you have found, we only return GTK as the system look and feel if you’re running under GNOME. There’s an environment variable we look for that controls this.

So which variable might the JRE look for? After looking at the output of env, it was obvious. The only variable pointing to Gnome was GNOME_DESKTOP_SESSION_ID. So try the following:

env -u GNOME_DESKTOP_SESSION_ID java -jar Qumana.jar

Now Qumana starts in the MetalLookAndFeel and you can post new entries as well as edit old ones.

To specify another LAF, use the following:

env -u GNOME_DESKTOP_SESSION_ID java -Dswing.systemlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel -jar /opt/qumana/Qumana.jar

But be warned that the NimbusLAF has display errors with Qumana.

Leave a Reply