source: general/sysutils/bluez.xml@ 0f124fa

11.0 ken/refactor-virt lazarus qt5new trunk
Last change on this file since 0f124fa was 0f124fa, checked in by Douglas R. Reno <renodr@…>, 4 months ago

Update to enchant-2.3.0
Update to unrar-6.0.7
Correct my previous commit in bluez
Mercurial: VIM uses Git now, so update the description

  • Property mode set to 100644
File size: 16.1 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 bluez-download-http "&kernel-dl;/linux/bluetooth/bluez-&bluez-version;.tar.xz">
8 <!ENTITY bluez-download-ftp " ">
9 <!ENTITY bluez-md5sum "8ba89fa8caa8274a6f9056c494596d0c">
10 <!ENTITY bluez-size "2.0 MB">
11 <!ENTITY bluez-buildsize "76 MB (add 79 MB for tests)">
12 <!ENTITY bluez-time "0.2 SBU (using parallelism=4; add 0.2 SBU for tests)">
13]>
14
15<sect1 id="bluez" xreflabel="BlueZ-&bluez-version;">
16 <?dbhtml filename="bluez.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>BlueZ-&bluez-version;</title>
23
24 <indexterm zone="bluez">
25 <primary sortas="a-BlueZ">BlueZ</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to BlueZ</title>
30
31 <para>
32 The <application>BlueZ</application> package contains the
33 Bluetooth protocol stack for Linux.
34 </para>
35
36 &lfs101_checked;
37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>
42 Download (HTTP): <ulink url="&bluez-download-http;"/>
43 </para>
44 </listitem>
45 <listitem>
46 <para>
47 Download (FTP): <ulink url="&bluez-download-ftp;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download MD5 sum: &bluez-md5sum;
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download size: &bluez-size;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Estimated disk space required: &bluez-buildsize;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated build time: &bluez-time;
68 </para>
69 </listitem>
70 </itemizedlist>
71<!--
72 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
73 <itemizedlist spacing="compact">
74 <listitem>
75 <para>
76 Required patch:
77 <ulink url="&patch-root;/bluez-&bluez-version;-upstream_fixes-1.patch"/>
78 </para>
79 </listitem>
80 </itemizedlist>
81-->
82 <bridgehead renderas="sect3">BlueZ Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required">
86 <xref linkend="dbus"/>,
87 <xref linkend="glib2"/>, and
88 <xref linkend="libical"/>
89 </para>
90
91 <bridgehead renderas="sect4">Optional</bridgehead>
92 <para role="optional">
93 <xref linkend="docutils"/> (to generate man pages)
94 </para>
95
96 <para condition="html" role="usernotes">
97 User Notes: <ulink url="&blfs-wiki;/bluez"/>
98 </para>
99 </sect2>
100
101
102 <sect2 role="kernel" id="bluez-kernel">
103 <title>Kernel Configuration</title>
104
105 <para>
106 If you are building this package to use bluetooth devices (rather than as a
107 build dependency), enable the following options in the kernel configuration,
108 also the options below the next paragraph if you intend to run the tests,
109 and recompile the kernel if necessary:
110 </para>
111
112<screen><literal>General Setup ---&gt;
113 [*] Configure standard kernel features (expert users) [CONFIG_EXPERT]
114 [*] Enable timerfd() system call [CONFIG_TIMERFD]
115 [*] Enable eventfd() system call [CONFIG_EVENTFD]
116
117[*] Networking support ---&gt; [CONFIG_NET]
118 &lt;*/M&gt; Bluetooth subsystem support ---&gt; [CONFIG_BT]
119 &lt;*/M&gt; RFCOMM protocol support [CONFIG_BT_RFCOMM]
120 [*] RFCOMM TTY support [CONFIG_BT_RFCOMM_TTY]
121 &lt;*/M&gt; BNEP protocol support [CONFIG_BT_BNEP]
122 [*] Multicast filter support [CONFIG_BT_BNEP_MC_FILTER]
123 [*] Protocol filter support [CONFIG_BT_BNEP_PROTO_FILTER]
124 &lt;*/M&gt; HIDP protocol support [CONFIG_BT_HIDP]
125 Bluetooth device drivers ---&gt;
126 (Select the appropriate drivers for your Bluetooth hardware)
127
128 &lt;*/M&gt; RF switch subsystem support ---- [CONFIG_RFKILL]
129
130-*- Cryptographic API ---&gt;
131 &lt;*/M*&gt; User-space cryptographic algorithm configuration [CONFIG_CRYPTO_USER]
132 &lt;*/M*&gt; User-space interface for hash algorithms [CONFIG_CRYPTO_USER_API_HASH]
133 &lt;*/M*&gt; User-space interface for symmetric key cipher algorithms [CONFIG_CRYPTO_USER_API_SKCIPHER]
134 &lt;*/M*&gt; MD5 digest algorithm [CONFIG_CRYPTO_MD5]
135 &lt;*/M*&gt; SHA1 digest algorithm [CONFIG_CRYPTO_SHA1]
136
137Security Options ---&gt;
138 &lt;*/M*&gt; Diffie-Hellman operations on retained keys [CONFIG_KEY_DH_OPERATIONS]</literal></screen>
139
140<!--
141 <para>
142 If you wish to run the testsuite (even if treating this package as a build
143 dependency), you will need to enable the following options in the kernel
144 configuration and recompile the kernel if necessary:
145 </para>
146
147<screen><literal>-*- Cryptographic API - - -&gt; [CONFIG_CRYPTO]
148 &lt;*/M&gt; User-space interface for hash algorithms [CONFIG_CRYPTO_USER_API_HASH]
149 &lt;*/M&gt; User-space interface for symmetric key cipher algorithms [CONFIG_CRYPTO_USER_API_SKCIPHER]</literal></screen>
150-->
151 <indexterm zone="bluez bluez-kernel">
152 <primary sortas="d-bluez">bluez</primary>
153 </indexterm>
154 </sect2>
155
156 <sect2 role="installation">
157 <title>Installation of BlueZ</title>
158
159 <para>
160 Install <application>BlueZ</application> by running the following
161 commands:
162 </para>
163
164<screen revision="sysv"><userinput>./configure --prefix=/usr \
165 --sysconfdir=/etc \
166 --localstatedir=/var \
167 --enable-library \
168 --disable-manpages \
169 --disable-systemd &amp;&amp;
170make</userinput></screen>
171
172<screen revision="systemd"><userinput>./configure --prefix=/usr \
173 --sysconfdir=/etc \
174 --localstatedir=/var \
175 --disable-manpages \
176 --enable-library &amp;&amp;
177make</userinput></screen>
178
179 <para>
180 To test the results, issue: <userinput>make check</userinput>.
181 </para>
182
183 <para>
184 Now, as the <systemitem class="username">root</systemitem> user:
185 </para>
186
187<screen role="root"><userinput>make install &amp;&amp;
188ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</userinput></screen>
189
190 <para>
191 Install the main configuration file as the
192 <systemitem class="username">root</systemitem> user:
193 </para>
194
195<screen role="root"><userinput>install -v -dm755 /etc/bluetooth &amp;&amp;
196install -v -m644 src/main.conf /etc/bluetooth/main.conf</userinput></screen>
197
198 <para>
199 If desired, install the API documentation as the
200 <systemitem class="username">root</systemitem> user:
201 </para>
202
203<screen role="root"><userinput>install -v -dm755 /usr/share/doc/bluez-&bluez-version; &amp;&amp;
204install -v -m644 doc/*.txt /usr/share/doc/bluez-&bluez-version;</userinput></screen>
205
206 </sect2>
207
208
209 <sect2 role="commands">
210 <title>Command Explanations</title>
211
212 <para>
213 <parameter>--disable-manpages</parameter>: This switch disables generating
214 the manual pages because of the reliance on 'rst2man' in docutils. Remove
215 this switch if you have <xref role="nodep" linkend="docutils"/> installed
216 and wish to generate the manual pages.
217 </para>
218
219 <para>
220 <parameter>--enable-library</parameter>: This switch enables building the
221 <application>BlueZ</application> 4 compatibility library which is required by
222 some applications.
223 </para>
224
225 <para revision="sysv">
226 <parameter>--disable-systemd</parameter>: This switch is needed because
227 <application>systemd</application> is not part of LFS/BLFS. If you are
228 using systemd, remove this switch.
229 </para>
230
231 <para>
232 <command>ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</command>:
233 This command makes access to the bluetooth daemon more convenient.
234 </para>
235
236 </sect2>
237
238 <sect2 role="configuration">
239 <title>Configuring BlueZ</title>
240
241 <sect3 id="bluez-config">
242 <title>Configuration Files</title>
243 <para revision="sysv">
244 <filename>/etc/bluetooth/main.conf</filename> is installed automatically
245 during the install. Additionally, there are three supplementary
246 configuration files. /etc/sysconfig/bluetooth is installed as a part
247 of the boot script below. In addition, you optionally can install the
248 following, as the <systemitem class="username">root</systemitem> user:
249 </para>
250
251 <para revision="systemd">
252 <filename>/etc/bluetooth/mail.conf</filename> is installed automatically
253 during the installation. Additionally, there are two supplementary
254 configuration files. In addition, you can optionally install the
255 following files, as the <systemitem class="username">root</systemitem>
256 user:
257 </para>
258
259<screen role="root"><userinput>cat > /etc/bluetooth/rfcomm.conf &lt;&lt; "EOF"</userinput>
260<literal># Start rfcomm.conf
261# Set up the RFCOMM configuration of the Bluetooth subsystem in the Linux kernel.
262# Use one line per command
263# See the rfcomm man page for options
264
265
266# End of rfcomm.conf</literal>
267EOF</screen>
268
269<screen role="root"><userinput>cat > /etc/bluetooth/uart.conf &lt;&lt; "EOF"</userinput>
270<literal># Start uart.conf
271# Attach serial devices via UART HCI to BlueZ stack
272# Use one line per device
273# See the hciattach man page for options
274
275# End of uart.conf</literal>
276EOF</screen>
277
278 <indexterm zone="bluez bluez-config">
279 <primary
280 sortas="e-etc-bluetooth-main.conf">/etc/bluetooth/main.conf</primary>
281 </indexterm>
282
283 </sect3>
284
285 <sect3 id="bluez-init">
286 <title><phrase revision="sysv">Boot Script</phrase>
287 <phrase revision="systemd">Systemd Bluez Services</phrase></title>
288
289 <para revision="sysv">
290 To automatically start the <command>bluetoothd</command> daemon when the
291 system is rebooted, install the
292 <filename>/etc/rc.d/init.d/bluetooth</filename> bootscript from the
293 <xref linkend="bootscripts"/> package.
294 </para>
295
296 <para revision="systemd">
297 To start the <command>bluetoothd</command> daemon at boot,
298 enable the previously installed systemd unit by
299 running the following command as the
300 <systemitem class="username">root</systemitem> user:
301 </para>
302
303<screen role="root" revision="systemd"><userinput>systemctl enable bluetooth</userinput></screen>
304
305 <para revision="systemd">
306 To start the <command>obexd</command> daemon for a user session (to
307 support some Bluetooth programs using it), enable the previously
308 installed systemd unit for all users by running the following command
309 as the <systemitem class="username">root</systemitem> user:
310 </para>
311
312<screen role="root" revision="systemd"><userinput>systemctl enable --global obex</userinput></screen>
313
314 <indexterm zone="bluez bluez-init">
315 <primary sortas="f-bluetooth">bluetooth</primary>
316 </indexterm>
317
318<screen role="root" revision="sysv"><userinput>make install-bluetooth</userinput></screen>
319
320
321 <note revision="systemd">
322 <para>
323 <application>Systemd</application> will start the Bluetooth daemon
324 only when a bluetooth device is detected on the system.
325 </para>
326 </note>
327
328 </sect3>
329
330 </sect2>
331
332 <sect2 role="content">
333 <title>Contents</title>
334
335 <segmentedlist>
336 <segtitle>Installed Programs</segtitle>
337 <segtitle>Installed Library</segtitle>
338 <segtitle>Installed Directories</segtitle>
339
340 <seglistitem>
341 <seg>
342 <!--bccmd, -->
343 bluemoon,
344 bluetoothctl,
345 bluetoothd (symlink),
346 btattach,
347 btmon,
348 hex2hcd,
349 l2ping,
350 l2test,
351 mpris-proxy, and
352 rctest
353 </seg>
354 <seg>
355 libbluetooth.so
356 </seg>
357 <seg>
358 /etc/bluetooth,
359 /usr/{include,libexec}/bluetooth, and
360 /usr/share/doc/bluez-&bluez-version;
361 </seg>
362 </seglistitem>
363 </segmentedlist>
364
365 <variablelist>
366 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
367 <?dbfo list-presentation="list"?>
368 <?dbhtml list-presentation="table"?>
369
370 <!--
371 <varlistentry id="bccmd">
372 <term><command>bccmd</command></term>
373 <listitem>
374 <para>
375 is used to issue BlueCore commands to Cambridge Silicon
376 Radio devices
377 </para>
378 <indexterm zone="bluez bccmd">
379 <primary sortas="b-bccmd">bccmd</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383 -->
384
385 <varlistentry id="bluemoon">
386 <term><command>bluemoon</command></term>
387 <listitem>
388 <para>
389 is a Bluemoon configuration utility
390 </para>
391 <indexterm zone="bluez bluemoon">
392 <primary sortas="b-bluemoon">bluemoon</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
397 <varlistentry id="bluetoothctl">
398 <term><command>bluetoothctl</command></term>
399 <listitem>
400 <para>
401 is the interactive Bluetooth control program
402 </para>
403 <indexterm zone="bluez bluetoothctl">
404 <primary sortas="b-bluetoothctl">bluetoothctl</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 <varlistentry id="bluetoothd">
410 <term><command>bluetoothd</command></term>
411 <listitem>
412 <para>
413 is the Bluetooth daemon
414 </para>
415 <indexterm zone="bluez bluetoothd">
416 <primary sortas="b-bluetoothd">bluetoothd</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 <varlistentry id="btmon">
422 <term><command>btmon</command></term>
423 <listitem>
424 <para>
425 provides access to the Bluetooth subsystem monitor
426 infrastructure for reading HCI traces
427 </para>
428 <indexterm zone="bluez btmon">
429 <primary sortas="b-btmon">btmon</primary>
430 </indexterm>
431 </listitem>
432 </varlistentry>
433
434
435 <varlistentry id="hex2hcd">
436 <term><command>hex2hcd</command></term>
437 <listitem>
438 <para>
439 is used to convert a file needed by Broadcom devices
440 to hcd (Broadcom bluetooth firmware) format
441 </para>
442 <indexterm zone="bluez hex2hcd">
443 <primary sortas="b-hex2hcd">hex2hcd</primary>
444 </indexterm>
445 </listitem>
446 </varlistentry>
447
448 <varlistentry id="l2ping">
449 <term><command>l2ping</command></term>
450 <listitem>
451 <para>
452 is used to send a L2CAP echo request to the Bluetooth MAC
453 address given in dotted hex notation
454 </para>
455 <indexterm zone="bluez l2ping">
456 <primary sortas="b-l2ping">l2ping</primary>
457 </indexterm>
458 </listitem>
459 </varlistentry>
460
461 <varlistentry id="l2test">
462 <term><command>l2test</command></term>
463 <listitem>
464 <para>
465 is a L2CAP testing program
466 </para>
467 <indexterm zone="bluez l2test">
468 <primary sortas="b-l2test">l2test</primary>
469 </indexterm>
470 </listitem>
471 </varlistentry>
472
473 <varlistentry id="rctest">
474 <term><command>rctest</command></term>
475 <listitem>
476 <para>
477 is used to test RFCOMM communications on the
478 Bluetooth stack
479 </para>
480 <indexterm zone="bluez rctest">
481 <primary sortas="b-rctest">rctest</primary>
482 </indexterm>
483 </listitem>
484 </varlistentry>
485
486 <varlistentry id="libbluetooth">
487 <term><filename class="libraryfile">libbluetooth.so</filename></term>
488 <listitem>
489 <para>
490 contains the <application>BlueZ</application> 4 API functions
491 </para>
492 <indexterm zone="bluez libbluetooth">
493 <primary sortas="c-libbluetooth">libbluetooth.so</primary>
494 </indexterm>
495 </listitem>
496 </varlistentry>
497 </variablelist>
498
499 </sect2>
500
501</sect1>
Note: See TracBrowser for help on using the repository browser.