x2vnc - a dual-screen hack
x2vnc <options> host:0
[ -display display
] [ -south
] [ -east
] [ -west
[ -hotkey key
[ -passwdfile passwd-file
[ -edgewidth width
[ -desktop desktop-number
[ -timeout seconds
[ -scrolllines lines
[ -lockdelay seconds
[ -accel multiplier
[ -via host
will let you use two screens on two different computers as if they
were connected to the same computer. The computer with the 'main' keyboard
must be running X-window, and the second computer should have a VNC server
running which will update the contents on the actual screen. This means
is not suitable, but WinVNC
For up-to-date information on x2vnc, see the x2vnc home page:
- -display display
- The X windows display to connect from.
- Allow multiple connections to the same VNC server.
- -north, -south, -east, -west,
- Determine which edge leads to the other screen.
- -passwdfile password-file
- With this option you can start x2vnc without entering a password. The file
is created by vncpasswd which comes with the X-windows VNC
software. If the file does not exist, x2vnc will ask for a password
and create the file.
- This option will cause the trigger window to re-surface automatically if
it is covered up by another window.
- -hotkey key
- This option allows you to select which key to use to warp the pointer to
and from second computer. The default is "Control-F12", any
combination of modifiers can be used, such as
"shift-alt-meta-ctrl-F1" (or s-a-m-c-F1).
- -edgewidth pixels
- This is a workaround for some X servers which do not allow the mouse to go
all the way to the edge of the screen. By setting this to 2 or greater,
the mouse will be able to reach the x2vnc window and thus warp to the
windows machine. The default value is 1. If you set this value to 0, no
border will be generated, which means you will have to use hotkeys to
switch to the oher screen.
- -desktop desktop-number
- With this option, you can make x2vnc non-sticky. This may not work with
all window-managers. Note that the first desktop is usually 0 (zero). If
you want x2vnc to appear on the last (rightmost) desktop, use -1. This
option was especially created with the sawfish edgeflipping in mind,
normally you would use "-west -desktop 0" or "-east
-destkop -1" with Sawfish to allow edgeflipping to work
- -timeout seconds
- This options tells x2vnc how long to wait before warping the cursor back
to the X screen if there is no activity. The reason for this is that some
screen savers, such as xscreensaver, cannot activate while x2vnc is in
control of the cursor. The default value is 590 seconds, which is
equivalent to 9 minutes and 50 seconds. Using a value of 0 will disable
- This option does nothing and is left for backwards compatibility
- This will make x2vnc tranlate all mouse wheel events into arrow up/down
events. Only use this if your VNC server doesn't understand mouse wheel
- Invert the up/down direction of the mouse wheel emulation. This option
only works if -wheelhack is used.
- -scrolllines lines
- When using mouse wheel emulation, this selects how many up/down events
will be sent for each tick of the mouse wheel.
- This will map button 6 & 7 to Alt+Left/Right, which will allow the
navigation buttons on some mice to behave more like they do in
- Macintosh specific mode, maps second mouse button to
- If the X selection looks like a URL, trim leading and trailing spaces.
This can be useful for pasting URLs into a browser.
- Prevent screen blanking on the remote desktop while you are working on the
local desktop. Requires the MIT-SCREEN-SAVER or XIDLE extension to work
properly. If neither of these extensions are present, the remote desktop
will always be kept from blanking.
- -lockdelay seconds
- This is only meaningful when using the -noblank option. When this option
is present. With this option, x2vnc will not attempt to wake up the remote
screen if you have been idle for more than the specified amount of time.
This is useful if you need a password to unlock the remote screen and
would rather leave it blanked until you need it.
- This option will make x2vnc print out information about events it sends
and receives to stderr for debugging purposes.
- -accel multiplier
- This option allows you to control the speed of the mouse on the remote
screen. 2.0 means twice as fast, 0.5 means half as fast. Default is 1.0.
Note that this is multiplied with a number which x2vnc calculates based on
screen sizes and other factors.
- This option prevents x2vnc from automatically reconnecting if the
connection is closed.
- This option makes x2vnc start an SSH tunnel to the machine being
controlled by x2vnc. The SSH command used can be changed by setting the
X2VNC_SSH_CMD environment variable. The default is:
ssh -A -X -f -L "$LOCALPORT:$REMOTEHOST:$REMOTEPORT" \
"$GATEWAYHOST" 'ssh-add;sleep 60'
- -via host
- This is similar to -tunnel, but tunnels through a host different than the
machine being controlled by x2vnc.
Most common usage:
x2vnc -passwdfile $HOME/.vncpasswd -resurface host:0
To make x2vnc start (and re-start) automatically, add the following to your your
X startup file (usually .xinitrc):
x2vnc -passwd $HOME/.vncpasswd -resurface host:0
Fredrik Hübinette, email@example.com