libinput/tools
Peter Hutterer 5792af9a5f Implement a quirks system to replace the udev property parsing
Previously, we had all extra device information ("This is an Apple Touchpad",
"This touchpad causes pointer jumps", etc.) in the udev hwdb. The problem with
the hwdb is that updating it is nontrivial for the average user and debugging
when things go wrong is even harder. Plus, the hwdb has a matching scheme that
is unpredictable unless one is familiar with the implementation.

This patch set moves the hwdb entries into .ini style text files, with a
simple line-based parser. A new libinput list-quirks tool can list the quirks
applied to any given device, in --verbose mode it prints all matches as they
apply or not apply.

The data files are currently unused by libinput, that comes in a later patch.
They're installed though, the defaults point to the /usr/share/libinput
directory and for *temporary* local overrides the single file
/etc/libinput/local-overrides.quirks.

Failure to parse any file is a hard failure for the quirks system, but if the
local override file doesn't exist that's fine.

THIS IS NOT A CONFIGURATION INTERFACE! None of these settings are exposed via
the libinput_device_config_* calls. There is no API guarantee for these files,
think of them as source code.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-08 14:33:35 +10:00
..
libinput-debug-events.c tools: print the number of touches for touch devices 2018-05-02 13:51:00 +10:00
libinput-debug-events.man Revert "Expose a custom acceleration profile" 2018-05-21 12:15:25 +10:00
libinput-debug-gui.c tools: debug-gui: add some extra targets for pointer acceleration testing 2018-05-21 12:18:58 +10:00
libinput-debug-gui.man tools: tidy up the libinput man pages again 2017-07-03 15:04:11 +10:00
libinput-list-devices.c Revert "Expose a custom acceleration profile" 2018-05-21 12:15:25 +10:00
libinput-list-devices.man tools: add the libinput version to the man pages 2017-07-03 11:09:03 +10:00
libinput-list-quirks.c Implement a quirks system to replace the udev property parsing 2018-06-08 14:33:35 +10:00
libinput-list-quirks.man Implement a quirks system to replace the udev property parsing 2018-06-08 14:33:35 +10:00
libinput-measure-fuzz touchpad: add a tool to measure the touchpad fuzz 2018-05-15 13:51:33 +10:00
libinput-measure-fuzz.man touchpad: add a tool to measure the touchpad fuzz 2018-05-15 13:51:33 +10:00
libinput-measure-touch-size tools: fix inverse up/down threshold handling in measure touch-size 2018-02-27 15:17:39 +10:00
libinput-measure-touch-size.man tools: fix missing words in man page 2017-11-09 13:51:35 +10:00
libinput-measure-touchpad-pressure tools: touchpad-pressure: init the lo/hi values correctly 2018-03-20 15:32:01 +10:00
libinput-measure-touchpad-pressure.man tools: add a tool to measure touch pressure 2017-07-03 15:58:58 +10:00
libinput-measure-touchpad-tap libinput-measure-touchpad-tap: use /usr/bin/env to invoke python3 2018-02-20 11:11:08 +10:00
libinput-measure-touchpad-tap.man tools: fix typo in man page 2017-11-16 13:13:28 +10:00
libinput-measure-trackpoint-range libinput-measure-trackpoint-range: minimum delta measurement 2018-05-25 16:29:20 +10:00
libinput-measure-trackpoint-range.man tools: add a command to analyze trackpoints 2017-07-20 11:53:01 +10:00
libinput-measure.c tools: fix option parsing in libinput measure 2018-02-26 13:53:40 +10:00
libinput-measure.man touchpad: add a tool to measure the touchpad fuzz 2018-05-15 13:51:33 +10:00
libinput-record-verify-yaml.py tools: libinput-record: print switch events in --with-libinput 2018-05-03 14:03:30 +10:00
libinput-record.c tools: libinput-record: fix leaking memory in the error cases 2018-05-16 14:23:12 +10:00
libinput-record.man tools: libinput-record: add support for printing libinput events 2018-03-19 14:24:15 +10:00
libinput-replay tools: libinput-replay: handle a nonzero offset for the first event 2018-04-19 16:04:41 +10:00
libinput-replay.man tools: add a libinput-replay tool 2018-03-01 11:50:46 +10:00
libinput-tool.c tools: fix invocation of subtools 2017-06-26 18:44:00 +10:00
libinput.man tools: add a libinput-record tool 2018-03-01 11:50:46 +10:00
make-ptraccel-graphs.sh tools: fix pointer acceleration graphs generation script 2018-05-11 11:43:44 +10:00
ptraccel-debug.c Revert "Expose a custom acceleration profile" 2018-05-21 12:15:25 +10:00
shared.c Revert "Expose a custom acceleration profile" 2018-05-21 12:15:25 +10:00
shared.h Revert "Expose a custom acceleration profile" 2018-05-21 12:15:25 +10:00