Hubbry Logo
search
logo
Kmscon
Kmscon
current hub
724801

Kmscon

logo
Community Hub0 Subscribers
Write something...
Be the first to start a discussion here.
Be the first to start a discussion here.
See all
Kmscon

Kmscon is a virtual console that runs in userspace which David Hermann created to replace the Linux console, a terminal built into the Linux kernel. Kmscon uses the KMS driver for its output, it is multiseat-capable, and supports internationalized keyboard input and UTF-8 terminal output. The input support is implemented using X keyboard extension (XKB). Development of Kmscon was halted in March 2015. The project officially resumed in 2025, adopting the codebase from a fork maintained by Aetf since 2011. There was a successor project called systemd-consoled but that project was later dropped in July 2015.

Kmscon supports printing the full set of Unicode glyphs and is not limited by console encoding as the Linux console. While the only hard dependency is udev, kmscon can optionally be compiled to use Mesa for hardware acceleration of the console, and the pango library for improved font rendering.

The adoption of XKB for input allows kmscon to accept the full range of available keyboard layouts for the X.Org Server and Wayland compositors for input and makes it possible to use the same layout both in graphical environment and in terminal.

It has mouse support including select/copy/paste and scrolling.

The VT system in the Linux kernel dates to 1993, and does not implement out-of-the-box multiseat support. It supports up to 63 VTs, but only one VT can be active at any given time. This necessitates additional steps to configure multiseat support. kmscon will[clarification needed] enable multiseat out-of-the-box.

If one seat's display server is running on VT 7 and another seat's display server is running on VT 8, then only one of these two seats can be used at a time. To use the other seat, a VT switch must be initiated.

To make all seats usable at the same time, there are a few options:

In 2011, Jesse Barnes wrote in his blog about the possible userspace DRM-based implementation of the virtual terminal, that would dissolve the need for the Linux framebuffer and virtual terminal (VT) subsystems in the Linux kernel. Motivated by this blog post, David Herrmann implemented the basic functionality of virtual terminal.

See all
User Avatar
No comments yet.