source: general/sysutils/gpm.xml@ 0da1aad

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 0da1aad was b1532549, checked in by Pierre Labastie <pieere@…>, 4 years ago

Format sysutils

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22859 af4574ff-66df-0310-9fd7-8a98e5e911e0

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