damien.h

Running Lotus Notes 8 on Ubuntu Feisty

My struggle of getting Lotus Notes 8 to run on Ubuntu Feisty has finally come to an almost perfect end. I feel awfully guilty if I don’t blog it and share with you.

My journey started with installing Notes, of course. This part of the story has already been covered very well by other folks. I recommend this particular post to follow.

It’s the running Notes part that’s really frustrating. It actually stuck me for weeks. First, whenever I start Notes, the splash will freeze at some point and a ridiculous jvm crash dialog will show, whose height well exceeds my screen’s and I can’t even see the whole message.

After numerous failure and with despair, I started into a failsafe gnome session and…man! It runs in failsafe gnome! That could be a close enough workaround, but I can’t live with failsafe all my life. So here’s the way that finally got Notes to run happily without failsafe.

  1. Start Notes with regular gnome. When the jvm crash dialog shows, select all the text and copy it to a new text file.
  2. Remove the first line, which should be like “JVM terminated. Exit code=160”.
  3. Remove all the carriage returns in the remaining messages. This is actually the startup script to run Notes.
  4. Add these lines at the top of the script.
    export MOZILLA_FIVE_HOME=/usr/lib/xulrunner-1.8.0.1-lwp
    export LD_LIBRARY_PATH=/opt/ibm/lotus/notes:$MOZILLA_FIVE_HOME
  5. If you don’t have a /usr/lib/xulrunner-1.8.0.1-lw directory, you can either install a xulrunner package, or if you have Firefox, use this instead.
    export MOZILLA_FIVE_HOME=/usr/lib/firefox
  6. Then you need to find this line
    /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.j2se.linux.x86_1.5.0.SR4-200707311521/jre/bin/notes2w

    And add this line next to it.
    -Dswt.library.path=$LD_LIBRARY_PATH
  7. Finally, save the file as “notes.sh”. To run Notes, simply run the sh file.

Below is the script I use to start Notes. To use it for your own, replace all occurrences of “houyr” with your own account name and it probably will work.

