vgd - Viewglob communication daemon.
acts as a mediator between any number of vgseer
and a single Viewglob display process (which it controls). It keeps track of
the active terminal and passes information from the corresponding vgseer (if
there is one) to the display.
While vgseer can be used on a remote machine using ssh or telnet, it only makes
sense for vgd to be running on the same X server as the user (meaning, in most
After successful startup, vgd uses the syslog interface for error reporting if
running as a daemon.
This program is slightly misnamed; traditionally, a single daemon process
provides a service on a machine for all users. In Viewglob's case, there
should be separate vgd processes for each physical user running Viewglob. The
startup script handles this automatically, and is recommended
for simple usage.
This program follows the usual GNU command line syntax, with long options
starting with two dashes. A summary is included below.
- -p, --port=<number>
- Listen on the given port. The default is 16108 (1-GLOB).
- -P, --persistent=<on/off>
- Keep vgd around even after all vgseers have disconnected. It will sit and
listen for new connections instead of exiting. Persistence is off by
- -D, --daemon=<on/off>
- Run vgd as a daemon (it relinquishes its terminal). vgd runs as a daemon
- -d, --display=<vgclassic|vgmini|[path]>
- Display program. The Viewglob package comes with vgclassic and
vgmini (the new display). Though there aren't any other displays in
existence at this point, one could be used by passing its path. The
default is vgmini.
- -s, --sort-style=<windows|ls>
- In the display, sort files with directories first (Windows) or purely by
name (ls). ls mode is the default.
- In the display, list directories in descending order (the default),
ascending (last referenced directory has the top listing), or ascending
with the current directory always first.
- -i, --file-icons=<on/off>
- Show or hide the file type icons in the display.
- -j, --jump-resize=<on/off>
- Enable or disable the automatic moving+resizing feature of vgmini.
- -z, --font-size-modifier=<+/-##>
- Increase or decrease the base font size in the display by the given
number. E.g. “-z +2” increases the window manager's default
by 2, while “-z -2” decreases the default by 2.
Define the colours used for interpreting LS_COLORS as you
would in an .Xdefaults file. This means <colour> can be a name such as
“DarkSlateGray” or a hex specification like #RRGGBB (quoted on
the command line). There are also other forms: see XParseColor
more information. The defaults are easy to read on a light coloured
background, but probably not suitable for a dark background. For that case,
these should be a good starting point (add to vgd.conf):
- -h, --help
- Show summary of options.
- -V, --version
- Show the version of the program.
vgd keeps track of the active terminal by querying the X server. This doesn't
work great for tabbed terminals such as gnome-terminal
, because they share an X window. With these, you will need to
wake up vgd when you shuffle around. If you switch to a shell and the display
doesn't automatically update, send it the refocus command C-g <TAB>.
By default vgmini is in jump/resize mode, which means it'll move to be near the
active terminal and change its dimensions to try to match. Some window
managers just don't deal with this well and the resizing can get wacky. If
you're seeing this behaviour, you can disable jump/resize mode (or switch to a
different window manager).
- If present, this file specifies a default configuration for vgd. The file
- <long_option_name> [ <whitespace>
- The '#' character can be used for comments.
- So, to always listen on port 5555, run in persistent mode, and use a
slightly smaller font than your window manager suggests, the file should
- Configuration file options can be overridden on the command line.
- Each instance of vgd listens on both an Internet-domain socket on the
specified port, and a Unix-domain socket named for that port. Connection
attempts on either socket are treated equivalently.
- Used by the display as described in dir_colors(5).
- If you encounter an issue where certain filenames do not show in the
display and you are using an encoding other than UTF-8, you may want to read
about the GLib environment variables:
- For example, for iso8859-1, run:
- G_FILENAME_ENCODING=ISO-8859-1 vgd
- Exit status is 0 if vgd daemonizes or exits successfully. If vgd fails to
obtain a connection to the X display, exit status is 3. If a socket setup
error occurs, exit status is 2. For other errors, exit status is 1.
Stephen Bach <email@example.com>