I’ve re-installed my laptop from scratch with Manjaro Architect, using the i3 community edition.

My laptop has a touchpad, an ETPS/2 Elantech.

It doesn’t work out of the box.

i3 is a tiling window manager, so I have to find a way to configure the touchpad. For i3, it makes sense to use the X11 configuration.

Create a new file in the folder /etc/X11/xorg.conf.d/.

In my case, there already was a file called 30-touchpad.conf:

Section "InputClass"
    Identifier "touchpad"
    Driver "libinput"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Option "Tapping" "on"
    Option "NaturalScrolling" "true"
EndSection

The configuration uses the libinput driver, the currently recommended library to handle input devices.

I’m running the 5.4.40 kernel, which is the latest LTS kernel as of May 2020.

There is an older driver called Synaptics which is deprecated.

But try as I might, I couldn’t get libinput working.

Touchpad with i3wm

  1. Make sure that your BIOS settings use the “Basic” option for the touchpad.

  2. Install xf86-input-synaptics:

yay -S xf86-input-synaptics
  1. Create a configuration file for X11. Higher numbers take precedence over lower numbers. My current touchpad configuration is /etc/X11/xorg.conf.d/90-touchpad.conf:
Section "InputClass"
        Identifier "touchpad"
        MatchIsTouchpad "on"
        Driver "synaptics"
	Option "VertScrollDelta"  "-200"
        Option "HorizScrollDelta" "-200"

        Option "TapButton1"       "1"
        Option "TapButton2"       "3"

        Option "Protocol"         "event"
        Option "HorizHysteresis"  "0"
        Option "VertHysteresis"   "0"
        Option "PalmDetect"       "1"
        Option "PalmMinZ"         "150"
        Option "GrabEventDevice"  "1"
EndSection

There are lots of option you can choose from.

  1. Now reboot or re-log.

Further Reading