FreeNX on suse 12.1

Hello.

Have install Freenx from please_try_again repository.
Have install nxclient from nomachine rpm package.

Following SDB:FreeNX server - openSUSE have applied patch.

Testing the setup give these errors :

linux:~ # nxsetup --test

----> Testing your nxserver configuration …
Warning: Could not find nxdesktop in /usr/bin. RDP sessions won’t work.
Warning: Could not find nxviewer in /usr/bin. VNC sessions won’t work.
Error: Invalid value “KDE_PRINTRC=/root/.kde/share/config/kdeprintrc”
Warning: Invalid value “COMMAND_FOOMATIC=/usr/lib64/cups/driver/foomatic-ppdfile”
Users will not be able to use foomatic.
Warning: “/usr/lib64/cups/backend/smb” is not executable.
Users will not be able to enable printing.
Warning: Invalid value “CUPS_ETC=/etc/cups”
Users will not be able to enable printing.
Warning: Invalid value “COMMAND_START_GNOME=gnome-session”
Users will not be able to request a Gnome session.
Warning: Invalid value “COMMAND_START_CDE=cdwm”
Users will not be able to request a CDE session.
Warning: Invalid value “COMMAND_SMBMOUNT=smbmount”. You’ll not be able to use SAMBA.
Warning: Invalid value “COMMAND_SMBUMOUNT=smbumount”. You’ll not be able to use SAMBA.
Warning: Invalid cupsd version of “/usr/sbin/cupsd”. Need version 1.2.
Users will not be able to enable printing.
Error: Could not find 1.5.0 or 2.[01].0 or 3.[01].0 version string in nxagent. NX 1.5.0 or 2.[01].0 or 3.[012].0 backend is needed for this version of FreeNX.

Errors occured during config check.
Please correct the configuration file.

linux:~ #

Starting a session locally I get this error ( after the window opened ) :

nxclient nepomuk service stub /usr/bin/nxprint cd /usr/share/ppd no such file or directory
and
Application: Nepomuk Service Stub (nepomukservicestub), signal: Segmentation fault

Within the session :
-) I can open dolphin
-) I can open a file in kate editor, but I can’t print the document
-) I can’t open firefox ( Error : Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system.) And for the same reason I can’t open cups manager

I had none of these problems with nomachine nx server.

It seems that freeenx look for very old path, don’t recognize cups ( cups 1.5 is running ) etc …

Help is welcome

The firefox error is not related to FreeNX. You would have the same problem if you try to start another instance of firefox in the same or another X session. But you won’t have it if you open a nx session as another user or if you exit firefox on the server.

I never print in FreeNX, but I noticed that some paths are indeed wrong (such as /usr/lib/cups/backend). Try to change them in /etc/nxserver/node.conf and let me know if it works.

Hummm … complicated.

First off I could get rid of some of those warnings by applying some changes in /etc/nxserver/node.conf:

diff -u /etc/nxserver/node.conf.cups /etc/nxserver/node.conf
--- /etc/nxserver/node.conf.cups	2012-06-14 16:51:37.670481323 -0700
+++ /etc/nxserver/node.conf	2012-06-14 17:02:29.146945674 -0700
@@ -413,7 +413,7 @@
 # FreeNX with ENABLE_CUPS_SERVER_EXPORT="1" will automatically
 # export the environment variable CUPS_SERVER.
 
-#ENABLE_CUPS_SERVER_EXPORT="1"
+ENABLE_CUPS_SERVER_EXPORT="1"
 
 # FreeNX with ENABLE_CUPS_SEAMLESS will automatically try to download the 
 # necessary ppds from the client.
@@ -429,16 +429,16 @@
 # FreeNX with ENABLE_FOOMATIC will integrate the foomatic db to the list
 # of available ppd drivers via the $COMMAND_FOOMATIC command.
 
-#ENABLE_FOOMATIC="1"
+ENABLE_FOOMATIC="0"
 #COMMAND_FOOMATIC="/usr/lib64/cups/driver/foomatic-ppdfile"
 
 # CUPS_BACKEND and CUPS_ETC are the corresponding paths of your CUPS 
 # installation.
 
-#CUPS_BACKEND="/usr/lib64/cups/backend"
-#CUPS_IPP_BACKEND="$CUPS_BACKEND/nxipp"
+CUPS_BACKEND="/usr/lib/cups/backend"
+CUPS_IPP_BACKEND="$CUPS_BACKEND/ipp"
 #CUPS_DEFAULT_SOCK="/var/run/cups/cups.sock"
-#CUPS_ETC="/etc/cups"
+CUPS_ETC="/etc/cups"
 
 # SAMBA_MOUNT_SHARE_PROTOCOL is a key to configure the supported 
 # protocols for mounting shares.

Now the output of nxsetup --test (before I applied these changes, it looked pretty much like yours):


