Bug 245966 - x11-drivers/xf86-input-synaptics: enable EVDEV unconditionally
Summary: x11-drivers/xf86-input-synaptics: enable EVDEV unconditionally
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-x11 (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-27 10:26 UTC by Vladimir Kondratyev
Modified: 2020-04-29 22:55 UTC (History)
3 users (show)

See Also:
bugzilla: maintainer-feedback? (x11)
joneum: merge-quarterly+


Attachments
x11-drivers.xf86-input-synaptics.patch (907 bytes, patch)
2020-04-27 10:26 UTC, Vladimir Kondratyev
no flags Details | Diff
x11-drivers.xf86-input-synaptics.with_option.patch (704 bytes, patch)
2020-04-27 15:14 UTC, Vladimir Kondratyev
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Kondratyev freebsd_committer freebsd_triage 2020-04-27 10:26:17 UTC
Created attachment 213847 [details]
x11-drivers.xf86-input-synaptics.patch

There are 2 reasons to do that:
1. psm backend is mostly useless nowadays as it does not support even semi-multitouch trackpad packet format. So the only functional backend is evdev.
2. x11-drivers/xf86-input-synaptics unconditionally installs high priority configuration file which effectively forbids libinput to handle touchpads that makes them unusable in Xorg if xf86-input-synaptics is compiled w/o evdev support.
Comment 1 Niclas Zeising freebsd_committer freebsd_triage 2020-04-27 13:49:34 UTC
Isn't it better to have xf86-input-synaptics not take priority over libinput?

In any case, this can't be enabled on all FreeBSD versions, evdev and libinput isn't used on FreeBSD 11, so this has to work there as well.
Comment 2 Vladimir Kondratyev freebsd_committer freebsd_triage 2020-04-27 15:14:57 UTC
Created attachment 213858 [details]
x11-drivers.xf86-input-synaptics.with_option.patch

(In reply to Niclas Zeising from comment #1)
> Isn't it better to have xf86-input-synaptics not take priority over libinput?

Generally speaking, no. See commit message:
https://github.com/freedesktop/xorg-xf86-input-synaptics/commit/59e5db025307404fbfbc82f2fb3fe91d6a3005d7

What we have to do is make xf86-input-synaptics optional. Like requested in PR/245948 

> In any case, this can't be enabled on all FreeBSD versions

Enabling evdev unconditionally does not disable psm.

> evdev and libinput isn't used on FreeBSD 11

Evdev can be enabled via kernel compile-time knobs on 11-STABLE.

If current version of patch looks too radical too you, there is more conservative variant. EVDEV option is still here but it is enabled by default on 12 and 13.
Comment 3 Niclas Zeising freebsd_committer freebsd_triage 2020-04-27 15:44:21 UTC
(In reply to Vladimir Kondratyev from comment #2)

Strange decision on their part, but I get it.

I'd prefer to keep the EVDEV option, but default it to on only on 12 and 13.  That version is approved.

Thanks for looking into this!
Comment 4 commit-hook freebsd_committer freebsd_triage 2020-04-27 23:20:03 UTC
A commit references this bug:

Author: wulf
Date: Mon Apr 27 23:19:42 UTC 2020
New revision: 533211
URL: https://svnweb.freebsd.org/changeset/ports/533211

Log:
  x11-drivers/xf86-input-synaptics: enable EVDEV by default on FreeBSD 12+

  After switching default value of kern.evdev.rcpt_mask sysctl to 12 (r360126)
  some users get their touchpads broken as they have xf86-input-synaptics port
  installed. See e.g. PR/245948. This happens as xf86-input-synaptics has
  greater priority than libinput and effectively disables latter after
  installation. Workaround this issue with enabling EVDEV support in the port.

  PR:		245966
  Approved by:	x11 (zeising)

Changes:
  head/x11-drivers/xf86-input-synaptics/Makefile
Comment 5 Niclas Zeising freebsd_committer freebsd_triage 2020-04-28 14:50:04 UTC
Wulf, can you request that this be merged to the quarterly branch as well?  It's an important enough fix, since it seems to fix things with at least KDE, that I believe it should go there.
Comment 6 Vladimir Kondratyev freebsd_committer freebsd_triage 2020-04-28 16:25:15 UTC
Re-open for MFH to quarterly as per x11-team request
Comment 7 Jochen Neumeister freebsd_committer freebsd_triage 2020-04-29 08:20:24 UTC
Approved for MFH

ports-secteam (joneum)
Comment 8 commit-hook freebsd_committer freebsd_triage 2020-04-29 20:03:49 UTC
A commit references this bug:

Author: wulf
Date: Wed Apr 29 20:03:45 UTC 2020
New revision: 533392
URL: https://svnweb.freebsd.org/changeset/ports/533392

Log:
  MFH: r533211

  x11-drivers/xf86-input-synaptics: enable EVDEV by default on FreeBSD 12+

  After switching default value of kern.evdev.rcpt_mask sysctl to 12 (r360126)
  some users get their touchpads broken as they have xf86-input-synaptics port
  installed. See e.g. PR/245948. This happens as xf86-input-synaptics has
  greater priority than libinput and effectively disables latter after
  installation. Workaround this issue with enabling EVDEV support in the port.

  PR:		245966
  Approved by:	ports-secteam (joneum)

Changes:
_U  branches/2020Q2/
  branches/2020Q2/x11-drivers/xf86-input-synaptics/Makefile