GPM-1.20.7

Introduction to GPM

The GPM (General Purpose Mouse daemon) package contains a mouse server for the console and xterm. It not only provides cut and paste support generally, but its library component is used by various software such as Links to provide mouse support to the application. It is useful on desktops, especially if following (Beyond) Linux From Scratch instructions; it's often much easier (and less error prone) to cut and paste between two console windows than to type everything by hand!

This package is known to build and work properly using an LFS-8.3 platform.

Package Information

Additional Downloads

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/GPM

Installation of GPM

Install GPM by running the following commands:

sed -i -e 's:<gpm.h>:"headers/gpm.h":' src/prog/{display-buttons,display-coords,get-versions}.c &&
patch -Np1 -i ../gpm-1.20.7-glibc_2.26-1.patch &&
./autogen.sh                                &&
./configure --prefix=/usr --sysconfdir=/etc &&
make

This package does not come with a test suite.

Now, as the root user:

make install                                          &&

install-info --dir-file=/usr/share/info/dir           \
             /usr/share/info/gpm.info                 &&

ln -sfv libgpm.so.2.1.0 /usr/lib/libgpm.so            &&
install -v -m644 conf/gpm-root.conf /etc              &&

install -v -m755 -d /usr/share/doc/gpm-1.20.7/support &&
install -v -m644    doc/support/*                     \
                    /usr/share/doc/gpm-1.20.7/support &&
install -v -m644    doc/{FAQ,HACK_GPM,README*}        \
                    /usr/share/doc/gpm-1.20.7

Command Explanations

./autogen.sh: This command creates the missing configure script.

install-info ...: This package installs an .info file, but does not update the system dir file. This command makes the update.

ln -v -sfn libgpm.so.2.1.0 /usr/lib/libgpm.so: This command is used to create (or update) the .so symlink to the library.

Configuring GPM

Systemd Unit

To start the gpm daemon at boot, install the systemd unit from the blfs-systemd-units-20180105 package by running the following command as the root user:

make install-gpm

Config Files

/etc/gpm-root.conf and ~/.gpm-root: The default and individual user gpm-root configuration files.

Configuration Information

GPM is by default started with the following parameters: -m /dev/input/mice -t imps2. If the mentioned parameters don't suit your needs, you can override them by running the following commands as the root user:

install -v -dm755 /etc/systemd/system/gpm.service.d
echo "ExecStart=/usr/sbin/gpm <list of parameters>" > /etc/systemd/system/gpm.service.d/99-user.conf

Contents

Installed Programs: disable-paste, display-buttons, display-coords, get-versions, gpm, gpm-root, hltest, mev, and mouse-test
Installed Library: libgpm.{so.a}
Installed Directory: /usr/share/doc/gpm-1.20.7

Short Descriptions

disable-paste

is a security mechanism used to disable the paste buffer.

display-buttons

is a simple program that reports the mouse buttons being pressed and released.

display-coords

is a simple program that reports the mouse coordinates.

get-versions

is used to report the GPM library and server versions.

gpm

is a cut and paste utility and mouse server for virtual consoles.

gpm-root

is a default handler for gpm. It is used to draw menus on the root window.

hltest

is a simple sample application using the high-level library, meant to be read by programmers trying to use the high-level library.

mev

is a program to report mouse events.

mouse-test

is a tool for determining the mouse type and device it's attached to.

libgpm.{so.a}

contains the API functions to access the GPM daemon.

Last updated on 2018-08-18 14:53:19 -0700