Audrey Hacking Wiki

How to create a remote Xterm Session on your audrey

Thanks to Zooloo and the linux-hacker.net bbs

This is a quick how-to on running remote xterms on the audrey. Why would you want to do this? Well with the ability to run an xterm on the audrey you can run ksh on any desktop computer to edit config files, run photon apps (they run/display on the audrey itself) or even run x-windows applications on audrey that display on your xserver. It beats using the LCD & tiny keyboard. First off, you need an xserver on your desktop and a net connection to the audrey. If you are running QNX6.1 you need to install the xphoton package. This will give you the ability to run xterms, etc. under native qnx6.1. If you are running windows you need to find an xserver (I personally use exceed but any will work). If you've got linux your all set, just make sure you do an 'xhost +' to allow remote clients.

You then need the ability to run QNX 6.1 binaries on the audrey. Suicidal discussed this in another thread. The key to getting 6.1 binaries running is you need to copy /proc/boot/libc.so.2 from a qnx 6.1 distribution to your audrey under /nto/lib and then on your audrey create a symbolic link to it:

ln -sP /nto/lib/libc.so.2 /usr/lib/ldqnx.so.2

by the way I think this link disappears when you reboot...

Now the annoying part. You need a slew of libraries from the QNX 6.1 distribution, and you have to install the xphoton package to get the /usr/X11R6 directory on qnx 6.1. I didn't even bother trying to figure out which specific libs are needed, instead I just nfs-mounted a mirror of a qnx 6.1 distro on my audrey. Basically I did a fs-nfs2 host:/opt/qnx61 /mnt/qnx61. This gives me the entire qnx 6.1 mounted on /mnt/qnx61 on the audrey. You can do this using cifs (windows) also and it should work. Having the entire 6.1 distro mounted is nice as you have instant access to all kinds of utils not on the audrey.

What you really need from qnx 6.1 to run xterm is some of the libs from /usr/X11R6/lib, and of course 'xterm' from /usr/X11R6/bin. You will also need some libs from /lib on qnx 6.1 (libsocket.so.2, etc.) Once you have these by whatever means you need to do the following in pterm on the audrey, these assume you have the QNX 6.1 distro mounted to /qnx61.

export LD_LIBRARY_PATH=/qnx61/lib:/qnx61/usr/X11R6/lib:$LD_LIBRARY_PATH

export PATH=$PATH:/qnx61/usr/X11R6/bin

You only need xterm from X11R6/bin, so you can just copy it somewhere if you wan.

Now, after you have the above enviornment vars setup, run xterm on the audrey with the -display param set to the ip address of the computer you are running the xserver on:

xterm -display 192.168.0.19:0.0 -ls

In this case my desktop IP address is 192.168.0.19.

If your xserver is running and the authorizations are setup to allow remote x clients, an xterm should pop up and you are now running audrey-ksh on your desktop. You can run vim, photon apps, etc. from here just as you would from pterm. Even resizing vim works fine.

I think this is all that is needed, let me know if you have any problems. This may also work with the 6.0 files, however I've had problems getting xterm to start with 6.0 stuff.

Disclaimer: Remember you are screwing with a flash-based filesystem and if you delete, move, edit, etc. a file the system needs to boot you could render your audrey useless. Be careful when editing system files, or putting files into system directories as not to overwrite anything. I've actually gotton into the habit of remounting key directories via nfs (like /etc, /kojak, /nto) so I can hack without screwing things up.

-zooloo