Ubuntu 17.04
Follow the instructions below, but change:
xinput set-prop 10 "Device Accel Constant Deceleration" 3
To:
xinput set-prop 10 "libinput Accel Speed" -0.4
Thank you @tambre. Not sure this is quite as ideal as the old setting, but it's pretty close.
xset m 3
That still works pretty darn well. Need to figure out how to save so this is the default on reboot.
Ubuntu 16.04
@JackTravis 's answer was incredibly helpful, but I think it's worth updating for 16.04 because the xorg.conf file has moved and been split into multiple files. Before writing this answer, I tried using xset
and played around with the xinput
settings for a while before deciding that JackTravis's xinput
ConstantDeceleration
3
setting was the best one for both my Logitech M510 on my desktop and some older wired mouse on my laptop.
1. List Mice
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech M510 id=10 [slave pointer (2)]
⎜ ↳ Synaptics Inc. Composite TouchPad / TrackPoint id=13 [slave pointer (2)]
...
My mouse was the Logitech M510
, id=10
so I'm going to use that in this example. You will need to replace that with whatever your mouse is called. Now, use xinput set-prop
to try out various settings until your mouse moves exactly as you want it to. The 10
in the following corresponds to the id=10
for my mouse on my system. You'll probably have to change that.
2. Change Your Settings Temporarily
$ xinput set-prop 10 "Device Accel Constant Deceleration" 3
If you're curious what other settings affect your device try
$ xinput --list-props 10
To clear the settings after I had really messed them up, all I had to do was unplug and re-plug my mouse.
3. Save the New Setting Permanently
If you like ConstantDeceleration of 3, then you need to add an xorg.conf file the new Ubuntu 16.04 way: by adding a new file in /usr/share/X11/xorg.conf.d/
You will want to change Logitech M510
and logitech-m510
in the file name to match your mouse. I think the 60-
at the beginning of the file name is the priority with which these files are loaded. The following one-line shell command is what I put in my machineSetup.sh
file in Dropbox so that I can quickly customize a new machine exactly how I like it within minutes of a fresh install:
sudo sh -c "echo 'Section \"InputClass\"\n\
Identifier \"My awesome new mouse\"\n\
MatchProduct \"Logitech M510\"\n\
Option \"ConstantDeceleration\" \"3\"\n\
EndSection\n' > /usr/share/X11/xorg.conf.d/60-logitech-m510.conf"
OR, if you want to do it the GUI way, open an editor as root then paste and edit the following into /usr/share/X11/xorg.conf.d/60-<whatever>.conf
Section "InputClass"
Identifier "My Awesome Blue Mouse"
MatchProduct "Logitech M510"
Option "ConstantDeceleration" "3"
EndSection
4. Reboot
That's it. Just reboot and verify that the new settings took effect.