FreeNX Configuration in Debian

What is FreeNX ?

FreeNX is an implementation of a NoMachine/NX-compatible terminal server.
It makes use of NoMachine's NX command line tools more convenient and less error prone.

NX is an exciting new technology for remote display. It provides near local speed application responsiveness over high latency, low bandwidth links. The core libraries for NX are provided by NoMachine under the GPL. FreeNX is a GPL implementation of the NX Server.

Download FreeNX


FreeNX Howto's

Download FreeNX Client Software

Install FreeNX in Debian

If you want to install freenx in debian you need to add the any one of the following sourcelist to your /etc/apt/source.list

deb ./
deb-src ./


deb ./


deb ./


deb ./

After entering this you need to run the following command

#apt-get update

Now we are ready for installation

#apt-get install nxserver freenx

This will install following packages

expect freenx libdps1 libice6 libnxcomp0 libnxcompext0 libsm6 libxaw7 libxcursor1 libxft1 libxft2 libxmu6 libxmuu1 libxp6 libxrandr2 libxrender1 libxt6 libxtrap6 libxtst6 netcat nxagent nxlibs nxproxy nxserver tcl8.4 xbase-clients xlibmesa-gl xlibmesa-glu xlibs

After installation you need to run this command

Then, run nxsetup. If you want a nomachine key (RECOMMENDED FOR SIMPLICITY), run nxsetup --setup-nomachine-key instead

#nxsetup --setup-nomachine-key

Check to see if the server is running with

#nxserver --status

Now make sure you have ssh running

#/etc/init.d/ssh start

If you want to install client download from the above link and start using freenx

FreeNX Installation From Source in debian

Download this package for Linux and the server.

Download this package for Windows.

Download this package as it has the scripts required to use the libraries.

Login as root and execute the following commands.

#tar zxvf xserver-1.4.0-107.i386.tar.gz

mv NX /usr

Then setup the freenx scripts.

#tar zxvf freenx-0.3.1.tar.gz

#cd freenx-0.3.1

#patch -p0 < *diff

#chown root:root *

#cp node.conf.sample /usr/NX/etc/node.conf

#cp nxkeygen nxnode nxnode-login nxserver nxsetup nxloadconfig /usr/NX/bin/

Now setup the server.

#cd /usr/NX/bin

#./nxsetup --install

The installer has a bug, so fix it.

#chmod 640 /usr/NX/home/nx/.ssh/authorized_keys2

Copy the client.id_dsa.key file from UNIX to your Windows client.

#Copy /usr/NX/home/nx/.ssh/client.id_dsa.key to C:\Program Files\NX Client for Windows\share

Install the appropriate libraries for Debian.

#apt-get install libstdc++2.10-glibc2.2

Install rpm.

#apt-get install rpm.

Download the RPM as it has a library that is not included with the rest of the distribution.

Decompress the rpm.

#rpm2cpio NX*rpm > cpio-archive

#cpio -d -i < cpio-archive

From the directory you decompressed the archvie in, copy the missing library from here to /usr/NX/lib.

#cp usr/NX/lib/libXcomp.* /usr/NX/lib

After installing the library, we need another library, because libXcomp is for RPM distributions.

#apt-get install libpng3

Add the NX library path to /etc/

#echo "/usr/NX/lib" >> /etc/

Update the library search path.

#ldconfig -v

If you do not perform all these library fixes, nxagent will not load and the server won't start.

Next, add a user and a password.


# ./nxserver --adduser jpiszcz

NX> 100 NXSERVER - Version 1.4.0-03 OS (GPL)
NX> 1000 NXNODE - Version 1.4.0-03 OS (GPL)
NX> 716 Public key added to: /home/jpiszcz/.ssh/authorized_keys2
NX> 1001 Bye.
NX> 999 Bye


# ./nxserver --passwd jpiszcz

NX> 100 NXSERVER - Version 1.4.0-03 OS (GPL)
New password:
Password changed.
NX> 999 Bye

Login with your username and password