buffyboard: track virtual terminals with /sys/class/tty/tty0/active

This commit is contained in:
Vladimir Stoiakin 2025-07-03 14:19:10 +00:00 committed by Johannes Marbach
parent d0ec4777cc
commit c4b3729047
12 changed files with 283 additions and 335 deletions

View file

@ -45,6 +45,17 @@ for and, if found, merged in the following order:
after every draw operation. This has a negative performance impact.
Default: false.
*ignore_unused_terminals* = <true|false>
If true, buffyboard won't automatically update the layout of a new terminal and
draw the keyboard, if the terminal is not opened by any process. In this case
SIGUSR1 should be sent to buffyboard to update the layout. This quirk was introduced to resolve a race between buffyboard and systemd-logind according to the following scenario:
- A user switches to a new virtual terminal
- Buffyboard opens the terminal and changes the number of rows
- systemd-logind sees that the terminal is opened by some other process and don't start getty@.service
The race is resolved by enabling this option and installing a drop-in file
for getty@.service that sends SIGUSR1 to buffyboard. Default: true.
# SEE ALSO
*buffyboard*(1)