如何将 TrackPoint 驱动程序从默认的 libinput 更改为较新的 libinput 或更改回 Synaptics?

如何将 TrackPoint 驱动程序从默认的 libinput 更改为较新的 libinput 或更改回 Synaptics?

这款搭载 Ubuntu 18.04 LTS 的 ThinkPad X390 上的 TrackPoint 运动跳跃、滞后,无法用于精细的小动作。我已确认这可能是软件问题,因为我已经测试了带有 TrackPoint 的外接键盘,它在 16.04 上没有问题,但在 18.04 上也出现了同样的问题。

我在网上看到一些评论,建议将 libinput 切换到较新的版本会有所帮助,而将 libinput 切换到 Synaptics 也会有所帮助。后者该怎么做?我可以从这里一种可能性是安装xserver-xorg-input-synaptics,但是,当我这样做时遇到了问题:

$ 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.

我们该如何进行呢?


编辑:根据@Pilot6 的建议这里,我安装了xserver-xorg-input-synaptics-hwe-18.04(似乎已经成功)并且检查了目录中的文件/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

我删除了文件40-libinput.conf并重新启动,希望 Synaptics 驱动程序能够启动。但并没有,导致键盘和 TrackPoint(以及触摸板)无响应。幸运的是,触摸屏和屏幕键盘启用了替换文件40-libinput.conf。我不知道下一步该怎么做。

内容40-libinput.conf如下:

# 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

内容70-synaptics.conf如下:

# 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

答案1

为了氢能资源安装命令如下

sudo apt install xserver-xorg-input-synaptics-hwe-18.04

您可以synaptics通过删除/usr/share/X11/xorg.conf.d/XX-libinput.conf文件来切换到驱动程序。

答案2

因此,从建议@Hi-Angel 我已经将 libinput 从默认版本升级,这似乎大大改善了情况。步骤如下:

sudo apt install check doxygen libev-dev python3-sphinx
sudo pip3 install recommonmark sphinx_rtd_theme    
git clone https://gitlab.freedesktop.org/libinput/libinput
cd libinput
meson --prefix=/usr builddir/
ninja -C builddir/
sudo ninja -C builddir/ install
sudo systemd-hwdb update

然后重新启动。

相关内容