THIS DOESN'T WORK ON 18.04. Read update below.
In the end I figured this out on my own. So this is what you have to do if you encounter the same problem. Any suggestions to further refine this process is welcome.
1 - Create a config file
sudo nano /usr/share/X11/xorg.conf.d/90-mouse.conf
2 - Paste this inside:
Section "InputClass"
Identifier "mouse"
MatchIsPointer "on"
Option "AccelerationProfile" "-1"
Option "ConstantDeceleration" "2"
EndSection
Save with Ctrl+O and exit with Ctrl+X.
AccelerationProfile Disables acceleration, so if you like having acceleration on change that to "0".
ConstantDeceleration is the factor by which you wish to decrease the sensitivity. In my case I had a 1000dpi mouse and I wanted to have 500dpi sensitivity so I decelerated it by a factor of 2.
UPDATE FOR 18.04
On newer releases we use libinput props, and the way to increase or decrease pointer speed is by using the transformation matrix, with a command that looks like this:
xinput set-prop 10 144 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
The "10" in the command stands for the pointer device ID, which you get by using xinput list
, and the 144 is the matrix prop ID, which you get by using xinput list-props 10
(changing 10 by the device ID you want to change)
To decrease speed, you must change the first and second "1.000000" values in the matrix, corresponding to x and y axis speed respectively. They work as multiplies, so i.e setting those values to 2.000000 will cause your pointer to move twice as fast by means of point skipping. Changing it to 0.000000 will cause your pointer to not move at all.
System Settings > Mouse & touchpad > Pointer speed
?