News: 0001589079

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

libinput 1.30-rc1 Released With Lua Plugin Support

([X.Org] 26 Minutes Ago libinput 1.30)


The libinput input handling library for the Linux desktop on both Wayland and X.Org based systems is rolling out Lua plug-in support. Out today is libinput 1.30-rc1 with the initial infrastructure for supporting plug-ins written in the Lua scripting language.

Back in May we covered [1]libinput's preparations for a Lua-based plug-in system for more easily modifying devices and input events. Lua was chosen over WebAssembly since it's very easy to sandbox while fulfilling all of their other design needs. It can allow for new plug-ins to be rather easily created for libinput, for example:

libinput 1.29.901 was released today as the first release candidate toward libinput 1.30. Red Hat input expert Peter Hutterer describes the Lua plug-in support as:

"Lua plugins sit logically between libinput and the kernel and can modify the evdev event stream from a device. A plugin may change the capabilities of a device (e.g. enabling/disabling event codes) and/or change selected events. Further more, plugins can disable certain internal libinput features. This allows for custom-tailored behavior for cases where hardware doesn't match what libinput expects (or is willing to implement), e.g. mice with very specific button debouncing behaviours.

A set of example plugins are available in the plugins/ directory of the libinput source tree. For plugins to work they need to be enabled by the caller via the new libinput_plugin_system_load_plugins() call. Until further notice the meson option -Dautoload-plugins will automatically load plugins if the caller does not do so. This option may be removed in the future."

Libinput 1.30 is also supporting the custom pointer acceleration method to accelerate high resolution scroll wheel events, detecting virtual devices created by uinput or virtual machines, and various device-specific quirks added.

More details on the changes coming for libinput 1.30 via the [2]mailing list announcement .



[1] https://www.phoronix.com/news/libinput-Lua-Plugin-System

[2] https://lore.freedesktop.org/wayland-devel/20251104060812.GA2260310@quokka/T/#u



It's no longer a question of staying healthy. It's a question of finding
a sickness you like.
-- Jackie Mason