NAME
kmscon.conf - Configuration file for KMS/DRM based System Console
DESCRIPTION
kmscon.conf is the configuration file to control the behavior of kmscon and adjust it to your system-setup. It allows to remap the bindings of keyboard-shortcuts, define the desired keyboard-layout, select font attributes for text-rendering, hardware-accelerationn, orientation of output and much more.
Below is a complete list of all recognized Options, their meaning and possible values. In section Example is a typical real-world sample of a configuration to guide you in creating your own.
EXAMPLE
Here is a real-world example of a typical kmscon.conf file:
### General Options ### verbose ### Seat Options ### vt=1 switchvt ### Session Options ### session-max=6 session-control ### Terminal Options ### term=kmscon ### Input Options ### xkb-model=pc102 xkb-layout=de xkb-repeat-delay=200 xkb-repeat-rate=65 mouse dpms-timeout=600 ### Video Options ### drm hwaccel gpus=all multi-monitor=clone rotate=normal ### Font Options ### font-engine=freetype font-size=18 font-name=Ubuntu Mono
In any line, every character are ignored after a # and considered to be a comment. whitespace are ignored at begining and ending of a line, and around the '=' when assigning a parameter
OPTIONS
Below is a complete list of all recognized options, their meaning and possible values.
verbose
Make kmscon be very chatty about what it is doing. It prints to stdout unless redirected. Off if not present in kmsconf.conf or commented out. (default: off)
debug
Let kmscon be even more chatty. The text-output goes to stdout or any file it was redirected to. Off if not present in kmsconf.conf or commented out. (default: off)
silent
Suppress notices and warnings. (default: off)
configdir
Path to config directory. (default: /etc/kmscon)
vt
Select which VT to run on. (default: auto)
switchvt
Automatically switch to VT. (default: on)
libseat
Use libseat for seat management. (default: off)
session-max
Maximum number of sessions. (default: 50)
session-control
Allow keyboard session-control. (default: off)
login
Start the given login process instead of the default process; all arguments following '--' will be be parsed as argv to this process. No more options after '--' will be parsed so use it at the end of the argument string. (default: /bin/login -p)
term
Value of the TERM environment variable for the child process. (default: kmscon)
reset-env
Reset environment before running child process. (default: on)
issue
Display issue files before the login prompt. Use no-issue to let the login process handle it. (default: on)
issue-path
Colon-separated list of issue files and directories to read, ordered by precedence. It implements uapi masking, so if there are multiple files, with the same name, only the first will be parsed. (default: "/etc/issue:/etc/issue.d:/run/issue:/run/issue.d:/usr/lib/issue:/usr/lib/issue.d")
asciicast
Path to an asciicast animation to play after opening the terminal session. The animation is stopped on keyboard input. (default: unset)
asciicast-loop
Loop the asciicast animation. (default: off)
backspace-delete
Send delete character when backspace is pressed. (default: on)
palette
Select the used color palette. (default: default)
sb-size
Size of the scrollback-buffer in lines. (default: 1000)
bell
Enable bell forwarding to the VT. When enabled, the BEL character (0x07) from applications is forwarded to the underlying VT. (default: off)
blink
Enable cursor and text blink. When enabled, the cursor will blink on the screen, and text with blink attribute will blink too. (default: on)
xkb-model
Set XkbModel for input devices. (default: unset)
xkb-layout
Set XkbLayout for input devices. (default: unset)
xkb-variant
Set XkbVariant for input devices. (default: unset)
xkb-options
Set XkbOptions for input devices. (default: unset)
xkb-keymap
Use a predefined keymap for input devices. (default: unset)
xkb-repeat-delay
Initial delay for key-repeat in ms. (default: 250)
xkb-repeat-rate
Delay between two key-repeats in ms. (default: 50)
mouse
Enable mouse/touchpad/trackpoint in kmscon (default: on). It allows to select, and copy/paste text with a pointing device, and also to scroll with the mouse wheel. It's still experimental, and may not work with specific devices.
natural-scrolling
Invert the mouse wheel direction (natural scrolling). When enabled, scrolling up with the wheel scrolls down and vice versa. (default: off)
soft-cursor
Force software cursor, if hardware cursor is not working properly. (default: off)
dpms-timeout
Set screen timeout in seconds (default: 600 = 10 minutes). When enabled, the screen will automatically turn off (DPMS OFF) after the specified period of keyboard and mouse inactivity. Any keyboard or mouse input will turn the screen back on and reset the timer. This feature is useful for power saving on systems where the screen is not always needed. Set to 0 to disable.
grab-scroll-up
Shortcut to scroll up. (default: <Shift>Up)
grab-scroll-down
Shortcut to scroll down. (default: <Shift>Down)
grab-page-up
Shortcut to scroll page up. (default: <Shift>Prior)
grab-page-down
Shortcut to scroll page down. (default: <Shift>Next)
grab-zoom-in
Shortcut to increase font size. (default: <Ctrl>Plus)
grab-zoom-out
Shortcut to decrease font size. (default: <Ctrl>Minus)
grab-session-next
Switch to next session. (default: <Ctrl><Logo>Right)
grab-session-prev
Switch to previous session. (default: <Ctrl><Logo>Left)
grab-session-close
Close current session. (default: <Ctrl><Logo>BackSpace)
grab-terminal-new
Create new terminal session. (default: <Ctrl><Logo>Return)
grab-rotate-cw
Rotate output clock-wise. (default: <Logo>Plus)
grab-rotate-ccw
Rotate output counter-clock-wise. (default: <Logo>Minus)
grab-reboot
Reboot the system when this keyboard shortcut is pressed. This option is disabled by default. The reboot behavior follows the system-wide setting in /proc/sys/kernel/ctrl-alt-del: when set to 0 (default), a graceful reboot is performed by sending SIGINT to init (PID 1); when set to a value greater than 0, an immediate hard reboot is performed after syncing disk buffers. Example: grab-reboot=<Ctrl><Alt>Delete (default: disabled)
drm
Use DRM if available. (default: on)
hwaccel
Use 3D hardware-acceleration if available. (default: off)
gpus
GPU selection mode. (default: all)
use-original-mode
Use the original KMS video mode. (default: off)
mode
Set the desired output mode. The given width, rate and height must match a supported mode exactly for this option to have any effect; if there is no supported mode that matches exactly, or if there is an error when using the desired mode, then the default mode (first valid mode found) will be used. Gpu, connector, and rate are optional, but if gpu is specified the connector must also be specified. You can find the name of the gpu and connector looking at kmscon logs. journalctl -u kmsconvt@* | grep display This parameter can be specified multiple times to set different modes for different gpus/connectors.
Modesetting is only supported in DRM mode, so this option does nothing with fbdev. However, fbset can still be used to externally set the mode when fbdev is in use.
multi-monitor {clone,largest,scaled}
When there are multiple monitors, this option controls how the monitors are used.
`clone': All monitors will have the same size. The smallest monitor will be used to determine the size.
`largest': The largest monitor will be used to determine the size. The other monitors will be disabled. If multiple monitors have the largest size, they will all be used.
`scaled': All monitors will display the same number of columns and rows based on the smallest monitor, with larger monitors scaling up their font size to fill the screen.
default: scaled
screen {gpu}[{connector}]{config}
Select the desired screen configuration. gpu and connector are optional. config is one of 'normal', 'upside-down', 'left', 'right' and 'disabled'. If config is 'disabled' kmscon won't use this display, unless it is the only available display. If gpu/connector are not specified, this will apply to all available displays. You can specify multiple screen configurations, to setup different configurations for different displays.
font-engine
Font engine to use. (default: freetype)
font-size
Font height in pixels. 0 will auto-detect (default: 0)
font-name
Font name to use. (default: monospace)
FILES
Main configuration file
/etc/kmscon/kmscon.conf
Seat specific configuration file
/etc/kmscon/{seat_name}.kmscon.conf