synaptics vs libinput and GNOME 3.20 no longer supporting synaptics

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

synaptics vs libinput and GNOME 3.20 no longer supporting synaptics

Raphaël Hertzog-3
[ Bcc debian-x and debian-gtk-gnome, discussion on -devel as the topic
  crosses the boundaries of multiple teams ]

Hello,

it has been some time that GNOME 3.20 users have been unable to configure
their touchpad[1] because:
1/ xserver-xorg-input-synaptics cherry-picked an upstream commit[2]
   that gives the priority to the synaptics driver to handle touchpads
2/ xserver-xorg-input-synaptics is always installed as a dependency
   of xserver-xorg-input-all
3/ gnome-control-center 3.20 uses libinput and no longer support synaptics

Clearly points 1 and 2 are in conflict: the upstream explanation is that that the
package should not be installed by default and we do install it by default.

Looking at https://anonscm.debian.org/cgit/pkg-xorg/debian/xorg.git I see
that we have unreleased changes to not install the synaptics driver by
default. Timo or Emilio, can you upload those changes?

Even with this driver no longer installed by default, this will not fix
the setup for users who are upgrading. Do you have any suggestion on how
we should handle upgrades?

My best idea right now is that gnome-control-center's postint should
do something like this:
if [ -e /usr/share/X11/xorg.conf.d/60-libinput.conf ] && \
   dpkg -s xserver-xorg-input-synaptics >/dev/null 2>&1 && \
   [ ! -e /etc/X11/xorg.conf.d/90-libinput.conf ]
then
    echo "Creating /etc/X11/xorg.conf.d/90-libinput.conf to workaround xserver-xorg-input-synaptics"
    mkdir -p /etc/X11/xorg.conf.d
    ln -sf /usr/share/X11/xorg.conf.d/60-libinput.conf /etc/X11/xorg.conf.d/90-libinput.conf
fi

And it should add a README.debian explaining that
/etc/X11/xorg.conf.d/90-libinput.conf can be replaced with an empty file
if you want to let the synaptics driver to take precedence.

The other solution is to add a "Conflicts: xserver-xorg-input-synaptics"
but this is rather extreme. Although it is somewhat in line with
the upstream views on the topic.

The best solution would be to have gnome-control-center handle properly
synaptics-managed touchpads but I don't think that upstream developers are
very open to that idea given that they have dropped the support on
purpose.

What do you think?

I also wonder what is the status of libinput support in other desktop
environments. Do KDE/XFCE/LXDE/MATE/Cinnamon/... properly configure
touchpads managed with the libinput driver? If not, then the removal of
the synaptics driver is likely to negatively affect them.

In any case, I would like to see this fixed soon as we have many users bitten
by this (I got many reports on Kali) and I'm willing to help where needed.

[1] Upstream tickets somewhat related:
https://bugzilla.gnome.org/show_bug.cgi?id=747956
https://bugzilla.gnome.org/show_bug.cgi?id=764257

[2] https://lists.x.org/archives/xorg-devel/2016-May/thread.html#49782
http://anonscm.debian.org/cgit/pkg-xorg/driver/xserver-xorg-input-synaptics.git/commit/?id=ca44e3fbf8271712db94bf8f38e363f34b7e33af
--
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: http://www.freexian.com/services/debian-lts.html
Learn to master Debian: http://debian-handbook.info/get/