----> Testing your nxserver configuration ...
Warning: Could not find nxdesktop in /usr/bin. RDP sessions won't work.
Warning: Could not find nxviewer in /usr/bin. VNC sessions won't work.
Warning: Invalid value "CUPS_ETC=/etc/cups"
         Users will not be able to enable printing.
Warning: Invalid value "COMMAND_START_CDE=cdwm"
         Users will not be able to request a CDE session.
Warning: Invalid value "COMMAND_SMBMOUNT=smbmount". You'll not be able to use SAMBA. 
Warning: Invalid value "COMMAND_SMBUMOUNT=smbumount". You'll not be able to use SAMBA.
Warning: Invalid cupsd version of "/usr/sbin/cupsd". Need version 1.2.
         Users will not be able to enable printing.
Error: Could not find 1.5.0 or 2.[01].0 or 3.[01].0 version string in nxagent. NX 1.5.0 or 2.[01].0 or 3.[012].0 backend is needed for this version of FreeNX.

  Warnings occured during config check.
  To enable these features please correct the configuration file.

<---- done

----> Testing your nxserver connection ...
HELLO NXSERVER - Version 3.2.0-73 OS (GPL, using backend: 3.4.0)
<--- done

Now the same test on Fedora 16:

# nxsetup --test

----> Testing your nxserver configuration ...
Warning: "/usr/lib/cups/backend/nxipp" is not executable.
         Users will not be able to enable printing.
Warning: Invalid value "COMMAND_START_CDE=cdwm"
         Users will not be able to request a CDE session.
Warning: Invalid value "COMMAND_SMBMOUNT=smbmount". You'll not be able to use SAMBA. 
Warning: Invalid value "COMMAND_SMBUMOUNT=smbumount". You'll not be able to use SAMBA.
Warning: Invalid cupsd version of "/usr/sbin/cupsd". Need version 1.2.
         Users will not be able to enable printing. **Ignore if you use cups > 1.2**
Error: Could not find 1.5.0 or 2.[01].0 or 3.[0123].0 version string in nxagent. NX 1.5.0 or 2.[01].0 or 3.[0123].0 backend is needed for this version of FreeNX.

  Warnings occured during config check.
  To enable these features please correct the configuration file.

<---- done

----> Testing your nxserver connection ...
HELLO NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.5.0)
<--- done


It could be that printing might work after all.

I don’t think that the nxagent error is fatal. I see it on different servers, different distros.

Now - and here’s why I said ‘complicated’ - my /usr/lib/cups/backend/nx is pointing to /usr/NX/bin/nxspool

$ readlink /usr/lib/cups/backend/nx
/usr/NX/bin/nxspool

And this file belongs to the nomachine package:

$ rpm --query -f /usr/NX/bin/nxspool
nxnode-3.5.0-7.x86_64

This is not surprising since I install both and nomachine always last. How does this symlink look like on your system?

But again, I don’t print.

OK. Here’s what I did: in /etc/nxserver/node.conf, I just uncommented this line:

ENABLE_CUPS_SERVER_EXPORT="1"

uncommented and modified these two:


CUPS_BACKEND="/usr/lib/cups/backend"
CUPS_IPP_BACKEND="$CUPS_BACKEND/ipp"

restarted the freenx server, and I was able to print from a freenx session. Notice that nomachine NX is also installed on this server.

There is an option in Nomachine client under services to enable CUPS printing. I didn’t check it. I suppose it makes the client acting in turn as a print server. I didn’t need it to just print a page in the client session.

Digging into loadnxconfig and modifying it I have removed some errors.
This is because freenx have not been updated for long times. So loadnxconfig is not looking for good files or paths or version number.

I have left out this project for the moment. I will give you news later.

Thank you very much for helping

PS: Effectively I had had no problems last year when i used Nomachine nxserver with Nomachine nxclient.

Correct. I fixed that already in the package I’m still building locally. I will release it when I’m done. Digging in other files and in the latest Fedora patches, I see there are a lots of other things which need to be changed. I won’t be able to fix all FreeNX printer issues (specially with samba). However if someone could tell me what would be the (exact) equivalent of foomatic-ppdfile in openSUSE … it might help. It’s a perl script I found on Fedora and ArchLinux. FreeNX uses it as its foomatic command.

COMMAND_FOOMATIC="/usr/lib/cups/driver/foomatic-ppdfile"

I know there is “foomatic-rip --ppd” in openSUSE. But it doesn’t seem to do the same thing.

The printing bug is fixed in my last build of FreeNX. Of course, cups has to be running and set up properly on the server. I was able to print from a FreeNX session on a Linux client - without having NoMachine installed at all on the server. I also updated NX agent to version 3.5.0.

To anyone who might be interested, I posted 2 articles on how to install FreeNX and NoMachine NX under openSUSE separately or in parallel.

I have left out this project for the moment. I will give you news later.

Thank you very much for helping

No problem. There were a lot of bugs in this old FreeNX port which deserved to be fixed.