how to install driver for middle button clickpad scrolling
Solution 1
As suggested by mikewhatever, the driver for Arch created by Taegil Bae (esrevinu) can be packaged for Ubuntu and installed using a procedure described by dalcde. The procedure was updated by faf0, since a tar.gz file from the procedure by dalcde became unavailable in December 2015. The procedure is as follows:
#!/bin/bash
sudo apt-get install git
sudo apt-get build-dep xserver-xorg-input-evdev xserver-xorg-input-synaptics
mkdir tmp-trackpoint
cd tmp-trackpoint
git clone https://aur.archlinux.org/xf86-input-evdev-trackpoint.git
git clone git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-evdev
git clone git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-input-synaptics
mv xf86-input-evdev-trackpoint arch
mv xserver-xorg-input-evdev evdev
mv xserver-xorg-input-synaptics synaptics
cp synaptics/src/{eventcomm.c,eventcomm.h,properties.c,synaptics.c,synapticsstr.h,synproto.c,synproto.h} evdev/src
cp synaptics/include/synaptics-properties.h evdev/src
cp arch/*.patch evdev
cd evdev
patch -p1 -i 0001-implement-trackpoint-wheel-emulation.patch
patch -p1 -i 0004-disable-clickpad_guess_clickfingers.patch
patch -p1 -i 0006-add-synatics-files-into-Makefile.am.patch
dpkg-buildpackage -d
cd ..
sudo dpkg -i xserver-xorg-input-evdev_*.deb
sudo apt-get remove xserver-xorg-input-synaptics
sudo mkdir /etc/X11/xorg.conf.d/
sudo cp arch/90-evdev-trackpoint.conf /etc/X11/xorg.conf.d
The procedure above works on Ubuntu 14.04.
Solution 2
I bought recently ThinkPad W540 (high-end type) and that new generation ClickPad has loomed large in my mind... All the time something was wrong in new 14.04. But finally i got it working!
For Ubuntu (14.04 LTS and previous) you need newer evdev and synaptics (until it wont be implemented), to get it work with AUR's arch pkg. I did some fixes and enchantments in script - below you got it's content.
to get it work, open terminal as normal user, go to some work DIR and type:
touch install.sh
chmod +x install.sh
gedit install.sh
than copy/paste script, save and close gedit. Go back to terminal and run it as normal user:
./install.sh
SCRIPT:
#!/bin/bash
echo --------------------------------------------------------------------
echo If you miss some dependances or packages, than install them first...
echo --------------------------------------------------------------------
sudo apt-get install libevdev-dev libevdev2
sudo apt-get build-dep xserver-xorg-input-evdev xserver-xorg-input-synaptics
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-evdev_2.9.0.orig.tar.gz
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-evdev_2.9.0-1ubuntu1.diff.gz
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-evdev_2.9.0-1ubuntu1.dsc
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-synaptics_1.8.0.orig.tar.gz
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-synaptics_1.8.0-1~exp2ubuntu2.diff.gz
wget https://launchpad.net/ubuntu/+archive/primary/+files/xserver-xorg-input-synaptics_1.8.0-1~exp2ubuntu2.dsc
dpkg-source -x --no-check xserver-xorg-input-evdev_2.9.0-1ubuntu1.dsc
dpkg-source -x --no-check xserver-xorg-input-synaptics_1.8.0-1~exp2ubuntu2.dsc
wget https://aur.archlinux.org/packages/xf/xf86-input-evdev-trackpoint/xf86-input-evdev-trackpoint.tar.gz
tar -xzf xf86-input-evdev-trackpoint.tar.gz
mv xf86-input-evdev-trackpoint arch
mv xserver-xorg-input-evdev-2.9.0 evdev
mv xserver-xorg-input-synaptics-1.8.0 synaptics
cp synaptics/src/{eventcomm.c,eventcomm.h,properties.c,synaptics.c,synapticsstr.h,synproto.c,synproto.h} evdev/src
cp synaptics/include/synaptics-properties.h evdev/src
cp arch/*.patch evdev
cd evdev
patch -p1 -i 0001-implement-trackpoint-wheel-emulation.patch
patch -p1 -i 0004-disable-clickpad_guess_clickfingers.patch
patch -p1 -i 0006-add-synatics-files-into-Makefile.am.patch
dpkg-buildpackage
cd ..
sudo dpkg -i xserver-xorg-input-evdev_*.deb
sudo apt-get remove xserver-xorg-input-synaptics
sudo mkdir /etc/X11/xorg.conf.d/
sudo cp arch/90-evdev-trackpoint.conf /etc/X11/xorg.conf.d
echo If everything was OK, than logout/reboot and enjoy fully working ThinkPad Trackpoint/ClickPad
echo If you want to deactivate touch area of ClickPad for pure TrackPoint usage
echo edit /etc/X11/xorg.conf.d/90-evdev-trackpoint.conf and change "0" to "1" at line
echo Option "AreaBottomEdge" "0"
echo Regards, T_Send
Solution 3
Upgrade to Ubuntu 15.10 or greater, and install xserver-xorg-input-libinput
It's not installed by default. See: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-evdev/+bug/1246683
Related videos on Youtube
d3pd
Updated on September 18, 2022Comments
-
d3pd over 1 year
I want to use this
as this:
Specifically, I'm trying to enable scroll wheel emulation using the TrackPoint when the middle button 2 of the clickpad is pressed.
I've examined the
xev
output when a TrackPoint is used for scrolling with dedicated buttons (button 4 is recognised as a scroll up operation and button 5 is recognised as a scroll down operation) but the behaviour is different when using the clickpad buttons (button 2 is recognised in isolation). It appears that a modified driver is needed in order to enable scrolling using the middle button of the clickpad.Such a driver appears to be available here:
https://aur.archlinux.org/packages/xf86-input-evdev-trackpoint/
How could this driver be installed in Ubuntu?
-
mikewhatever about 10 yearsHere is a better one: askubuntu.com/questions/2557/…
-
mikewhatever about 10 yearsAnyway, if you want to try installing it, here is how.
-
d3pd about 10 yearsExcellent! That repackaging worked perfectly. It was really bothering me. Thank you so much!
-
-
Calin about 9 yearsUnfortunately this answer does not work for ubuntu 14.04
-
d3pd about 9 yearsYeah, that's right. Watch for a solution here.
-
Nikopol over 7 yearsThis works for Debian Stretch as well, but you can't build the package because of some compilation errors. To fix those you have to add
#include <xorg-server.h>
to theeventcomm.h
andsynproto.h
files. Kudos go to this answer: askubuntu.com/a/768681/483416.