head0
user-space virtual terminal
One user-space virtual terminal is supplied as a pre-packaged suite of connected service bundles:
a suite of ttylogin@vcN
service bundles providing TUI login services
a suite of terminal-emulator@vcN
service bundles running console-terminal-emulator to provide terminal emulation to the TUI login sessions and presenting themselves as /run/dev/vcN
a console-multiplexor@head0
service bundle running console-multiplexor to multiplex among the lower vcN
terminals and presenting itself as /run/dev/head0mux
a console-input-method@head0
service bundle running console-input-method to layer an input method on top of the multiplexor and presenting itself as /run/dev/head0
a console-fb-realizer@head0
service bundle running console-fb-realizer to realize the overall combination at /run/dev/head0
onto some I/O devices
The console-multiplexor@head0
service bundle expects to find symbolic links matching the shell wildcard vc[0-9]*
in its service directory, pointing to the virtual terminals that it is multiplexing amongst.
Reconfiguring what terminals are multiplexed is therefore a matter of adding, removing, or changing a symbolic link in that link farm and restarting the multiplexor service, which can be done on the fly without affecting the applications running in the TUI login sessions.
The console-input-method@head0
service bundle is configured with several environment variables:
lower
the name of the virtual terminal supplied by console-multiplexor@head0
, which is initially configured as /run/dev/head0mux
chinese1
the optional name of the CIN file to use for the 1st Hanzi/Kanji/Hanja conversion mode
chinese2
the optional name of the CIN file to use for the 2nd Hanzi/Kanji/Hanja conversion mode
kana
the optional names of the two CIN files to use for the Hiragana and Katakana conversion modes
hangeul
the optional names of the CIN file to use for the Hangeul conversion mode
romaji
the optional names of the CIN file to use for the Romaji conversion mode
The console-fb-realizer@head0
service bundle is configured with several environment variables:
KERNEL_VT
the number (Linux) or device file name (BSDs) of the old-style kernel virtual terminal that is used for I/O device sharing
OWNED_DEVICES
the optional names of devices that the user-vt-realizer
group is granted rw access to at service startup and restart
DETACHED_UGEN_DEVICES
the optional names of devices, that are expected to be generic USB (a.k.a. ugen
) devices, that the kernel HID device drivers are told to detach from at service startup and restart
FONTS
the optional command-line options and arguments specifying font files to load
INPUTS
the optional command-line options and arguments specifying HIDs to use
KBDMAP
the optional name of the keyboard map file to load
FRAMEBUFFER
the names of the framebuffer device file to use (Linux only)