[FreeNX-kNX] Tasks - Has someone too much time? ;-)

Jon Severinsson jon at severinsson.net
Mon Mar 21 11:42:53 UTC 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi

I'm personaly not realy involved in nxc, but mainly in the freenx
nxserver, but I think I can answare some of your questions. If anyone
else has anything to add or wants to correct me, feel fre to do so.

Forst some clarifications on names and such:

FreeNX was initialy just a project for a server implementation of the NX
technoligy, and has just recently also got client modules. Thus both the
main project and the nxserver subproject is called FreeNX. This is
confusing, but you will just have to live with it.

Once upon a time !M (NoMachine) released a proof-of-concept nxclient as
OSS. This was a command-line only interface called nxrun. Then Lawrence
Roufail used the nxrun code as base for his moznx project, a mozilla
plugin. During this process he improved the core and made it 1.4-x
compatible. Now he thought a new version of the command-line tool would
be usefull, so he modularized moznx and created a module he innitially
called nxconnect. Later he renamed the nxconnect module nxrun and the
entire project to nxc (short form of nxconnect/nxclient). However, the
code has not propperly been cleaned up (you are very welcome to help!),
so the main project that should be called nxc sometimes is called nxrun
or moznx, and the nxrun component sometimes is called moznx or nxconnect.
As far as I know, the nxc project and all it's subcomponents have a
version of 0.3 (so changes in CVS will become 0.4). Any references to
1.x is left-overs from the !M nxrun program, as is most ChangeLogs and
other documentations as well.

gnx is a completely separate project by Gustavo Noronha Silva featuring
a minimalistic pure C client for the ThinStation project and a gtk gui
written in python. In this context it is not relevant, but it's good to
know it is there.

knx is a nx client for kde that originally was (is) a separate project
living in the kde CVS, but there has been talk of making it a nxc module
and let it use nxcompsh and nxdriver. This is, to my understanding,
becouse knx is unmaintained and has a very limited support for the quite
extensive nx protokoll. Just keeping the gui parts of knx and let it use
the better nxc backend would be a great improvement.

Now your issues:

| o revision control. i had a bit of a hard time finding where the
| sources for nxc was, as most of the FreeNX stuff is now in subversion
| but the nxc stuff is in CVS? will nxc be moving to svn sometime? or
| will it be staying in CVS?
nxc and freenx (the nxserver subproject) is in CVS, gnx is in SVN. It
will most likely remain this way indefinitely.

| o no documentation. this makes getting involved with this 10x harder
| than it should be. can we please adopt a go-forward policy of
| documenting at least all public and protected members in classes?
| doxygen style comments would rock. also, documentation for config
| files, etc.. is needed. this can be gleaned by visiting N pages on the
| 'net, but that's N-1 too many ;) ... and really, an overall "this is
| the general architecture of nxc" paper would also be very, very good.
nxc was originaly a one-man project, and as such had to litle
documentation. Please feel free to write some documents with your
findings and add to the freeNX wiki at
http://openfacts.berlios.de/index-en.phtml?title=FreeNX

| o no tests. this is of a slightly lower priority than documentation ;)
| but for this sort of software, having unit tests is going to be
| critical, especially as this needs to be able to keep up with
| NoMachine changes _and_ remain compatible / non-broken with FreeNX and
| itself. do the current authors have any preference when it comes to
| testing frameworks?
Atm testing is trying to connect to !M nxserver and FreeNX nxserver and
se if it works. If you want a test suit, please talk to Lawrence Roufail
and then set up one.

| o code quality. i wonder why we are using unsigned ints and "#define
| TRUE 1" when we have booleans in C++ ... or why all ^M's the end of
| lines? or the references to MOZ_NX (e.g. in NXRunVersion.h) is there
| some history here that i should be aware of? or some odd compatibility
| issues? because some of my first desires is to do some janitorial work
| so i can read the code more efficiently. this is to aid my understand
| of what's going on since i don't have the luxury of documentation. but
| i don't want to spend time doing something that's not useful.
The code is in need of a cleanup, but last I heard Lawrence Roufail
didn't have the time to do so. Feel free to help out!

| o bug report quality. there are reports that mention crashes but don't
| include backtraces. there are vague references to classes, which sends
| me off grepping around. these reports are filed by the authors, so i'd
| expect things like backtraces, file names, etc... these all make it
| vastly easier for someone to get into the project productively.
As far as I know there is no bugreports for nxc on the official
bugreports page (http://developer.berlios.de/bugs/?group_id=2978)
What bugreports are you reffering to?

| o where do i send patches for nxclient to?
If you meen nxc it is at the freenx berlios development page
(http://developer.berlios.de/patch/?group_id=2978)
If you mean !M nxclient you can't. nxclient is closed source. The shared
OSS components see http://www.nomachine.com/ar/view.php?ar_id=AR12B00113

| o what syncing will need to be done with NoMachine's efforts, if any?
Just make sure it works with the latest stable 1.4-x OSS components
(that is: keep your system updated and try to run it).
Preferably you should test to connect to latest !M nxserver 1.4-x,
latest !M nxserver 1.3-x, latest released freenx nxserver (0.3.0 atm),
and latest freenx CVS, though if it works with !M 1.4 or any recent
freenx version it should be ok.

| o does anyone on this project hang out on IRC ever, and if so where?
I don't, and I havn't heard that the others would. Main communication
chanel is email, both personal and this mailing list, and various
postings at the berlios page (eg bugreports, feature requests, tasks etc.)

| i'm sure i'll have more questions in the days to come as i continue to
| ramp up and hack on this.
Feel free to ask and we will help out if we can.

Regards
- - Jonno
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCPrM9OOpxqcksWu4RAqkyAJ4lOlZiXWIClkZwHGN6NiKj5utxKQCggj2e
vtE9YXGCxbTyjEGQY6HxiL8=
=y4Dn
-----END PGP SIGNATURE-----



More information about the FreeNX-kNX mailing list