MetaVNC version 0.5.0 for Linux w/ XFree86 4.3
==============================================

This package includes the following softwares;
- vncviewer (based on tightvnc 1.3dev5)
- traditional Xvnc server (based on xf4vnc)
- vnc module for XFree86 (so called :0 server, based on xf4vnc)
- window monitor (helper application for the servers)


HOW TO BUILD
------------

1) extract this file

% tar xvfj metavnc-unix-<version>-src.tar.bz2

2) change directory to metavnc-unix-<version>

% cd metavnc-unix-<version>

3) build libvncauth

% cd libvncauth
% xmkmf
% make
% cd ..
  (This step is necessary prior to step 4), 5) and 6))

4) build vncviewer

% cd vncviewer
% xmkmf
% make
% cd ..

5) build windowmonitor

% cd windowmonitor
% xmkmf
% make
% cd ..

Note: libwnck-2.8 is required

6) build Xserver

 6-1) standalone version (Xvnc)
   % cd xc
   % cd config/cf
   % cp host.def.Xvnc host.def
   % cd ../..
   % make World
   (Xvnc will be generated at programs/Xserver)

 6-2) module version (vnc.so)
   % cd xc
   % cd config/cf
   % cp host.def.module host.def
   % cd ../..
   % make World
   (vnc.so will be generated at exports/lib/modules)


HOW TO SET UP THE SERVER
------------------------

1) Requrement for the Meta-Window-Manager server.

- freedesktop.org compatible X desktops (like GNOME or KDE)

2) Start Up VNC Server

Basically, this step is just the same as xf4vnc. If you prefer to use
Xvnc, just run vncserver script as traditional vnc servers. If you
prefer to use vnc.so, then you need to edit the
/etc/X11/XF86Config. Example of this file is included as
XF86Config.vnc. 

The following steps are necessary to modify your /etc/X11/XF86Config.

   1. Add the followings to the "ServerLayout" section.

        InputDevice    "vncMouse" "ExtraPointer"
        InputDevice    "vncKeyboard" "ExtraKeyboard"

   2. Add the followings to the "Module" section.

        Load  "vnc"

   3. Add the following sections.

Section "InputDevice"
        Identifier  "vncMouse"
        Driver      "rfbmouse"
EndSection

Section "InputDevice"
        Identifier  "vncKeyboard"
        Driver      "rfbkeyb"
EndSection

   4. Add the followings to the "Device" section.

        Option      "usevnc" "on"
        Option      "useraccept" "off"


3) Start Up windowmonitor

3-1) What is the windowmonitor?

The windowmonitor acts two roles;
  1. a part of the meta window manager (need GNOME or KDE)
    - launch applications
    - minimize/maximize/restore/close windows
  2. a part of the clipboard feature (if using GNOME or KDE)
    - forward clipboard texts

NOTE: Since the current win32 viewer does not support the meta window
manager, you don't have to install the windowmonitor.  But it is still
useful to install the windowmonitor if you use the clipboard features.

The windowmonitor is implemented as a kind of vnc client. Usually you
need an authentication process. By specifying a vncpassword file using
a '-passwd' option, keyboard interaction can be omitted.

IMPORTANT: You have to run the windowmonitor as a X client of the X
server provided by the metavnc server.

3-2) Auto-start the windowmonitor

Using the autostart feature of GNOME or KDE is a nice way to start the
windowmonitor.
The following is an example how to auto-start the windowmonitor on GNOME;

   1. Launch "Preferences" - "More Preferences" - "Sessions" from the start menu.
   2. Click the "Startup Programs" tab and add the command.
   3. The startup command should be "/usr/bin/windowmonitor -passwd ~/.vnc/passwd", or whatsoever.

The following is an example how to auto-start the windowmonitor on KDE;

   1. Create a startup script to launch the window monitor. For example, "/usr/bin/windowmonitor -passwd ~/.vnc/passwd".
   2. Put the script in ~/.kde/AutoStart/.
