Sunday, June 03, 2007

freenx on Debian etch, IBM Power5 ppc64

There is still no package in the repos for freenx unlike OpenSUSE. You can retrieve the sources from here (thanks to Fabian Franz for the pointer!):

http://kern.nl/freenx/nx_2.1.0dol1.tar.gz
http://kern.nl/freenx/freenx_0.6.0dol1.tar.gz

You can download additional packages (source code) (e.g. for nxagent, nxauth) not included in the previous tgz from here:

http://www.nomachine.com/sources.php

For consistency's sake, I packaged all sources (sans Fabian's) that I have downloaded but I cannot assure you that they are the latest stable (as of this time). I've done a lot of minor tweaks. It will be cumbersome to document them. Post your questions here if you encounter a problem.

After the installation and configuration, I got this error in the client (version 2.x):

NX> 1000 NXNODE - Version 1.5.0-60 OS (GPL)
NX> 1004 Error: NX Agent exited with exit status 1.
NX> 105 NX> 596 Session startup failed.
NX> 1006 Session status: closed


The possible fixes are documented in this wiki. But apparently the error in my case is something related to a missing shared library being used by nxagent. Make sure you check that all libraries are resolved using the command ldd /usr/NX/bin/nxagent and fulfill the missings. Also make sure that you are using the most updated node.conf using the command nxloadconfig --userconf.

Saturday, June 02, 2007

IE's Unknown Runtime Error in prototype.js Line: 697 Char: 9

IE sucks again! Without a decent debugger (like Firebug), I have to read prototype.js (version: 1.4.0_pre11) and spend hours trying to pinpoint the fault. This alien error appears to be this block:

    if (receiver) {
if (this.options.insertion) {
new this.options.insertion(receiver, response);
} else {
receiver.innerHTML = response;
}
}


Particularly this line:

receiver.innerHTML = response;

I am trying to rewrite a tbody of a table but IE does not like that. This link is insightful (RobG):

...don't use innerHTML to modify tbody, tr, th or td elements, use DOM (they actually refer to a 'table object model', but DOM is a better bet).

If you are going to use innerHTML near a table, write the entire table or just cell content, no in between.