I do use DigiKam to manage all my digital pictures. Basically DigiKam is a great piece of software with a lot of functions and features. I really love the support for RAW camera files (I do use a Olympus DSLR), the new face recognition feature and the that it can handle images and videos.
The issue I am facing is that I want to be able to access my images including all meta informations from my workstation (Linux openSUSE) and my Windows 7 laptop. My first idea was to move all images on to my NAS (network attached storage) box, setup a MySQL-Database on it containing all DigiKam meta data and to use the DigiKam version from the KDE for Windows Initiative. A nice idea, but to keep it short a total failure! The problem was that DigiKam stores the path to the pictures in the format of the operating system you are running DigiKam on. In addition I had to face with two different DigiKam releases accessing the same database schema which failed after the more up-to-date DigiKam of my Linux workstation did an update to the DigiKam database. Therefore I had to look for an other solution.

To come around the issues of file path and version conflicts I decided to try to access the DigiKam installation on my workstation from remote. I know there are plenty of options to do so like VNC or running an X-Server on my Windows laptop, but finally I wanted to use something very bandwidth efficient offering also the flexibility to access the local file system of my workstation very easily without dealing with scp or mounting some kind of network share. Therefore I decided to give FreeNX a try as an free alternative to the commercial application streaming from Citrix.

1.) Download and install FreeNX

openSUSE does provide FreeNX and NX rpm files in the standard OSS repository, but if you compare the versions against the latests once from the website of the project they are outdated. Also the files provided by repositories of the OBS are not really up-to-date. Therefore I searched for newer files using the search function at http://software.opensuse.org by enabling that “home” folders shall be included in the search.
I found the following repository “http://download.opensuse.org/repositories/home:/please_try_again/openSUSE_12.1/” and added it as repository to zypper:

As next I selected FreeNX and NX for installation:

2.) Configuring FreeNX

Next you have to open a console (at KDE e.g. press <ALT>+<F2> and type “konsole”). At the console you have to switch the user root first before starting the configuration and than execute nxsetup:

nf@jupiter:~> su -
Passwort:
jupiter:/home/nf # nxsetup --install --setup-nomachine-key

I got the following error when executing nxsetup as mentioned above:

The solution to that is to simply create the folder nxsetup is not able to find:

jupiter:/home/nf # mkdir /usr/lib64/cups/backend/ipp

Than I executed the nxsetup again (“nxsetup –install –setup-nomachine-key”) as already mentioned above and it ran successful this time:

Basically the main setup and configuration is done. You can check if the FreeNX server is running by using the command:

jupiter:/home/nf # nxserver --status

The output should look like this:

3.) Client installation and first connection

After the nxserver is running you just need to install, configure and connect with the NX client to the NX server. The NX clients needs to be installed on the computer you want to use to connect to the systems you are running the NX server on.
In my case this is my Windows 7 notebook and my Linux workstation.

You can get the client from the official Website of NoMachine the creator of NX (the propriety version of FreeNX). Currently NoMachine offers clients for Windows, Linux, Mac OS and Solaris. In addition to native clients NoMachine offers a web client called “Web companion” too. To be able to connect to a NX server using “Web companion” you need a computer where a Java runtime is installed on.
Get your client from here: http://www.nomachine.com/download.php

After you installed the client you need to configure the connection. This can be done using the wizard which appears when you start the NX Client the first time. How this looked like on my Windows 7 notebook can be seen in the following screenshots:

When connecting to my NX server the Windows 7 firewall asked my two time if I want to allow the connection of programm nx… to … . Here please check that this are really programs belonging to the NX Client before simply allowing it.

That’s it, NX server running and you shall be able to connect to is using the NX client. Have fun with it!

Installing FreeNX on openSUSE 12.1
Tagged on:                             

4 thoughts on “Installing FreeNX on openSUSE 12.1

  • 2013-09-10 September 2013 at 20:33
    Permalink

    Hi, there’s an error while running setup

    > —-> Testing your nxserver connection …
    > Permission denied (publickey,password,keyboard-interactive).
    > Fatal error: Could not connect to NX Server.
    >
    > AuthorizedKeysFile authorized_keys2
    >

    To solve this go to the home path of nx user and then go to .ssh dir
    Once there as root run:

    ln authorized_keys2 authorized_keys

    Then re-run setup

    -regards-

    Reply
    • 2013-09-10 September 2013 at 22:12
      Permalink

      Thanks for the info. Next time I setup NX I will give it a try.

      Reply
  • 2012-06-07 June 2012 at 19:40
    Permalink

    I appreciate the write-up, but it doesn’t seem to work. Is there a step missing somewhere? Fresh openSuSE 12.1 install, FreeNX install like above, and I just keep getting “Connection timed out” from the client. I’m able to reach the machine fine via SSH though.

    Reply
    • 2012-06-09 June 2012 at 11:55
      Permalink

      Hi Brian,
      did you try to connect to FreeNX when the firewall is disabled? I run FreeNX on my workstation and because I have a real firewall running to secure my network from the internet, I disabled it on my workstation. Should FreeNX work after disabling you should try to allow in your firewall connections via port 5000. If i remember right, FreeNX uses SSH but it also uses an additional communication port.

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

*