source: general/sysutils/gpm.xml@ c8b719a

12.0 12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18
Last change on this file since c8b719a was c8b719a, checked in by Douglas R. Reno <renodr@…>, 10 months ago

Tags

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