Hello, I’m trying to figure out a way to configure four finger tap on my touchpad. I have a ThinkPad X13 Yoga, which means, I have a touchpad as well as a a touchscreen.
Now what I am aiming for is just a way to configure a command / anything for four finger taps.
I’ve tried to use libinput, which only supports 3 finger taps but 4 finger swipes (wtf dude >:c).
I’ve also tried to configure fusuma, but as far as I can see, the plugin that supports the tap gestures is archived and not supported any more.
Maybe anyone knows a good way of configuring this?
It looks like you have already read the following, but I’ll paste it here anyway for the benefit of others:
libinput implements tapping for one, two, and three fingers, where supported by the hardware, and maps those taps into a left, right, and middle button click, respectively. This mapping can be switched to left, middle and right through configuration. Not all devices support three fingers, libinput will support tapping up to whatever is supported by the hardware. libinput does not support four-finger taps or any tapping with more than four fingers, even though some hardware can distinguish between that many fingers.
The only thing I can suggest is maybe try another desktop environment that does not use libinput
(if there are any).
Output of the following command formatted according to forum requirements (3 backticks ``` before & after the pasted text) may also be useful for those wishing to help:
inxi --admin --verbosity=8 --filter --no-host --width
System:
Kernel: 6.6.65-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: acpi_pm
parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
root=UUID=5ec1417b-5839-4f9e-ad49-a218504f4848 rw quiet splash
resume=UUID=15079d66-928e-49d1-bc68-84fc9f1861d8 udev.log_priority=3
Desktop: KDE Plasma v: 6.2.4 tk: Qt v: N/A info: frameworks v: 6.8.0
wm: kwin_x11 vt: 2 dm: SDDM Distro: Manjaro base: Arch Linux
Machine:
Type: Convertible System: LENOVO product: 21F2CTO1WW
v: ThinkPad X13 Yoga Gen 4 serial: <superuser required> Chassis: type: 31
serial: <superuser required>
Mobo: LENOVO model: 21F2CTO1WW serial: <superuser required>
part-nu: LENOVO_MT_21F2_BU_Think_FM_ThinkPad X13 Yoga Gen 4
uuid: <superuser required> UEFI: LENOVO v: N3OET35W (1.18 )
date: 10/29/2024
Battery:
ID-1: BAT0 charge: 15.3 Wh (33.8%) condition: 45.3/54.7 Wh (82.9%)
power: 11.4 W volts: 15.1 min: 15.5 model: BYD 5B11H56369 type: Li-poly
serial: <filter> status: discharging cycles: 117
Memory:
System RAM: total: 32 GiB available: 31.02 GiB used: 5.4 GiB (17.4%)
Message: For most reliable report, use superuser + dmidecode.
Array-1: capacity: 32 GiB slots: 8 modules: 8 EC: None
max-module-size: 4 GiB note: est.
Device-1: Controller0-ChannelA type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-2: Controller0-ChannelB type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-3: Controller0-ChannelC type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-4: Controller0-ChannelD type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-5: Controller1-ChannelA type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-6: Controller1-ChannelB type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-7: Controller1-ChannelC type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
Device-8: Controller1-ChannelD type: LPDDR5 detail: synchronous size: 4 GiB
speed: spec: 6400 MT/s actual: 4800 MT/s volts: curr: 0.5 width (bits):
data: 16 total: 16 manufacturer: Samsung part-no: K3KL9L90CM-MGCT
serial: N/A
PCI Slots:
Permissions: Unable to run dmidecode. Root privileges required.
CPU:
Info: model: 13th Gen Intel Core i5-1335U bits: 64 type: MST AMCP
arch: Raptor Lake level: v3 note: check built: 2022+ process: Intel 7 (10nm)
family: 6 model-id: 0xBA (186) stepping: 3 microcode: 0x4123
Topology: cpus: 1x dies: 1 clusters: 4 cores: 10 threads: 12 mt: 2 tpc: 2
st: 8 smt: enabled cache: L1: 928 KiB desc: d-8x32 KiB, 2x48 KiB; i-2x32
KiB, 8x64 KiB L2: 6.5 MiB desc: 2x1.2 MiB, 2x2 MiB L3: 12 MiB
desc: 1x12 MiB
Speed (MHz): avg: 2300 min/max: 400/4600:3400 scaling: driver: intel_pstate
governor: powersave cores: 1: 2300 2: 2300 3: 2300 4: 2300 5: 2300 6: 2300
7: 2300 8: 2300 9: 2300 10: 2300 11: 2300 12: 2300 bogomips: 59916
Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
arch_capabilities arch_lbr arch_perfmon art avx avx2 avx_vnni bmi1 bmi2
bts clflush clflushopt clwb cmov constant_tsc cpuid cpuid_fault cx16 cx8
de ds_cpl dtes64 dtherm dts epb erms est f16c flush_l1d fma fpu fsgsbase
fsrm fxsr gfni hfi ht hwp hwp_act_window hwp_epp hwp_notify hwp_pkg_req
ibpb ibrs ibrs_enhanced ibt ida intel_pt invpcid lahf_lm lm mca mce
md_clear mmx monitor movbe movdir64b movdiri msr mtrr nonstop_tsc nopl nx
ospke pae pat pbe pclmulqdq pdcm pdpe1gb pebs pge pku pln pni popcnt pse
pse36 pts rdpid rdrand rdseed rdtscp rep_good sdbg sep serialize sha_ni
smap smep smx split_lock_detect ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp
syscall tm tm2 tsc tsc_adjust tsc_deadline_timer tsc_known_freq umip
user_shstk vaes vme vpclmulqdq waitpkg x2apic xgetbv1 xsave xsavec
xsaveopt xsaves xtopology xtpr
Vulnerabilities:
Type: gather_data_sampling status: Not affected
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: reg_file_data_sampling mitigation: Clear Register File
Type: retbleed status: Not affected
Type: spec_rstack_overflow status: Not affected
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
prctl
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
sanitization
Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB: conditional;
RSB filling; PBRSB-eIBRS: SW sequence; BHI: BHI_DIS_S
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel Raptor Lake-P [Iris Xe Graphics] vendor: Lenovo driver: i915
v: kernel arch: Gen-13 process: Intel 7 (10nm) built: 2022+ ports:
active: eDP-1 empty: DP-1, DP-2, DP-3, DP-4, HDMI-A-1 bus-ID: 00:02.0
chip-ID: 8086:a7a1 class-ID: 0300
Device-2: Syntek Integrated Camera driver: uvcvideo type: USB rev: 2.0
speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-4:4 chip-ID: 174f:11a8
class-ID: fe01 serial: <filter>
Display: x11 server: X.Org v: 21.1.14 with: Xwayland v: 24.1.4
compositor: kwin_x11 driver: X: loaded: modesetting alternate: fbdev,vesa
dri: iris gpu: i915 display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1200 s-dpi: 96 s-size: 508x317mm (20.00x12.48")
s-diag: 599mm (23.57")
Monitor-1: eDP-1 model: BOE Display 0x0b86 built: 2022 res: 1920x1200
hz: 60 dpi: 171 gamma: 1.2 chroma: red: x: 0.655 y: 0.322 green: x: 0.298
y: 0.600 blue: x: 0.141 y: 0.063 white: x: 0.325 y: 0.345
size: 286x179mm (11.26x7.05") diag: 337mm (13.3") ratio: 16:10
modes: 1920x1200
API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris
device: 1 drv: swrast gbm: drv: iris surfaceless: drv: iris x11: drv: iris
inactive: wayland
API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 24.2.8-arch1.1
glx-v: 1.4 direct-render: yes renderer: Mesa Intel Graphics (RPL-U)
device-ID: 8086:a7a1 memory: 15.15 GiB unified: yes
API: Vulkan v: 1.4.303 layers: 4 device: 0 type: integrated-gpu
name: Intel Graphics (RPL-U) driver: N/A device-ID: 8086:a7a1
surfaces: xcb,xlib
Audio:
Device-1: Intel Raptor Lake-P/U/H cAVS vendor: Lenovo
driver: sof-audio-pci-intel-tgl
alternate: snd_hda_intel,snd_sof_pci_intel_tgl bus-ID: 00:1f.3
chip-ID: 8086:51ca class-ID: 0403
API: ALSA v: k6.6.65-1-MANJARO status: kernel-api with: aoss
type: oss-emulator tools: alsactl,alsamixer,amixer
Server-1: JACK v: 1.9.22 status: off tools: N/A
Server-2: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Raptor Lake PCH CNVi WiFi driver: iwlwifi v: kernel
bus-ID: 00:14.3 chip-ID: 8086:51f1 class-ID: 0280
IF: wlp0s20f3 state: down mac: <filter>
IF-ID-1: wwp0s20f0u2 state: unknown mac: <filter>
IP v4: <filter> type: noprefixroute scope: global broadcast: <filter>
IP v6: <filter> type: noprefixroute scope: global
Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
WAN IP: <filter>
Bluetooth:
Device-1: Intel AX211 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-10:5 chip-ID: 8087:0033
class-ID: e001
Report: rfkill ID: hci0 rfk-id: 2 state: up address: see --recommends
Logical:
Message: No logical block device data found.
RAID:
Message: No RAID data found.
Drives:
Local Storage: total: 476.94 GiB used: 64.49 GiB (13.5%)
SMART Message: Required tool smartctl not installed. Check --recommends
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital model: WD PC
SN740 SDDQNQD-512G-1201 size: 476.94 GiB block-size: physical: 512 B
logical: 512 B speed: 63.2 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: 73117101 temp: 35.9 C scheme: GPT
Message: No optical or floppy data found.
Partition:
ID-1: / raw-size: 442.51 GiB size: 434.5 GiB (98.19%) used: 63.2 GiB (14.5%)
fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2 label: N/A
uuid: 5ec1417b-5839-4f9e-ad49-a218504f4848
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 27.9 MiB (9.3%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1 label: N/A
uuid: AAC2-5A90
Swap:
Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
compressor: zstd max-pool: 20%
ID-1: swap-1 type: partition size: 34.13 GiB used: 1.26 GiB (3.7%)
priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3 label: swap
uuid: 15079d66-928e-49d1-bc68-84fc9f1861d8
Unmounted:
Message: No unmounted partitions found.
USB:
Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 1 rev: 2.0
speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
class-ID: 0900
Hub-2: 2-0:1 info: super-speed hub ports: 3 rev: 3.1
speed: 20 Gb/s (2.33 GiB/s) lanes: 2 mode: 3.2 gen-2x2 chip-ID: 1d6b:0003
class-ID: 0900
Hub-3: 3-0:1 info: hi-speed hub with single TT ports: 12 rev: 2.0
speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
class-ID: 0900
Device-1: 3-2:2 info: Quectel Wireless Solutions EM05-G
type: communication,CDC-data driver: cdc_mbim,option,option1 interfaces: 3
rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 500mA
chip-ID: 2c7c:030a class-ID: 0a00
Device-2: 3-3:3 info: Shenzhen Goodix USB2.0 MISC type: <vendor specific>
driver: N/A interfaces: 1 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1
mode: 1.1 power: 100mA chip-ID: 27c6:6594 class-ID: ef00 serial: <filter>
Device-3: 3-4:4 info: Syntek Integrated Camera type: video driver: uvcvideo
interfaces: 5 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0
power: 500mA chip-ID: 174f:11a8 class-ID: fe01 serial: <filter>
Device-4: 3-10:5 info: Intel AX211 Bluetooth type: bluetooth driver: btusb
interfaces: 2 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1
power: 100mA chip-ID: 8087:0033 class-ID: e001
Hub-4: 4-0:1 info: super-speed hub ports: 4 rev: 3.1
speed: 10 Gb/s (1.16 GiB/s) lanes: 1 mode: 3.2 gen-2x1 chip-ID: 1d6b:0003
class-ID: 0900
Sensors:
System Temperatures: cpu: 50.0 C mobo: N/A
Fan Speeds (rpm): fan-1: 3787
Repos:
Packages: 1475 pm: pacman pkgs: 1460 libs: 386 tools: pamac,paru pm: flatpak
pkgs: 10 pm: snap pkgs: 5
Active pacman repo servers in: /etc/pacman.d/mirrorlist
1: https://ftp.gwdg.de/pub/linux/manjaro/stable/$repo/$arch
2: https://ask4.mm.fcix.net/manjaro/stable/$repo/$arch
3: https://irltoolkit.mm.fcix.net/manjaro/stable/$repo/$arch
4: https://mirrors.ocf.berkeley.edu/manjaro/stable/$repo/$arch
5: https://mirror.archlinux.tw/Manjaro/stable/$repo/$arch
Processes:
CPU top: 5 of 342
1: cpu: 97.5% command: baloo_file_extractor pid: 2096 mem: 59.6 MiB (0.1%)
2: cpu: 7.2% command: vivaldi-bin pid: 4551 mem: 257.1 MiB (0.8%)
3: cpu: 6.3% command: konsole pid: 5235 mem: 198.9 MiB (0.6%)
4: cpu: 5.7% command: vivaldi-bin pid: 2214 mem: 251.7 MiB (0.7%)
5: cpu: 3.9% command: vivaldi-bin pid: 2126 mem: 394.8 MiB (1.2%)
Memory top: 5 of 342
1: mem: 461.1 MiB (1.4%) command: plasmashell pid: 1273 cpu: 1.0%
2: mem: 394.8 MiB (1.2%) command: vivaldi-bin pid: 2126 cpu: 3.9%
3: mem: 372.4 MiB (1.1%) command: manjaro-hello started-by: python3
pid: 1588 cpu: 0.1%
4: mem: 261.8 MiB (0.8%) command: electron pid: 2440 cpu: 2.0%
5: mem: 257.1 MiB (0.8%) command: vivaldi-bin pid: 4551 cpu: 7.2%
Info:
Processes: 342 Power: uptime: 18m states: freeze,mem,disk suspend: s2idle
wakeups: 0 hibernate: platform avail: shutdown, reboot, suspend, test_resume
image: 12.4 GiB services: org_kde_powerdevil, power-profiles-daemon,
upowerd Init: systemd v: 256 default: graphical tool: systemctl
Compilers: gcc: 14.2.1 Shell: Zsh v: 5.9 default: Bash v: 5.2.37
running-in: konsole inxi: 3.3.36
It feels a bit sad, that there is no possibility / no driver that supports that on KDE. libinput with touchegg supports touchscreen 4 finger tap gestures but not on touchpads? Even libinput says it tries to support all the fingers, but it doesn’t do 4
Fusuma tap doesn’t seem to work sadly
Nukiver:
It feels a bit sad
Yes, so sad. However the suggestion from @scotty65
might well be your only recourse.
I found the following thread on the Debian forum which discusses not using libinput
– it resolved to replacing xserver-xorg-input-libinput
with xserver-xorg-input-evdev
.
Now, that post is quite old (2018) and obviously doesn’t give a clean cut solution to your problem, but it does seem to indicate that the Debian DE can be run without libinput
. By extension this may infer that others can too.
This is something you probably shouldn’t contemplate experimenting with on a rolling release distribution such as Manjaro.
Regards.
But to even contemplate that suggestion, I’d need to be able to find all input drivers and see if any (if any at all) can do 4 finger taps. Is there any good resources on this?
I only know about synaptics and libinput
Not that I know of; but others might.