Dynamic display configuration

Nikita Vilunov via public-inbox

15 hours ago

#84 Failed to apply configuration

~binaryplease filed ticket on kanshi todo

12 days ago


kanshi allows you to define output profiles that are automatically enabled and disabled on hotplug. For instance, this can be used to turn a laptop's internal screen off when docked.

This is a Wayland equivalent for tools like autorandr. kanshi can be used on Wayland compositors supporting the wlr-output-management protocol.

Join the IRC channel: #emersion on Libera Chat.



  • wayland-client
  • scdoc (optional, for man pages)
  • libvarlink (optional, for remote control functionality)
meson build
ninja -C build


mkdir -p ~/.config/kanshi && touch ~/.config/kanshi/config

#Configuration file

Each output profile is delimited by brackets. It contains several output directives (whose syntax is similar to sway-output(5)). A profile will be enabled if all of the listed outputs are connected.

profile {
	output LVDS-1 disable
	output "Some Company ASDF 4242" mode 1600x900 position 0,0

profile {
	output LVDS-1 enable scale 2


The upstream repository can be found on SourceHut. Open tickets on the SourceHut tracker, send patches on the mailing list.