source: general/sysutils/gpm.xml@ 32c1b77

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 32c1b77 was 42ddc30, checked in by Xi Ruoyao <xry111@…>, 11 months ago

treewide: Replace "User Notes" with "Editor Notes"

  • Property mode set to 100644
File size: 13.7 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 &lfs113_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<screen><literal>Device Drivers ---&gt;
100 Input device support ---&gt; [CONFIG_INPUT]
101 &lt;*/M&gt; Mouse interface [CONFIG_INPUT_MOUSEDEV]</literal></screen>
102
103 <indexterm zone="gpm gpm-kernel">
104 <primary sortas="d-gpm">gpm</primary>
105 </indexterm>
106
107 </sect2>
108
109 <sect2 role="installation">
110 <title>Installation of GPM</title>
111
112 <para>
113 Install <application>GPM</application> by running
114 the following commands:
115 </para>
116
117<screen><userinput>patch -Np1 -i ../gpm-&gpm-version;-consolidated-1.patch &amp;&amp;
118./autogen.sh &amp;&amp;
119./configure --prefix=/usr --sysconfdir=/etc &amp;&amp;
120make</userinput></screen>
121
122 <para>
123 This package does not come with a test suite.
124 </para>
125
126 <para>
127 Now, as the <systemitem class="username">root</systemitem> user:
128 </para>
129
130<screen role="root"><userinput>make install &amp;&amp;
131
132install-info --dir-file=/usr/share/info/dir \
133 /usr/share/info/gpm.info &amp;&amp;
134
135rm -fv /usr/lib/libgpm.a &amp;&amp;
136ln -sfv libgpm.so.2.1.0 /usr/lib/libgpm.so &amp;&amp;
137install -v -m644 conf/gpm-root.conf /etc &amp;&amp;
138
139install -v -m755 -d /usr/share/doc/gpm-&gpm-version;/support &amp;&amp;
140install -v -m644 doc/support/* \
141 /usr/share/doc/gpm-&gpm-version;/support &amp;&amp;
142install -v -m644 doc/{FAQ,HACK_GPM,README*} \
143 /usr/share/doc/gpm-&gpm-version;</userinput></screen>
144
145 </sect2>
146
147 <sect2 role="commands">
148 <title>Command Explanations</title>
149
150 <para>
151 <command>./autogen.sh</command>: This command creates the missing
152 <command>configure</command> script.
153 </para>
154
155 <para>
156 <command>install-info ...</command>: This package installs a
157 <filename class="extension">.info</filename> file, but does not update
158 the system <filename>dir</filename> file. This command makes the update.
159 </para>
160
161 <para>
162 <command>ln -v -sfn libgpm.so.2.1.0 /usr/lib/libgpm.so</command>: This
163 command is used to create (or update) the <filename
164 class="extension">.so</filename> symlink to the library.
165 </para>
166
167 </sect2>
168
169 <sect2 role="configuration">
170 <title>Configuring GPM</title>
171
172 <sect3 id="gpm-init">
173 <title><phrase revision="sysv">Boot Script</phrase>
174 <phrase revision="systemd">Systemd Unit</phrase></title>
175
176 <indexterm zone="gpm gpm-init">
177 <primary sortas="f-gpm-init">gpm</primary>
178 </indexterm>
179
180 <para revision="sysv">
181 Install the
182 <filename>/etc/rc.d/init.d/gpm</filename> init script included in the
183 <xref linkend="bootscripts"/> package.
184 </para>
185
186 <para revision="systemd">
187 To start the <command>gpm</command> daemon at boot,
188 install the systemd unit from the <xref linkend="systemd-units"/>
189 package by running the following command as the
190 <systemitem class="username">root</systemitem> user:
191 </para>
192
193<screen role="root"><userinput>make install-gpm</userinput></screen>
194
195 </sect3>
196
197 <sect3 id="gpm-config">
198 <title>Config Files</title>
199
200 <para>
201 <filename>/etc/gpm-root.conf</filename> and
202 <filename>~/.gpm-root</filename>: The default and individual user
203 <command>gpm-root</command> configuration files.
204 </para>
205
206 <para revision="sysv">
207 <filename>/etc/sysconfig/mouse</filename>:
208 This file contains the name of your mouse device and the protocol
209 it uses. To create this file, run the following as the
210 <systemitem class="username">root</systemitem> user:
211 </para>
212
213<screen role="root" revision="sysv"><userinput>cat &gt; /etc/sysconfig/mouse &lt;&lt; "EOF"
214<literal># Begin /etc/sysconfig/mouse
215
216MDEVICE="<replaceable>&lt;yourdevice&gt;</replaceable>"
217PROTOCOL="<replaceable>&lt;yourprotocol&gt;</replaceable>"
218GPMOPTS="<replaceable>&lt;additional options&gt;</replaceable>"
219
220# End /etc/sysconfig/mouse</literal>
221EOF</userinput></screen>
222
223 <indexterm zone="gpm gpm-config">
224 <primary sortas="e-AA.gpm-root">~/.gpm-root</primary>
225 </indexterm>
226
227 <indexterm zone="gpm gpm-config">
228 <primary sortas="e-etc-gpm-root.conf">/etc/gpm-root.conf</primary>
229 </indexterm>
230
231 <indexterm zone="gpm gpm-config" revision="sysv">
232 <primary sortas="e-etc-sysconfig-mouse">/etc/sysconfig/mouse</primary>
233 </indexterm>
234
235 </sect3>
236
237 <sect3>
238 <title>Configuration Information</title>
239
240 <para revision="sysv">
241 Examples of values to set <envar>MDEVICE</envar>,
242 <envar>PROTOCOL</envar>, and <envar>GPMOPTS</envar> to are:
243 </para>
244
245<screen revision="sysv"><literal>MDEVICE="/dev/input/mice"
246PROTOCOL="imps2"
247GPMOPTS=""</literal></screen>
248
249 <para revision="sysv">
250 A list of which protocol values are known can be found by running
251 <command>gpm -m <replaceable>[device]</replaceable> -t -help</command>.
252 The <envar>MDEVICE</envar> setting depends on which type of mouse you
253 have. For example, <filename>/dev/ttyS0</filename> for a serial mouse
254 (on Windows this is COM1), <filename>/dev/input/mice</filename> is
255 often used for USB mice and <filename>/dev/psaux</filename> for PS2
256 mice. <envar>GPMOPTS</envar> is the 'catch all' for any additional
257 options that are needed for your hardware.
258 </para>
259
260 <para revision="systemd">
261 <application>GPM</application> is by default started with
262 the following parameters:
263 <parameter>-m /dev/input/mice -t imps2</parameter>. If the
264 mentioned parameters don't suit your needs, you can override
265 them by running the following commands as
266 the <systemitem class="username">root</systemitem> user:
267 </para>
268
269<screen role="nodump" revision="systemd"><userinput>install -v -dm755 /etc/systemd/system/gpm.service.d &amp;&amp;
270cat &gt; /etc/systemd/system/gpm.service.d/99-user.conf &lt;&lt; EOF
271<literal>[Service]
272ExecStart=/usr/sbin/gpm <replaceable>&lt;list of parameters&gt;</replaceable>
273</literal>EOF</userinput></screen>
274
275 </sect3>
276
277 </sect2>
278
279 <sect2 role="content">
280 <title>Contents</title>
281
282 <segmentedlist>
283 <segtitle>Installed Programs</segtitle>
284 <segtitle>Installed Library</segtitle>
285 <segtitle>Installed Directory</segtitle>
286
287 <seglistitem>
288 <seg>disable-paste, display-buttons, display-coords, get-versions, gpm,
289 gpm-root, hltest, mev, and mouse-test</seg>
290 <seg>libgpm.so</seg>
291 <seg>/usr/share/doc/gpm-&gpm-version;</seg>
292 </seglistitem>
293 </segmentedlist>
294
295 <variablelist>
296 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
297 <?dbfo list-presentation="list"?>
298 <?dbhtml list-presentation="table"?>
299
300 <varlistentry id="disable-paste">
301 <term><command>disable-paste</command></term>
302 <listitem>
303 <para>
304 is a security mechanism used to disable the paste buffer
305 </para>
306 <indexterm zone="gpm disable-paste">
307 <primary sortas="b-disable-paste">disable-paste</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
312 <varlistentry id="display-buttons">
313 <term><command>display-buttons</command></term>
314 <listitem>
315 <para>
316 is a simple program that reports the mouse buttons being
317 pressed and released
318 </para>
319 <indexterm zone="gpm display-buttons">
320 <primary sortas="b-display-buttons">display-buttons</primary>
321 </indexterm>
322 </listitem>
323 </varlistentry>
324
325 <varlistentry id="display-coords">
326 <term><command>display-coords</command></term>
327 <listitem>
328 <para>
329 is a simple program that reports the mouse coordinates
330 </para>
331 <indexterm zone="gpm display-coords">
332 <primary sortas="b-display-coords">display-coords</primary>
333 </indexterm>
334 </listitem>
335 </varlistentry>
336
337 <varlistentry id="get-versions">
338 <term><command>get-versions</command></term>
339 <listitem>
340 <para>
341 is used to report the <application>GPM</application> library
342 and server versions
343 </para>
344 <indexterm zone="gpm get-versions">
345 <primary sortas="b-get-versions">get-versions</primary>
346 </indexterm>
347 </listitem>
348 </varlistentry>
349
350 <varlistentry id="gpm-prog">
351 <term><command>gpm</command></term>
352 <listitem>
353 <para>
354 is a cut and paste utility and mouse server for virtual consoles
355 </para>
356 <indexterm zone="gpm gpm-prog">
357 <primary sortas="b-gpm">gpm</primary>
358 </indexterm>
359 </listitem>
360 </varlistentry>
361
362 <varlistentry id="gpm-root">
363 <term><command>gpm-root</command></term>
364 <listitem>
365 <para>
366 is a default handler for <command>gpm</command>. It is used to
367 draw menus on the root window
368 </para>
369 <indexterm zone="gpm gpm-root">
370 <primary sortas="b-gpm-root">gpm-root</primary>
371 </indexterm>
372 </listitem>
373 </varlistentry>
374
375 <varlistentry id="hltest">
376 <term><command>hltest</command></term>
377 <listitem>
378 <para>
379 is a simple sample application using the high-level library, meant
380 to be read by programmers trying to use the high-level library
381 </para>
382 <indexterm zone="gpm hltest">
383 <primary sortas="b-hltest">hltest</primary>
384 </indexterm>
385 </listitem>
386 </varlistentry>
387
388 <varlistentry id="mev">
389 <term><command>mev</command></term>
390 <listitem>
391 <para>
392 is a program to report mouse events
393 </para>
394 <indexterm zone="gpm mev">
395 <primary sortas="b-mev">mev</primary>
396 </indexterm>
397 </listitem>
398 </varlistentry>
399
400 <varlistentry id="mouse-test">
401 <term><command>mouse-test</command></term>
402 <listitem>
403 <para>
404 is a tool for determining the mouse type and device it's
405 attached to
406 </para>
407 <indexterm zone="gpm mouse-test">
408 <primary sortas="b-mouse-test">mouse-test</primary>
409 </indexterm>
410 </listitem>
411 </varlistentry>
412
413 <varlistentry id="libgpm">
414 <term><filename class="libraryfile">libgpm.so</filename></term>
415 <listitem>
416 <para>
417 contains the API functions to access the
418 <application>GPM</application> daemon
419 </para>
420 <indexterm zone="gpm libgpm">
421 <primary sortas="c-libgpm">libgpm.so</primary>
422 </indexterm>
423 </listitem>
424 </varlistentry>
425
426 </variablelist>
427
428 </sect2>
429
430</sect1>
Note: See TracBrowser for help on using the repository browser.