The Linux Kernel Console Is Being Killed Off

CONFIG_VT has been part of the Linux kernel going back to the early 90's but hasn't really advanced much in that time. David Herrmann, a developer that got going on this new initiative as a student part of Google Summer of Code, wants a new solution that's built with multi-seat and multiple monitors in mind, incorporates Unicode font rendering, XKB-like keyboard handling, graphics hardware acceleration, VT220-VT510 compatibility, and other features.
Among his principal complaints about the current terminal is that it's a user-interface in kernel-space, the code is poorly maintained, handles keyboards badly, produces bad font rendering, misses out on mode-setting and multi-head support, contains no multi-seat awareness, and only has limited hot-plugging handling, limited to VT102 compliance.
David Herrmann simply isn't ranting and doing nothing to show for it, but he's already written KMSCON, the key component that's a DRM-based terminal emulator, FBLOG as a frame-buffer driver for kernel longs, has played around with Wayland Virtual Terminals, wrote a native terminal emulator for Wayland, developed a VESA BIOS DRM kernel driver, and even better documented the DRM library. He's also planning to write a UEFI DRM driver.
With his user-space terminal solution he's planning for Pango font rendering, using XCB, and even OpenGL support for acceleration. He does acknowledge that some people like the VT being kept in kernel space for an oops / panic screen and as an emergency console that always works, but he's making sure his new implementation won't be limited and as a result wrote the frame-buffer kernel log driver and is making other intelligent design decisions. KMSCON is also highly modular with its only hard dependencies being libxkbcommon, libudev, libpixman, and glibc. The DRM library (libdrm) is optional.
KMSCON is already available in Arch Linux as a package while his work is being looked at as a feature for Fedora 20 in late 2013. There's no active progress on the Debian/Ubuntu front for integration.
For those wishing to find out more details about KMSCON and his related projects for trying to disable CONFIG_VT for the Linux kernel, David Herrmann's FOSDEM 2013 video is embedded below (though the recording is mostly useful just for audio as the camera was knocked during the presentation; hopefully he'll be publishing his slides soon).
56 Comments