General purpose mouse
GPM, short for General Purpose Mouse, is a daemon that provides mouse support for Linux virtual consoles.
Install the package. For touchpad support on a laptop you may also need to install .
-m parameter precedes the declaration of the mouse to be used. The
-t parameter precedes the type of mouse. To get a list of available types for the
-t option, run
# gpm -m /dev/input/mice -t help
ExecStart=/usr/bin/gpm -m /dev/input/mice -t imps2
Obviously, it should be edited, preferably in a systemd friendly manner, if there is another mouse type, and the service is used.
- For PS/2 mice, the parameters are:
-m /dev/psaux -t ps2
- And IBM Trackpoints need:
-m /dev/input/mice -t ps2
GPM_ARGSand second button will perform the paste function.
For more information see.
QEMU or VirtualBox
The default mouse emulated by QEMU and VirtualBox has severe problems in both gpm and x with positioning and clicking. The position becomes unsynchronized with the host, so there are areas that can't be hovered over without repeatedly exiting and re-entering the window. Clicks register in a different location than the cursor was showing at.
Both QEMU and VirtualBox solve this problem by providing emulation for a USB tablet, which gives absolute positioning. (uses this automatically.)
However, the gpm only knows how to use the emulated mouse in relative positioning mode, so these problems remain. Attempting to use other types via
-t fail to get it working properly.
pull request to add USB tablet support for VirtualBox (which also works under QEMU) and modifies the
gpm.service file to use it by default.
You may need to change which event is used. (Giving gpm the original
-m /dev/input/mice will not work.) By default:
You can determine the event to use by installingand running:
... /dev/input/event2: QEMU QEMU USB Tablet ...
If you need to give gpm additional options, you can set
- AUR Alternative based on libinput