# Virtual Network Computing (VNC)

Probably the most useful Open Source tool of all (ok, maybe is more useful), was originally created by the AT&T Research facility in Cambridge and is a remote display protocol that, despite being rather inefficient (something modern forks try to improve upon, but certainly still less than , has the advantage of being very simple and require only very light clients (the binary is contained within just 230KB, and implementations can be downloaded on-the-fly from any browser).

includes a server (check the Sharing preference pane, it’s part of Remote Desktop).

### Mac Screen Sharing

uses a variant of the protocol for its own screen sharing solution, and this article has some useful tweaks to the Leopard built-in client that I’m reproducing here for safekeeping:

#### Displaying a Bonjour browser

defaults write com.apple.ScreenSharing ShowBonjourBrowser_Debug 1


defaults write com.apple.ScreenSharing \
'NSToolbar Configuration ControlToolbar' -dict-add 'TB Item Identifiers' \
'(Scale,Control,Share,Curtain,Capture,FullScreen,GetClipboard,SendClipboard,Quality)'


In 10.5.5, decided to get stingy again, so this workaround became necessary–which is kind of ridiculous.

When rolled around, they broke even more of the UI, but it’s still possible to set display quality via a preference (via):

defaults write com.apple.ScreenSharing controlObserveQuality n


…gives you:

1. black and white
2. grayscale
3. 8-bit color
4. 16-bit color
5. full color

### Tricks

My current (minimalist) Xvnc startup file for Linux, so that I remember that unsetting SESSION_MANAGER is the right way to avoid complaints from gnome-session:

$cat .vnc/xstartup #!/bin/sh unset SESSION_MANAGER [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r$HOME/.Xresources ] && xrdb \$HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
gnome-session &