libevdev 1.13.1
Introduction to libevdev
The libevdev package contains common
functions for Xorg input drivers.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
libevdev Dependencies
Optional
Doxygen-1.9.8 and
Valgrind-3.22.0 (optional for tests)
Kernel Configuration
Enable the following options in the kernel configuration and recompile
the kernel if necessary:
Device Drivers --->
Input device support --->
-*- Generic input layer (needed for keyboard, mouse, ...) [INPUT]
<*/M> Event interface [INPUT_EVDEV]
If you want to test this package with full coverage,
the following options are needed as well:
Device Drivers --->
Input device support --->
-*- Generic input layer (needed for keyboard, mouse, ...) [INPUT]
[*] Miscellaneous devices ---> [INPUT_MISC]
<*/M> User level driver support [INPUT_UINPUT]
If you build this as a module, it needs to be inserted before the test suite
runs.
Installation of libevdev
Install libevdev by running the following
commands:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--buildtype=release \
-Ddocumentation=disabled &&
ninja
The regression tests can be run as the root
user with ninja
test, in a graphical session. You need to have enabled
the CONFIG_INPUT_UINPUT setting in the kernel for full test coverage.
If it is enabled as a module, the module is named
uinput and needs to be loaded before running the
tests. Note that on some systems, the
tests may cause a hard lockup and require a reboot. On laptops, the
system will go into Sleep and need to be woken up to finish the test
suites.
Now, as the root
user:
ninja install
Contents
Installed Xorg Programs:
libevdev-tweak-device, mouse-dpi-tool, and touchpad-edge-detector
Installed Xorg Library:
libevdev.so
Installed Xorg Directory:
$XORG_PREFIX/include/libevdev-1.0
Short Descriptions
libevdev-tweak-device |
is a tool to change some kernel device properties
|
mouse-dpi-tool |
is a tool to estimate the resolution of a mouse
|
touchpad-edge-detector |
touchpad-edge-detector is a tool that reads the touchpad events
from the kernel and calculates the minimum and maximum for the x
and y coordinates, respectively
|
libevdev.so
|
is a library of Xorg driver input functions
|
Xorg Evdev Driver-2.10.6
Introduction to Xorg Evdev Driver
The Xorg Evdev Driver package contains a Generic
Linux input driver for the Xorg X server. It handles keyboard, mouse, touchpads
and wacom devices, though for touchpad and wacom advanced handling,
additional drivers are required.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Xorg Evdev Driver Dependencies
Required
libevdev-1.13.1,
mtdev-1.1.6, and
Xorg-Server-21.1.9
Installation of Xorg Evdev Driver
Install Xorg Evdev Driver by running the following
commands:
./configure $XORG_CONFIG &&
make
This package does not come with a test suite.
Now, as the root
user:
make install
Contents
Installed Xorg Driver:
evdev_drv.so
Short Descriptions
evdev_drv.so
|
is an Xorg input driver for Linux generic event devices
|
libinput-1.24.0
Introduction to Libinput
libinput is a library that handles
input devices for display servers and other applications that
need to directly deal with input devices.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
libinput Dependencies
Required
libevdev-1.13.1 and
mtdev-1.1.6
Optional
Valgrind-3.22.0 (to run the tests),
GTK+-3.24.38 (to build the GUI event viewer),
libunwind-1.6.2 (required for tests),
libwacom-2.9.0,
sphinx-7.2.6 (required to build documentation), and
pyparsing-3.1.1 (for one non-root test)
Kernel Configuration for Running the Libinput Test Suite
Although libinput works with the same kernel configuration used by libevdev-1.13.1, its extensive test suite requires the presence of
/dev/uinput
(as well as both Valgrind-3.22.0
and libunwind-1.6.2).
If you wish to run the full tests, enable the following option in the kernel
configuration and recompile the kernel if necessary:
Device Drivers --->
Input device support --->
-*- Generic input layer (needed for keyboard, mouse, ...) [INPUT]
[*] Miscellaneous devices ---> [INPUT_MISC]
<*/M> User level driver support [INPUT_UINPUT]
If you build this as a module, it needs to be inserted before the test suite
runs.
On an Xorg system you will also need to prevent the events generated
during the test suite from interfering with your desktop. Copy the
file test/50-litest.conf
into
${XORG_PREFIX}/share/X11/xorg.conf.d
and restart X. For further information see
libinput test suite.
Installation of Libinput
Install libinput by running the following
commands:
mkdir build &&
cd build &&
meson setup --prefix=$XORG_PREFIX \
--buildtype=release \
-Ddebug-gui=false \
-Dtests=false \
-Dlibwacom=false \
-Dudev-dir=/usr/lib/udev \
.. &&
ninja
Note
If you want to run the full tests, remove -Dtests from the
meson command above. Please read "kernel
configuration for running the libinput test suite" (above).
If you have enabled the full tests, you can run the main tests
as the root user by executing:
ninja test. A very large number of tests will
be run. One test fails on wayland.
Now, as the root
user:
ninja install
If you have passed -Ddocumentation=true
to
meson, you can install the generated documentation
by running the following commands as the root
user:
install -v -dm755 /usr/share/doc/libinput-1.24.0/html &&
cp -rv Documentation/* /usr/share/doc/libinput-1.24.0/html
Command Explanations
--buildtype=release
: Specify a buildtype
suitable for stable releases of the package, as the default may
produce unoptimized binaries.
-Ddebug-gui=false
: This switch
disables creation of a visual debug helper for libinput. Remove
if you want it, and you have GTK+-3.24.38 installed.
-Dtests=false
: This switch disables compilation of
the main tests. Even with the tests defined as false, you can still run
the first four minor tests, as a regular user, but one will be skipped if
pyparsing-3.1.1 is not installed.
-Dlibwacom=false
: Remove this option if you
have libwacom-2.9.0 installed, or if you are installing
GNOME.
-Dudev-dir=/usr/lib/udev
: In case that the
value of XORG_PREFIX
is not set to
/usr
, this option prevents
the package from installing Udev rules and helpers into
$XORG_PREFIX/lib/udev
which
is not searched by Udev daemon. This option is not needed for
systems with XORG_PREFIX
set to
/usr
, but does no harm.
-Ddocumentation=true
: This switch enables
generation of the documentation. Add it if you want to generate
the documentation. You must have Doxygen-1.9.8 and
Graphviz-9.0.0 installed.
Contents
Installed Programs:
libinput
Installed Libraries:
libinput.so
Installed Directories:
/etc/libinput,
$XORG_PREFIX/libexec/libinput,
$XORG_PREFIX/share/libinput, and (optionally)
$XORG_PREFIX/share/doc/libinput-1.24.0
Short Descriptions
libinput |
is a set of tools to interface with the
libinput library
|
libinput.so
|
contains API functions for handling input devices
|
Xorg Libinput Driver-1.4.0
Introduction to Xorg Libinput Driver
The X.Org Libinput Driver is a thin wrapper
around libinput and allows for libinput to be used for input devices in
X. This driver can be used as drop-in replacement for evdev and
synaptics.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Xorg Libinput Driver Dependencies
Required
libinput-1.24.0 and
Xorg-Server-21.1.9
Installation of Xorg Libinput Driver
Install Xorg Libinput Driver by running the following
commands:
./configure $XORG_CONFIG &&
make
To test the results, issue make check.
Now, as the root
user:
make install
Contents
Installed Xorg Driver:
libinput_drv.so
Short Descriptions
libinput_drv.so
|
is an Xorg input driver for mouse, keyboard, touchpad,
touchscreen, and tablet devices
|
Xorg Synaptics Driver-1.9.2
Introduction to Xorg Synaptics Driver
The Xorg Synaptics Driver package contains
the X.Org Input Driver, support programs and SDK for Synaptics
touchpads. Even though the evdev driver can handle touchpads very well,
this driver is required if you want to use advanced features like multi
tapping, scrolling with touchpad, turning the touchpad off while
typing, etc.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Xorg Synaptics Driver Dependencies
Required
libevdev-1.13.1 and
Xorg-Server-21.1.9
Installation of Xorg Synaptics Driver
Install Xorg Synaptics Driver by running the following
commands:
./configure $XORG_CONFIG &&
make
This package does not come with a test suite.
Now, as the root
user:
make install
Contents
Installed Programs:
synclient and syndaemon
Installed Xorg Driver:
synaptics_drv.so
Short Descriptions
synclient |
is a command line utility used to query and modify Synaptics
driver options
|
syndaemon |
is a program that monitors keyboard activity and disables the
touchpad when the keyboard is being used
|
synaptics_drv.so
|
is an Xorg input driver for touchpads
|
Xorg Wacom Driver-1.2.0
Introduction to Xorg Wacom Driver
The Xorg Wacom Driver package contains the
X.Org X11 driver and SDK for Wacom and Wacom-like tablets. It is not
required to use a Wacom tablet, the
xf86-input-evdev driver can handle these
devices without problems.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Xorg Wacom Drivers Dependencies
Required
Xorg-Server-21.1.9
Optional
Doxygen-1.9.8 and
Graphviz-9.0.0
Kernel Configuration
To use a Wacom tablet with USB interface, enable the following
options in your kernel configuration and recompile. Note that
other configuration options could be required for tablet with a
serial or bluetooth interface:
Device Drivers --->
[*] HID bus support ---> [HID_SUPPORT]
{*/M} HID bus core support [HID]
Special HID drivers --->
<*/M> Wacom Intuos/Graphire tablet support (USB) [HID_WACOM]
USB HID support --->
<*/M> USB HID transport layer [USB_HID]
[*] USB support ---> [USB_SUPPORT]
<*/M> Support for Host-side USB [USB]
Installation of Xorg Wacom Driver
Install Xorg Wacom Driver by running the following
commands:
./configure $XORG_CONFIG &&
make
To test the results, issue: make check.
Now, as the root
user:
make install
Contents
Installed Programs:
isdv4-serial-debugger, isdv4-serial-inputattach, and xsetwacom
Installed Xorg Driver:
wacom_drv.so
Short Descriptions
xsetwacom |
is a commandline utility used to query
and modify wacom driver settings
|
wacom_drv.so
|
is an Xorg input driver for Wacom devices
|