[FreeNX-kNX] FreeNX 0.3.0 "Chemnitzer Linux-Tage Edition"

Fabian Franz FabianFranz at gmx.de
Sun Mar 6 12:27:02 UTC 2005

Hash: SHA1


as already announced the FreeNX team proudly presents FreeNX 0.3.0.

We had a very successful workshop today at the Chemnitzer Linux-Tage and did
release 0.3.0 at the end of it.

But I guess you are more interested in the new features of FreeNX 0.3.0.

New features in short:

- - Security enhancements
- - Many bugfixes
- - Single application mode works now (both, in rootless and in proxy mode)
- - Much improved nxsetup and nxsetup --uninstall
- - Rewrite of authentication code
- - Systemwide as well as user specific configuration files which are mostly
compatible with NoMachine's commercial nxserver node.conf.
- - Changed nx home directory to /var/lib/nxserver/home and nx logfile
to /var/lib/nxserver.log (FHS compatible)
- - Autostart and exported configuration variables for nxnode
- - Forwarding of connections to other NX servers

Quick installation notes

Please note that any previous installation instruction that says "Use nxsetup
- --setup-nomachine-key" must be updated to "nxsetup --install
- --setup-nomachine-key".

To upgrade from 0.2.8 to 0.3.0 on distributions, which have FreeNX installed
in /usr/bin, you _could_ do:

cp -a freenx-0.3.0/nx* /usr/bin

Please note that it is encouraged you wait until updated packages are
available; otherwise you will need to take care of the new
file /usr/bin/nxloadconfig yourself.

The same applies to distributions which have FreeNX in /usr/NX: you'll have to
apply the gentoo-nomachine.diff before copying the files to /usr/NX/bin.

Features in detail

Security enhancements
- ---------------------

- - The generated keys (or the NoMachine key) are now restricted in their scope.
They prohibit port-forwarding, agent-forwarding and X11-forwarding, and the
allowed command is limited to "nxserver".
- - Security fixes from 0.2.8

- --------

- - "Fullscreen"/Windows Client Resume fixed
- - Keyboard issues with nxdesktop fixed
- - unix-default session type fixed
- - Problems with session termination fixed

Proper single application mode
- ------------------------------

Choosing "floating window" will now actually work.

Please note: If you want to start a KDE application, be sure to add --nofork
to the commandline. This prevents the NX Server to be terminated, because it
thinks the application was already terminated, while it was just going into
the background.

If you want to take a look at the future, change ENABLE_ROOTLESS_MODE="1" in
node.conf to use rootless nxagent. Note: Rootless nxagent still has some
problems with closing of windows and is therefor still experimentaal, but
works faster and will be the default in NX 1.5.0.

Improved nxsetup and nxsetup --uninstall
- ----------------------------------------

In the past versions there have frequently been issues with the ssh keys.
These problems could be solved by manually removing all created directories
and re-executing nxsetup.

Now you can completely re-install FreeNX without problems with the following

nxsetup --install --clean --purge [ --setup-nomachine-key ]

This _should_ now work much more reliably.

There now is also a --uid parameter to preset the uid with which the nx user
is created.

Rewrite of authentication code
- ------------------------------

FreeNX 0.3.0 got a complete rewrite of the authentication code.

This means:

You can now choose between using ssh or su to login users via password. (This
was one feature request on the mailing list.)

Also restricting users with USERDB="1" will now actually work.

Systemwide and userspecific configuration files
- -----------------------------------------------

FreeNX 0.3.0 now supports both, a system wide node.conf as well as user
specific <username>.node.conf files in /etc/nxserver. Variant settings in
<username>.node.conf will override the systemwide node.conf settings. This
means you can easily enable the AUTOSTART function for user "fabian" only,
for example if you want to run tests.

Autostart and exported configuration variables for nxnode
- ---------------------------------------------------------

Setting NODE_AUTOSTART="myprogram" will run myprogram with "start"/"restore"
always at session startup/resume. So "myprogram" can perhaps cleanup the
Desktop or do other autostart tasks. This is especially useful with session
reconnection even from a different NX client (where you can't use the
standard KDE or GNOME mechanisms).

You can also export the variables NX_USERIP and NX_SESSIONID to make them
accessible in the user's environment.

This allows for example putting an icon onto the desktop with the "generic"


and access a samba server running on the user's thinclient (real life

Forwarding of NX servers
- ------------------------

The second most asked feature was the request for creating a "chain" of
nxservers, for example for the purpose of allowing connections through
firewalls. Now this is as easy as:

 * install FreeNX server on two systems
 * on the "gateway" enable the configuration directives:

The "gateway" nxserver will then forward _all_ connections immediately to the
internal server.

Another nice feature is that you can now install and run FreeNX and a
commercial NoMachine NX server on the same machine without interference. This
is implemented in FreeNX by forwarding the connection to the NoMachine
installed on the same machine.

To enable this feature set this directive:


To connect to the NoMachine server, use the standard username/password
credentials. To connect to the FreeNX server prepend "freenx." to the normal
username (like "freenx.joedoe") and use the same password for the user.

The next releases

We are aiming for a 0.4.0 release at the beginning of May and a 0.5.0 release
for the beginning of July.

Which additional features do you want most for the next stage of development?

For now have Fun with FreeNX 0.3.0 until 0.4.0 snapshots will appear!

The source tarball is available from


RPMs, *.debs and ebuilds will hopefully be announced by the respective 
packagers in the next few days.


Version: GnuPG v1.2.4 (GNU/Linux)


More information about the FreeNX-kNX mailing list