Peter Hutterer's linux.conf.au 2020 talk on creating libinput, the unified userspace input library, and the difficulties of handling the many quirks of input devices.
Why Hacker News points people here: Cited for insight into the hard realities of Linux input handling and libinput's thinly staffed maintenance.
“One of the folks behind both Wayland and X gave a fantastic talk on the issues and the hell.”HN comment, 2024
“One of the folks behind both Wayland and X gave a fantastic talk on the issues and the hell.”
Talk on the problems with X input handling
Full comment
There are some advantages and disadvantages of the approach. However, there's just stuff that X assumes that isn't true anymore. A good example is how it handles input. How many cursors does a screen have? One machine? okay, One input device? One of the folks behind both Wayland and X gave a fantastic talk on the issues and the hell. this video
Cites itscaladevDec 2020
“libinput has a bus factor of one”
Talk about libinput's solo maintainer and input devices
Full comment
The whole usermode side of input handling depends on a project (libinput) that's been developed by a single guy over the last decade. He asked for help numerous times, reminding everyone that libinput has a bus factor of one, and received none. So either go ahead and help, or stop complaining. this video
Cites itAkronymusNov 2021
Footnote on how much work hiding complexity takes
Full comment
Yeah it takes a LOT of work to hide it [1] Also: For some stuff I want to be able to use the "arcane" parameters for some really obscure task where it is just the right flag or something. [1] this video
Cites it5e92cb50239222bDec 2021
“He asked for help numerous times and never received any.”
Backs claim that libinput's developer worked alone
Full comment
That "dev" you're criticizing here has been developing libinput solo since the beginning. He asked for help numerous times and never received any. So either step up and do the work, or stop complaining. this video libinput is yet another of those fundamental libraries that receive almost no developer attention, but get all the blame when something goes wrong: link