glfs/general/sysutils/gpm.xml
Randy McMurchy a41f64326a Globally removed all extraneous spaces
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8412 af4574ff-66df-0310-9fd7-8a98e5e911e0
2010-04-21 19:10:06 +00:00

332 lines
11 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY gpm-download-http "http://www.nico.schottelius.org/software/gpm/archives/gpm-&gpm-version;.tar.bz2">
<!ENTITY gpm-download-ftp " ">
<!ENTITY gpm-md5sum "6b534da16dc1b28ba828dea89e520f6f">
<!ENTITY gpm-size "1.4 MB">
<!ENTITY gpm-buildsize "9 MB">
<!ENTITY gpm-time "0.1 SBU">
]>
<sect1 id="gpm" xreflabel="GPM-&gpm-version;">
<?dbhtml filename="gpm.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>GPM-&gpm-version;</title>
<indexterm zone="gpm">
<primary sortas="a-GPM">GPM</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to GPM</title>
<para>The <application>GPM</application> (General Purpose Mouse
daemon) package contains a mouse server for the console and
<command>xterm</command>. It not only provides cut and paste support
generally, but its library component is used by various software such as
<application>Links</application> 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!</para>
&lfs65_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&gpm-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&gpm-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &gpm-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &gpm-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &gpm-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &gpm-time;</para>
</listitem>
</itemizedlist>
<!-- <bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing='compact'>
<listitem>
<para>Recommended Patch: <ulink
url="&patch-root;/gpm-&gpm-version;-segfault-1.patch"/></para>
</listitem>
<listitem>
<para>Recommended Patch: <ulink
url="&patch-root;/gpm-&gpm-version;-silent-1.patch"/></para>
</listitem>
</itemizedlist> -->
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/GPM"/></para>
</sect2>
<sect2 role="installation">
<title>Installation of GPM</title>
<para>Install <application>GPM</application> by running
the following commands:</para>
<screen><userinput>./configure --prefix=/usr --sysconfdir=/etc &amp;&amp;
make</userinput></screen>
<para>This package does not come with a test suite.</para>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install &amp;&amp;
install-info --dir-file=/usr/share/info/dir \
/usr/share/info/gpm.info &amp;&amp;
ln -v -s libgpm.so.2.1.0 /usr/lib/libgpm.so &amp;&amp;
install -v -m644 conf/gpm-root.conf /etc &amp;&amp;
install -v -m755 -d /usr/share/doc/gpm-&gpm-version; &amp;&amp;
chmod -v 755 doc/{changes,support} &amp;&amp;
chmod -v 644 doc/{changes/*,support/*,FAQ,HACK_GPM,README*} &amp;&amp;
cp -v -R doc/{FAQ,HACK_GPM,README*,changes,support} \
/usr/share/doc/gpm-&gpm-version;</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para><command>install-info ...</command>: This package installs a
<filename class="extension">.info</filename> file, but does not update the
system <filename>dir</filename> file. This command makes the update.</para>
<para><command>ln -v -s libgpm.so.2.1.0 /usr/lib/libgpm.so</command>: This
command is used to create the <filename class="extension">.so</filename>
symlink to the library.</para>
</sect2>
<sect2 role="configuration">
<title>Configuring GPM</title>
<sect3 id="gpm-init">
<title>Boot Script</title>
<indexterm zone="gpm gpm-init">
<primary sortas="f-gpm-init">gpm</primary>
</indexterm>
<para>Install the <filename>/etc/rc.d/init.d/gpm</filename> init script
included in the <xref linkend="bootscripts"/> package.</para>
<screen role="root"><userinput>make install-gpm</userinput></screen>
</sect3>
<sect3 id="gpm-config">
<title>Config Files</title>
<para><filename>/etc/gpm-root.conf</filename> and
<filename>~/.gpm-root</filename>: The default and individual user
<command>gpm-root</command> configuration files.</para>
<para><filename>/etc/sysconfig/mouse</filename>:
This file contains the name of your mouse device and the protocol which
it uses. To create this file, run the following as the
<systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>cat &gt; /etc/sysconfig/mouse &lt;&lt; "EOF"
<literal># Begin /etc/sysconfig/mouse
MDEVICE="<replaceable>&lt;yourdevice&gt;</replaceable>"
PROTOCOL="<replaceable>&lt;yourprotocol&gt;</replaceable>"
GPMOPTS="<replaceable>&lt;additional options&gt;</replaceable>"
# End /etc/sysconfig/mouse</literal>
EOF</userinput></screen>
<indexterm zone="gpm gpm-config">
<primary sortas="e-AA.gpm-root">~/.gpm-root</primary>
</indexterm>
<indexterm zone="gpm gpm-config">
<primary sortas="e-etc-gpm-root.conf">/etc/gpm-root.conf</primary>
</indexterm>
<indexterm zone="gpm gpm-config">
<primary sortas="e-etc-sysconfig-mouse">/etc/sysconfig/mouse</primary>
</indexterm>
</sect3>
<sect3>
<title>Configuration Information</title>
<para>Examples of values to set <envar>MDEVICE</envar>,
<envar>PROTOCOL</envar>, and <envar>GPMOPTS</envar> to are:</para>
<screen><literal>MDEVICE="/dev/psaux"
PROTOCOL="imps2"
GPMOPTS=""</literal></screen>
<para>A list of which protocol values are known can be found by running
<command>gpm -m <replaceable>[device]</replaceable> -t -help</command>.
The <envar>MDEVICE</envar> setting depends on which type of mouse you
have. For example, <filename>/dev/ttyS0</filename> for a serial mouse
(on Windows this is COM1), <filename>/dev/input/mice</filename> is often
used for USB mice and <filename>/dev/psaux</filename> for PS2 mice.
<envar>GPMOPTS</envar> is the 'catch all' for any additional options that
are needed for your hardware.</para>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>disable-paste, display-buttons, display-coords, get-versions, gpm,
gpm-root, hltest, mev, and mouse-test</seg>
<seg>libgpm.{so.a}</seg>
<seg>/usr/share/doc/gpm-&gpm-version;</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="disable-paste">
<term><command>disable-paste</command></term>
<listitem>
<para>is a security mechanism used to disable the paste buffer.</para>
<indexterm zone="gpm disable-paste">
<primary sortas="b-disable-paste">disable-paste</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="display-buttons">
<term><command>display-buttons</command></term>
<listitem>
<para>is a simple program that reports the mouse buttons being
pressed and released.</para>
<indexterm zone="gpm display-buttons">
<primary sortas="b-display-buttons">display-buttons</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="display-coords">
<term><command>display-coords</command></term>
<listitem>
<para>is a simple program that reports the mouse coordinates.</para>
<indexterm zone="gpm display-coords">
<primary sortas="b-display-coords">display-coords</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="get-versions">
<term><command>get-versions</command></term>
<listitem>
<para>is used to report the <application>GPM</application> library
and server versions.</para>
<indexterm zone="gpm get-versions">
<primary sortas="b-get-versions">get-versions</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gpm-prog">
<term><command>gpm</command></term>
<listitem>
<para>is a cut and paste utility and mouse server for virtual consoles.</para>
<indexterm zone="gpm gpm-prog">
<primary sortas="b-gpm">gpm</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gpm-root">
<term><command>gpm-root</command></term>
<listitem>
<para>is a default handler for <command>gpm</command>. It is used to
draw menus on the root window.</para>
<indexterm zone="gpm gpm-root">
<primary sortas="b-gpm-root">gpm-root</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="hltest">
<term><command>hltest</command></term>
<listitem>
<para>is a simple sample application using the high-level library,
meant to be read by programmers trying to use the high-level library.</para>
<indexterm zone="gpm hltest">
<primary sortas="b-hltest">hltest</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="mev">
<term><command>mev</command></term>
<listitem>
<para>is a program to report mouse events.</para>
<indexterm zone="gpm mev">
<primary sortas="b-mev">mev</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="mouse-test">
<term><command>mouse-test</command></term>
<listitem>
<para>is a tool for determining the mouse type and device it's
attached to.</para>
<indexterm zone="gpm mouse-test">
<primary sortas="b-mouse-test">mouse-test</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgpm">
<term><filename class='libraryfile'>libgpm.{so.a}</filename></term>
<listitem>
<para>contains the API functions to access the
<application>GPM</application> daemon.</para>
<indexterm zone="gpm libgpm">
<primary sortas="c-libgpm">libgpm.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>