source: general/sysutils/gpm.xml@ 1fc53421

12.1 12.2 gimp3 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128
Last change on this file since 1fc53421 was 7ffcdc1, checked in by Xi Ruoyao <xry111@…>, 12 months ago

gpm: Add ac_cv_path_emacs=no, and add texlive as optional dependency for doc

  • Property mode set to 100644
File size: 15.0 KB
RevLine 
[52d29f7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[52d29f7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[fd5ee81]7 <!ENTITY gpm-download-http "&sources-anduin-http;/gpm/gpm-&gpm-version;.tar.bz2">
8 <!ENTITY gpm-download-ftp "&sources-anduin-ftp;/gpm/gpm-&gpm-version;.tar.bz2">
[6d2cc23]9 <!ENTITY gpm-md5sum "bf84143905a6a903dbd4d4b911a2a2b8">
10 <!ENTITY gpm-size "820 KB">
11 <!ENTITY gpm-buildsize "7.4 MB">
[fada515]12 <!ENTITY gpm-time "0.1 SBU">
[52d29f7]13]>
14
[5db3785e]15<sect1 id="gpm" xreflabel="GPM-&gpm-version;">
[20e3223]16 <?dbhtml filename="gpm.html"?>
17
18
19 <title>GPM-&gpm-version;</title>
20
21 <indexterm zone="gpm">
22 <primary sortas="a-GPM">GPM</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to GPM</title>
27
[b1532549]28 <para>
29 The <application>GPM</application> (General Purpose Mouse daemon)
30 package contains a mouse server for the console and
31 <command>xterm</command>. It not only provides cut and paste support
32 generally, but its library component is used by various software such as
33 <application>Links</application> to provide mouse support to the
34 application. It is useful on desktops, especially if following (Beyond)
35 Linux From Scratch instructions; it's often much easier (and less error
36 prone) to cut and paste between two console windows than to type
37 everything by hand!
38 </para>
[20e3223]39
[c8b719a]40 &lfs120_checked;
[aafcfb8]41
[20e3223]42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
[b1532549]45 <para>
46 Download (HTTP): <ulink url="&gpm-download-http;"/>
47 </para>
[20e3223]48 </listitem>
49 <listitem>
[b1532549]50 <para>
51 Download (FTP): <ulink url="&gpm-download-ftp;"/>
52 </para>
[20e3223]53 </listitem>
54 <listitem>
[b1532549]55 <para>
56 Download MD5 sum: &gpm-md5sum;
57 </para>
[20e3223]58 </listitem>
59 <listitem>
[b1532549]60 <para>
61 Download size: &gpm-size;
62 </para>
[20e3223]63 </listitem>
64 <listitem>
[b1532549]65 <para>
66 Estimated disk space required: &gpm-buildsize;
67 </para>
[20e3223]68 </listitem>
69 <listitem>
[b1532549]70 <para>
71 Estimated build time: &gpm-time;
72 </para>
[20e3223]73 </listitem>
74 </itemizedlist>
75
[fabf04f7]76 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
77 <itemizedlist spacing="compact">
78 <listitem>
79 <para>
80 Required patch:
[725343af]81 <ulink url="&patch-root;/gpm-&gpm-version;-consolidated-1.patch"/>
[fabf04f7]82 </para>
83 </listitem>
84 </itemizedlist>
85
[42ddc30]86 <para condition="html" role="usernotes">Editor Notes:
[6c42d4e]87 <ulink url="&blfs-wiki;/GPM"/></para>
[1039de3]88
[7ffcdc1]89 <bridgehead renderas="sect3">GPM Dependencies</bridgehead>
90
91 <bridgehead renderas="sect4">Optional</bridgehead>
92 <para role="optional">
93 <xref linkend="texlive"/> (for documentation)
94 </para>
[20e3223]95 </sect2>
96
[a2bed70]97 <sect2 role="kernel" id='gpm-kernel'>
98 <title>Kernel Configuration</title>
99
100 <para>
101 Enable the following option in the kernel configuration and recompile the
102 kernel if necessary:
103 </para>
104
[e7cd19a]105 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
106 href="gpm-kernel.xml"/>
[a2bed70]107
108 <indexterm zone="gpm gpm-kernel">
109 <primary sortas="d-gpm">gpm</primary>
110 </indexterm>
111
112 </sect2>
113
[20e3223]114 <sect2 role="installation">
115 <title>Installation of GPM</title>
116
[b1532549]117 <para>
118 Install <application>GPM</application> by running
119 the following commands:
120 </para>
[20e3223]121
[7ffcdc1]122<screen><userinput>patch -Np1 -i ../gpm-&gpm-version;-consolidated-1.patch &amp;&amp;
123./autogen.sh &amp;&amp;
124./configure --prefix=/usr --sysconfdir=/etc ac_cv_path_emacs=no &amp;&amp;
[9a9d63d4]125make</userinput></screen>
126
[7ffcdc1]127 <para>
128 If <xref linkend='texlive'/> is installed, build the GPM manual as
129 dvi, ps, and pdf formats:
130 </para>
131
132<screen remap='doc'><userinput>make -C doc gpm.{dvi,ps} &amp;&amp;
133dvipdfm doc/gpm.dvi -o doc/gpm.pdf</userinput></screen>
134
[b1532549]135 <para>
136 This package does not come with a test suite.
137 </para>
[d260aaf4]138
[b1532549]139 <para>
140 Now, as the <systemitem class="username">root</systemitem> user:
141 </para>
[d260aaf4]142
[8459178]143<screen role="root"><userinput>make install &amp;&amp;
[9a9d63d4]144
[8459178]145install-info --dir-file=/usr/share/info/dir \
146 /usr/share/info/gpm.info &amp;&amp;
[cb098fac]147
[e403b61]148rm -fv /usr/lib/libgpm.a &amp;&amp;
[df9fb20]149ln -sfv libgpm.so.2.1.0 /usr/lib/libgpm.so &amp;&amp;
[8459178]150install -v -m644 conf/gpm-root.conf /etc &amp;&amp;
[d691f65]151
[8459178]152install -v -m755 -d /usr/share/doc/gpm-&gpm-version;/support &amp;&amp;
153install -v -m644 doc/support/* \
154 /usr/share/doc/gpm-&gpm-version;/support &amp;&amp;
155install -v -m644 doc/{FAQ,HACK_GPM,README*} \
[d691f65]156 /usr/share/doc/gpm-&gpm-version;</userinput></screen>
[52d29f7]157
[7ffcdc1]158 <para>
159 If <xref linkend='texlive'/> is installed and you've built GPM
160 manual as dvi, ps, and pdf formats, install them as the &root; user:
161 </para>
162
163<screen role='root' remap='doc'><userinput>install -vm644 doc/gpm.{dvi,ps,pdf} /usr/share/doc/gpm-&gpm-version;</userinput></screen>
164
[20e3223]165 </sect2>
[014d11ad]166
[d691f65]167 <sect2 role="commands">
[20e3223]168 <title>Command Explanations</title>
169
[b1532549]170 <para>
171 <command>./autogen.sh</command>: This command creates the missing
172 <command>configure</command> script.
173 </para>
[8459178]174
[7ffcdc1]175 <para>
176 <parameter>ac_cv_path_emacs=no</parameter>: This variable works around
177 an issue causing the package fail to build with
178 <xref linkend='emacs'/> installed. It also suppresses the
179 installations of some <quote>Emacs support files</quote> shipped with
180 GPM. These files are quite outdated and they should be superseded
181 with <xref linkend='emacs'/> built-in GPM support. If you need to use
182 <xref linkend='emacs'/> in Linux console with mouse support, you
183 should install (or reinstall) <xref linkend='emacs'/>
184 <emphasis role='bold'>after</emphasis> GPM.
185 </para>
186
[b1532549]187 <para>
188 <command>install-info ...</command>: This package installs a
189 <filename class="extension">.info</filename> file, but does not update
190 the system <filename>dir</filename> file. This command makes the update.
191 </para>
[014d11ad]192
[b1532549]193 <para>
194 <command>ln -v -sfn libgpm.so.2.1.0 /usr/lib/libgpm.so</command>: This
195 command is used to create (or update) the <filename
196 class="extension">.so</filename> symlink to the library.
197 </para>
[014d11ad]198
[d691f65]199 </sect2>
[20e3223]200
201 <sect2 role="configuration">
202 <title>Configuring GPM</title>
203
204 <sect3 id="gpm-init">
[1552ac8]205 <title><phrase revision="sysv">Boot Script</phrase>
206 <phrase revision="systemd">Systemd Unit</phrase></title>
[52d29f7]207
[20e3223]208 <indexterm zone="gpm gpm-init">
209 <primary sortas="f-gpm-init">gpm</primary>
210 </indexterm>
[014d11ad]211
[b1532549]212 <para revision="sysv">
213 Install the
214 <filename>/etc/rc.d/init.d/gpm</filename> init script included in the
215 <xref linkend="bootscripts"/> package.
216 </para>
[1552ac8]217
218 <para revision="systemd">
219 To start the <command>gpm</command> daemon at boot,
220 install the systemd unit from the <xref linkend="systemd-units"/>
221 package by running the following command as the
222 <systemitem class="username">root</systemitem> user:
223 </para>
[09f7011]224
[20e3223]225<screen role="root"><userinput>make install-gpm</userinput></screen>
[014d11ad]226
[20e3223]227 </sect3>
[014d11ad]228
[20e3223]229 <sect3 id="gpm-config">
230 <title>Config Files</title>
[34f86ab]231
[b1532549]232 <para>
233 <filename>/etc/gpm-root.conf</filename> and
234 <filename>~/.gpm-root</filename>: The default and individual user
235 <command>gpm-root</command> configuration files.
236 </para>
[34f86ab]237
[b1532549]238 <para revision="sysv">
239 <filename>/etc/sysconfig/mouse</filename>:
240 This file contains the name of your mouse device and the protocol
241 it uses. To create this file, run the following as the
242 <systemitem class="username">root</systemitem> user:
243 </para>
[014d11ad]244
[1552ac8]245<screen role="root" revision="sysv"><userinput>cat &gt; /etc/sysconfig/mouse &lt;&lt; "EOF"
[20e3223]246<literal># Begin /etc/sysconfig/mouse
[014d11ad]247
[1039de3]248MDEVICE="<replaceable>&lt;yourdevice&gt;</replaceable>"
249PROTOCOL="<replaceable>&lt;yourprotocol&gt;</replaceable>"
250GPMOPTS="<replaceable>&lt;additional options&gt;</replaceable>"
[014d11ad]251
[20e3223]252# End /etc/sysconfig/mouse</literal>
253EOF</userinput></screen>
254
255 <indexterm zone="gpm gpm-config">
256 <primary sortas="e-AA.gpm-root">~/.gpm-root</primary>
257 </indexterm>
258
259 <indexterm zone="gpm gpm-config">
260 <primary sortas="e-etc-gpm-root.conf">/etc/gpm-root.conf</primary>
261 </indexterm>
262
[1552ac8]263 <indexterm zone="gpm gpm-config" revision="sysv">
[20e3223]264 <primary sortas="e-etc-sysconfig-mouse">/etc/sysconfig/mouse</primary>
265 </indexterm>
[09f7011]266
[20e3223]267 </sect3>
[014d11ad]268
[20e3223]269 <sect3>
270 <title>Configuration Information</title>
[014d11ad]271
[b1532549]272 <para revision="sysv">
273 Examples of values to set <envar>MDEVICE</envar>,
274 <envar>PROTOCOL</envar>, and <envar>GPMOPTS</envar> to are:
275 </para>
[014d11ad]276
[1552ac8]277<screen revision="sysv"><literal>MDEVICE="/dev/input/mice"
[004a8284]278PROTOCOL="imps2"
[20e3223]279GPMOPTS=""</literal></screen>
280
[b1532549]281 <para revision="sysv">
282 A list of which protocol values are known can be found by running
283 <command>gpm -m <replaceable>[device]</replaceable> -t -help</command>.
284 The <envar>MDEVICE</envar> setting depends on which type of mouse you
285 have. For example, <filename>/dev/ttyS0</filename> for a serial mouse
286 (on Windows this is COM1), <filename>/dev/input/mice</filename> is
287 often used for USB mice and <filename>/dev/psaux</filename> for PS2
288 mice. <envar>GPMOPTS</envar> is the 'catch all' for any additional
289 options that are needed for your hardware.
290 </para>
[20e3223]291
[1552ac8]292 <para revision="systemd">
293 <application>GPM</application> is by default started with
294 the following parameters:
295 <parameter>-m /dev/input/mice -t imps2</parameter>. If the
296 mentioned parameters don't suit your needs, you can override
[a0418e7]297 them by running the following commands as
[1552ac8]298 the <systemitem class="username">root</systemitem> user:
299 </para>
300
[78fb227]301<screen role="nodump" revision="systemd"><userinput>install -v -dm755 /etc/systemd/system/gpm.service.d &amp;&amp;
302cat &gt; /etc/systemd/system/gpm.service.d/99-user.conf &lt;&lt; EOF
303<literal>[Service]
304ExecStart=/usr/sbin/gpm <replaceable>&lt;list of parameters&gt;</replaceable>
305</literal>EOF</userinput></screen>
[1552ac8]306
[20e3223]307 </sect3>
308
309 </sect2>
310
311 <sect2 role="content">
312 <title>Contents</title>
313
314 <segmentedlist>
315 <segtitle>Installed Programs</segtitle>
[d284bee]316 <segtitle>Installed Library</segtitle>
317 <segtitle>Installed Directory</segtitle>
[20e3223]318
319 <seglistitem>
[9a9d63d4]320 <seg>disable-paste, display-buttons, display-coords, get-versions, gpm,
321 gpm-root, hltest, mev, and mouse-test</seg>
[e403b61]322 <seg>libgpm.so</seg>
[d691f65]323 <seg>/usr/share/doc/gpm-&gpm-version;</seg>
[20e3223]324 </seglistitem>
325 </segmentedlist>
326
327 <variablelist>
328 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
329 <?dbfo list-presentation="list"?>
330 <?dbhtml list-presentation="table"?>
331
332 <varlistentry id="disable-paste">
333 <term><command>disable-paste</command></term>
334 <listitem>
[b1532549]335 <para>
[4c24eb0a]336 is a security mechanism used to disable the paste buffer
[b1532549]337 </para>
[20e3223]338 <indexterm zone="gpm disable-paste">
339 <primary sortas="b-disable-paste">disable-paste</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
[9a9d63d4]344 <varlistentry id="display-buttons">
345 <term><command>display-buttons</command></term>
346 <listitem>
[b1532549]347 <para>
348 is a simple program that reports the mouse buttons being
[4c24eb0a]349 pressed and released
[b1532549]350 </para>
[9a9d63d4]351 <indexterm zone="gpm display-buttons">
352 <primary sortas="b-display-buttons">display-buttons</primary>
353 </indexterm>
354 </listitem>
355 </varlistentry>
356
357 <varlistentry id="display-coords">
358 <term><command>display-coords</command></term>
359 <listitem>
[b1532549]360 <para>
[4c24eb0a]361 is a simple program that reports the mouse coordinates
[b1532549]362 </para>
[9a9d63d4]363 <indexterm zone="gpm display-coords">
364 <primary sortas="b-display-coords">display-coords</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 <varlistentry id="get-versions">
370 <term><command>get-versions</command></term>
371 <listitem>
[b1532549]372 <para>
373 is used to report the <application>GPM</application> library
[4c24eb0a]374 and server versions
[b1532549]375 </para>
[9a9d63d4]376 <indexterm zone="gpm get-versions">
377 <primary sortas="b-get-versions">get-versions</primary>
378 </indexterm>
379 </listitem>
380 </varlistentry>
381
[20e3223]382 <varlistentry id="gpm-prog">
383 <term><command>gpm</command></term>
384 <listitem>
[b1532549]385 <para>
[4c24eb0a]386 is a cut and paste utility and mouse server for virtual consoles
[b1532549]387 </para>
[20e3223]388 <indexterm zone="gpm gpm-prog">
389 <primary sortas="b-gpm">gpm</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="gpm-root">
395 <term><command>gpm-root</command></term>
396 <listitem>
[b1532549]397 <para>
398 is a default handler for <command>gpm</command>. It is used to
[4c24eb0a]399 draw menus on the root window
[b1532549]400 </para>
[20e3223]401 <indexterm zone="gpm gpm-root">
402 <primary sortas="b-gpm-root">gpm-root</primary>
403 </indexterm>
404 </listitem>
405 </varlistentry>
406
407 <varlistentry id="hltest">
408 <term><command>hltest</command></term>
409 <listitem>
[b1532549]410 <para>
411 is a simple sample application using the high-level library, meant
[4c24eb0a]412 to be read by programmers trying to use the high-level library
[b1532549]413 </para>
[20e3223]414 <indexterm zone="gpm hltest">
415 <primary sortas="b-hltest">hltest</primary>
416 </indexterm>
417 </listitem>
418 </varlistentry>
419
420 <varlistentry id="mev">
421 <term><command>mev</command></term>
422 <listitem>
[b1532549]423 <para>
[4c24eb0a]424 is a program to report mouse events
[b1532549]425 </para>
[20e3223]426 <indexterm zone="gpm mev">
427 <primary sortas="b-mev">mev</primary>
428 </indexterm>
429 </listitem>
430 </varlistentry>
431
432 <varlistentry id="mouse-test">
433 <term><command>mouse-test</command></term>
434 <listitem>
[b1532549]435 <para>
436 is a tool for determining the mouse type and device it's
[4c24eb0a]437 attached to
[b1532549]438 </para>
[20e3223]439 <indexterm zone="gpm mouse-test">
440 <primary sortas="b-mouse-test">mouse-test</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
[2db2a0c4]445 <varlistentry id="libgpm">
[e403b61]446 <term><filename class="libraryfile">libgpm.so</filename></term>
[2db2a0c4]447 <listitem>
[b1532549]448 <para>
449 contains the API functions to access the
[4c24eb0a]450 <application>GPM</application> daemon
[b1532549]451 </para>
[2db2a0c4]452 <indexterm zone="gpm libgpm">
[e403b61]453 <primary sortas="c-libgpm">libgpm.so</primary>
[2db2a0c4]454 </indexterm>
455 </listitem>
456 </varlistentry>
457
[20e3223]458 </variablelist>
459
460 </sect2>
[f45b1953]461
462</sect1>
Note: See TracBrowser for help on using the repository browser.