The TrackPoint motion on this ThinkPad X390 with Ubuntu 18.04 LTS is jumpy, laggy and unusable for delicate, small movements. I have confirmed that this is likely a software issue because I've tested an external keyboard with a TrackPoint and it is fine on 16.04 but shows the same problems on 18.04.
I can see comments online that suggest that switching libinput to a newer version can help and that switching from libinput to Synaptics can help. How can the latter be done? I can see from here that a possibility is to install xserver-xorg-input-synaptics
, however, when I do this I run into problems:
$ sudo apt install xserver-xorg-input-synaptics
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies.
xserver-xorg-input-synaptics : Depends: xserver-xorg-core (>= 2:1.18.99.901)
E: Unable to correct problems, you have held broken packages.
$ sudo apt install xserver-xorg-core
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libunity-gtk2-parser0 libunity-gtk3-parser0 libxatracker2 unity-gtk-module-common xinput
Use 'sudo apt autoremove' to remove them.
Suggested packages:
xfonts-100dpi | xfonts-75dpi
The following packages will be REMOVED
ubuntu-desktop ubuntu-mate-core ubuntu-mate-desktop ubuntu-unity-desktop xorg
xserver-xorg-core-hwe-18.04 xserver-xorg-hwe-18.04 xserver-xorg-input-all-hwe-18.04
xserver-xorg-input-libinput-hwe-18.04 xserver-xorg-input-synaptics-hwe-18.04
xserver-xorg-input-wacom-hwe-18.04 xserver-xorg-video-all-hwe-18.04
xserver-xorg-video-amdgpu-hwe-18.04 xserver-xorg-video-ati-hwe-18.04
xserver-xorg-video-fbdev-hwe-18.04 xserver-xorg-video-intel-hwe-18.04
xserver-xorg-video-nouveau-hwe-18.04 xserver-xorg-video-qxl-hwe-18.04
xserver-xorg-video-radeon-hwe-18.04 xserver-xorg-video-vesa-hwe-18.04
xserver-xorg-video-vmware-hwe-18.04
The following NEW packages will be installed
xserver-xorg-core
0 to upgrade, 1 to newly install, 21 to remove and 11 not to upgrade.
Need to get 1,351 kB of archives.
After this operation, 5,808 kB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.
How might one proceed?
EDIT: As per the suggestions of @Pilot6 here, I installed xserver-xorg-input-synaptics-hwe-18.04
(which appears to have been successful) and I checked the files at directory /usr/share/X11/xorg.conf.d
:
10-amdgpu.conf
10-quirks.conf
10-radeon.conf
40-libinput.conf
51-synaptics-quirks.conf
70-synaptics.conf
70-wacom.conf
I removed the file 40-libinput.conf
and rebooted in the hopes that the Synaptics driver would kick in. It didn't, resulting in the keyboard and TrackPoint (and touchpad) being unresponsive. Luckily the touchscreen and onscreen keyboard enabled replacing the file 40-libinput.conf
. I'm not sure what to do next.
The contents of 40-libinput.conf
are as follows:
# Match on all types of devices but joysticks
Section "InputClass"
Identifier "libinput pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
The contents of 70-synaptics.conf
are as follows:
# Example xorg.conf.d snippet that assigns the touchpad driver
# to all touchpads. See xorg.conf.d(5) for more information on
# InputClass.
# DO NOT EDIT THIS FILE, your distribution will likely overwrite
# it when updating. Copy (and rename) this file into
# /etc/X11/xorg.conf.d first.
# Additional options may be added in the form of
# Option "OptionName" "value"
#
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
# This option is recommend on all Linux systems using evdev, but cannot be
# enabled by default. See the following link for details:
# http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
MatchDevicePath "/dev/input/event*"
EndSection
Section "InputClass"
Identifier "touchpad ignore duplicates"
MatchIsTouchpad "on"
MatchOS "Linux"
MatchDevicePath "/dev/input/mouse*"
Option "Ignore" "on"
EndSection
# This option enables the bottom right corner to be a right button on clickpads
# and the right and middle top areas to be right / middle buttons on clickpads
# with a top button area.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Default clickpad buttons"
MatchDriver "synaptics"
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
EndSection
# This option disables software buttons on Apple touchpads.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Disable clickpad buttons on Apple touchpads"
MatchProduct "Apple|bcm5974"
MatchDriver "synaptics"
Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
EndSection
Best Answer
For HWE installations the command would be
You can switch to
synaptics
driver by removing/usr/share/X11/xorg.conf.d/XX-libinput.conf
file.