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

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

Update to bluez-5.58
Update to opencv and opencv_contrib 4.5.1
Update to decorator-5.0.7 (Python Module)
Update to stunnel-5.59
Update to libportal-0.4

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