export MOZILLA_FIVE_HOME=/usr/lib/xulrunner-1.8.0.1-lwp
#export MOZILLA_FIVE_HOME=/usr/lib/firefox
export LD_LIBRARY_PATH=/opt/ibm/lotus/notes:$MOZILLA_FIVE_HOME
/opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.j2se.linux.x86_1.5.0.SR4-200707311521/jre/bin/notes2w -Dswt.library.path=$LD_LIBRARY_PATH -Xmx512m -Xquickstart -Xjit:noResumableTrapHandler -Dosgi.framework.extensions=com.ibm.rcp.core.logger.frameworkhook,com.ibm.cds -Xscmx64m -Xshareclasses:name=xpdplat%g,groupAccess,keep,nonfatal -Drcp.home=/opt/ibm/lotus/notes/framework -Drcp.data=/home/houyr/lotus/notes/data/workspace -Dosgi.splashPath=platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl1,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl2,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl3 -Dcom.ibm.rcp.install.id=1189233555789 -Drcp.install.config=multiuser -Declipse.registry.nulltoken=true -Dautopd.logfile.generations=3 -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeAwareParserConfiguration -Dautopd.instance.area=/home/houyr/lotus/notes/data/workspace/autopd/ -Disa.ignoreESR=true -Djava.util.logging.config.class=com.ibm.rcp.core.internal.logger.boot.LoggerConfig -Dcom.ibm.pvc.webcontainer.port=0 -Disa.ignorePortableCollector=true -Disa.ignoreFeedback=true -Disa.ignoreUpdate=true -Dderby.stream.error.file=/home/houyr/lotus/notes/data/workspace/logs/derby.log -Djava.security.properties=file:/opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/rcp.security.properties -Djava.protocol.handler.pkgs=com.ibm.net.ssl.www.protocol -Dosgi.hook.configurators.exclude=org.eclipse.core.runtime.internal.adaptor.EclipseLogHook -Drcp.osgi.install.area=/opt/ibm/lotus/notes/framework/eclipse -Xbootclasspath/a:/opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/rcpbootcp.jar -jar /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/launcher.jar -os linux -ws gtk -arch x86 -launcher /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/linux/x86/eclipse -name IBM Lotus Notes -showsplash 600 -exitdata 35801c -nl en_US -dir ltr -personality com.ibm.rcp.platform.personality -product com.ibm.notes.branding.notes -data /home/houyr/lotus/notes/data/workspace -configuration /home/houyr/lotus/notes/data/workspace/.config -plugincustomization /opt/ibm/lotus/notes/framework/rcp/plugin_customization.ini -vm /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.j2se.linux.x86_1.5.0.SR4-200707311521/jre/bin/notes2w -vmargs -Xmx512m -Xquickstart -Xjit:noResumableTrapHandler -Dosgi.framework.extensions=com.ibm.rcp.core.logger.frameworkhook,com.ibm.cds -Xscmx64m -Xshareclasses:name=xpdplat%g,groupAccess,keep,nonfatal -Drcp.home=/opt/ibm/lotus/notes/framework -Drcp.data=/home/houyr/lotus/notes/data/workspace -Dosgi.splashPath=platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl1,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl2,platform:/base/../shared/eclipse/plugins/com.ibm.notes.branding.nl3 -Dcom.ibm.rcp.install.id=1189233555789 -Drcp.install.config=multiuser -Declipse.registry.nulltoken=true -Dautopd.logfile.generations=3 -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeAwareParserConfiguration -Dautopd.instance.area=/home/houyr/lotus/notes/data/workspace/autopd/ -Disa.ignoreESR=true -Djava.util.logging.config.class=com.ibm.rcp.core.internal.logger.boot.LoggerConfig -Dcom.ibm.pvc.webcontainer.port=0 -Disa.ignorePortableCollector=true -Disa.ignoreFeedback=true -Disa.ignoreUpdate=true -Dderby.stream.error.file=/home/houyr/lotus/notes/data/workspace/logs/derby.log -Djava.security.properties=file:/opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/rcp.security.properties -Djava.protocol.handler.pkgs=com.ibm.net.ssl.www.protocol -Dosgi.hook.configurators.exclude=org.eclipse.core.runtime.internal.adaptor.EclipseLogHook -Drcp.osgi.install.area=/opt/ibm/lotus/notes/framework/eclipse -Xbootclasspath/a:/opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/rcpbootcp.jar -jar /opt/ibm/lotus/notes/framework/rcp/eclipse/plugins/com.ibm.rcp.base_6.1.1.200707311521/launcher.jar
rm -rf ~/lotus/notes/data/workspace/logs/javacore*.txt
rm -rf ~/lotus/notes/data/workspace/logs/core*.dmp

**Update**

Yeah I got Notes to “run”, technically. But getting it to fully work is another thing. Now I’ve found a new problem. Whenever I create a new memo, or reply or forward a mail, a little dialog called “NSD is running” will show, and Notes freezes. In the console window behind, a lot of error is generated by this nsd.sh, which is actually a dumping script.

Anyone has any insight on this issue?

  • Jove

    That was awesome! How did you figure it out?!
    Now my notes can start after it refused to work for two weeks.. however, the dump file is still being created

    BTW, you may need one more rm to get rid of another JVM dump file.
    rm -rf ~/lotus/notes/data/workspace/logs/Snap*.trc

  • http://blog.lifedreamr.com/ houyr

    I got this after discussion with Vic who’s also using Feisty on his laptop:)
    But I’ve found a new problem. Whenever I create a new memo, or reply or forward a mail, a little dialog called “NSD is running” will show, and Notes freezes. In the console window behind, a lot of error is generated by this nsd.sh, which is actually a dumping script.
    Need to fight yet another Notes devil now…