site  contact  subhomenews

Mix libinput evdev and synaptics drivers

October 22, 2025 — BarryK

We are discussing a problem with the Xorg evdev driver not so good for a mouse:

https://forum.puppylinux.com/viewtopic.php?t=15866

There is also mouse misbehaviour with Chrome and Chromium from version 140.x onward, as reported here:

https://issues.chromium.org/issues/445495197

We have a Xorg config file, that dates right back to the Puppy days, that assigns the evdev driver to everything; /etc/X11/xorg.conf.d/10-evdev-puppy.conf

What I have now done is remove it, or rather, renamed to '10-evdev-puppy.confOLD', so it won't be used. Then, created a new file /etc/X11/xorg.conf.d/10-evdev-puppy.conf (kept same name as Xorg Wizard reads and writes to it):

Section "InputClass"
Identifier "evdev pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "Protocol" "IMPS/2" #mouse0protocol
#Option "Emulate3Buttons"
#Option "Emulate3Timeout" "50"
Option "ZAxisMapping" "4 5" #scrollwheel
EndSection

Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "XkbRules" "xorg"
Option "XkbModel" "pc102" #xkbmodel0
Option "XkbLayout" "us" #xkeymap0
#Option "XkbVariant" "" #xkbvariant0
EndSection

Section "InputClass"
Identifier "evdev tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection

Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection

..."touchpad" is not listed above, as that will be grabbed by /usr/share/X11/xorg.conf.d/70-synaptics.conf

As far as I can see, with this configuration, the mouse will be grabbed by libinput, the keyboard by evdev, and touchpad by synaptics.   

Tags: easy