source: networking/netutils/avahi.xml@ 4acf92b5

trunk
Last change on this file since 4acf92b5 was 0e16b36, checked in by Bruce Dubbs <bdubbs@…>, 3 weeks ago

Archive qt5.

There are a large number of packages that needed to be changed to
remove qt5, but most are harmless. One package that is affected
is vlc where the gui interface is no longer available. Videos
can still be played from the command line and the kf6 dependency
on vlc is still satisfied.

If necessary qt5 can be restored for vlc.

Also three other files are archived that are no longer needed.

  • Property mode set to 100644
File size: 23.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
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 avahi-download-http "https://github.com/lathiat/avahi/releases/download/v&avahi-version;/avahi-&avahi-version;.tar.gz">
8 <!ENTITY avahi-download-ftp " ">
9 <!ENTITY avahi-md5sum "229c6aa30674fc43c202b22c5f8c2be7">
10 <!ENTITY avahi-size "1.5 MB">
11 <!ENTITY avahi-buildsize "32 MB">
12 <!ENTITY avahi-time "0.3 SBU">
13]>
14
15<sect1 id="avahi" xreflabel="Avahi-&avahi-version;">
16 <?dbhtml filename="avahi.html"?>
17
18
19 <title>Avahi-&avahi-version;</title>
20
21 <indexterm zone="avahi">
22 <primary sortas="a-Avahi">Avahi</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Avahi</title>
27
28 <para>
29 The <application>Avahi</application> package is a system which
30 facilitates service discovery on a local network.
31 </para>
32
33 &lfs122_checked;
34
35 <bridgehead renderas="sect3">Package Information</bridgehead>
36 <itemizedlist spacing="compact">
37 <listitem>
38 <para>
39 Download (HTTP): <ulink url="&avahi-download-http;"/>
40 </para>
41 </listitem>
42 <listitem>
43 <para>
44 Download (FTP): <ulink url="&avahi-download-ftp;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download MD5 sum: &avahi-md5sum;
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download size: &avahi-size;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Estimated disk space required: &avahi-buildsize;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated build time: &avahi-time;
65 </para>
66 </listitem>
67 </itemizedlist>
68
69 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
70 <itemizedlist spacing="compact">
71 <listitem>
72 <para>
73 Required patch:
74 <ulink url="&patch-root;/avahi-&avahi-version;-ipv6_race_condition_fix-1.patch"/>
75 </para>
76 </listitem>
77 </itemizedlist>
78
79 <bridgehead renderas="sect3">Avahi Dependencies</bridgehead>
80
81 <bridgehead renderas="sect4">Required</bridgehead>
82 <para role="required">
83 <xref linkend="glib2"/> (GObject Introspection recommended)
84 </para>
85
86 <bridgehead renderas="sect4">Recommended</bridgehead>
87 <para role="recommended">
88 <xref linkend="gtk3"/> and
89 <xref linkend="libdaemon"/>
90 </para>
91
92 <bridgehead renderas="sect4">Optional</bridgehead>
93 <para role="optional">
94 <xref linkend="dbus-python"/>,
95 <xref linkend="libevent"/>,
96 <xref linkend="doxygen"/>,
97 &gtk2; (deprecated), and
98 <ulink url="https://sourceforge.net/projects/xmltoman/">xmltoman</ulink>
99 (for generating documentation)
100 </para>
101
102 </sect2>
103
104 <sect2 role="installation">
105 <title>Installation of Avahi</title>
106
107 <para>
108 There should be a dedicated user and group to take control
109 of the <command>avahi-daemon</command> daemon after it is
110 started. Issue the following commands as the
111 <systemitem class="username">root</systemitem> user:
112 </para>
113
114<screen role="root"><userinput>groupadd -fg 84 avahi &amp;&amp;
115useradd -c "Avahi Daemon Owner" -d /run/avahi-daemon -u 84 \
116 -g avahi -s /bin/false avahi</userinput></screen>
117
118 <para>
119 There should also be a dedicated privileged access group for
120 <application>Avahi</application> clients. Issue the following command as
121 the <systemitem class="username">root</systemitem> user:
122 </para>
123
124<screen role="root"><userinput>groupadd -fg 86 netdev</userinput></screen>
125
126 <para>
127 Fix a regression that results in a race condition when IPv6 is in use
128 and multiple network adapters are present on the system:
129 </para>
130
131<screen><userinput remap="pre">patch -Np1 -i ../avahi-&avahi-version;-ipv6_race_condition_fix-1.patch</userinput></screen>
132
133 <para>
134 Fix a security vulnerability in <command>avahi-daemon</command>:
135 </para>
136
137<screen><userinput remap="pre">sed -i '426a if (events &amp; AVAHI_WATCH_HUP) { \
138client_free(c); \
139return; \
140}' avahi-daemon/simple-protocol.c</userinput></screen>
141
142 <para>
143 Install <application>Avahi</application> by running the following
144 commands:
145 </para>
146
147<screen revision="sysv"><userinput>./configure \
148 --prefix=/usr \
149 --sysconfdir=/etc \
150 --localstatedir=/var \
151 --disable-static \
152 --disable-libevent \
153 --disable-mono \
154 --disable-monodoc \
155 --disable-python \
156 --disable-qt3 \
157 --disable-qt4 \
158 --disable-qt5 \
159 --enable-core-docs \
160 --with-distro=none \
161 --with-systemdsystemunitdir=no \
162 --with-dbus-system-address='unix:path=/run/dbus/system_bus_socket' &amp;&amp;
163make</userinput></screen>
164
165<screen revision="systemd"><userinput>./configure \
166 --prefix=/usr \
167 --sysconfdir=/etc \
168 --localstatedir=/var \
169 --disable-static \
170 --disable-libevent \
171 --disable-mono \
172 --disable-monodoc \
173 --disable-python \
174 --disable-qt3 \
175 --disable-qt4 \
176 --disable-qt5 \
177 --enable-core-docs \
178 --with-distro=none \
179 --with-dbus-system-address='unix:path=/run/dbus/system_bus_socket' &amp;&amp;
180make</userinput></screen>
181
182 <para>
183 This package does not come with a test suite.
184 </para>
185
186 <para>
187 Now, as the <systemitem class="username">root</systemitem> user:
188 </para>
189
190<screen role="root"><userinput>make install</userinput></screen>
191
192 </sect2>
193
194 <sect2 role="commands">
195 <title>Command Explanations</title>
196
197 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
198 href="../../xincludes/static-libraries.xml"/>
199
200 <para>
201 <parameter>--disable-libevent</parameter>: This parameter disables the
202 use of <xref linkend="libevent"/>. Remove if you have it installed.
203 </para>
204
205 <para>
206 <parameter>--disable-mono</parameter>: This parameter disables the
207 <application>Mono</application> bindings.
208 </para>
209
210 <para>
211 <parameter>--disable-monodoc</parameter>: This parameter disables
212 documentation for the <application>Mono</application> bindings.
213 </para>
214
215 <para>
216 <parameter>--disable-python</parameter>: This parameter disables the
217 scripts that depend on <application>Python</application>. It also
218 allows a regular install to complete successfully.
219 </para>
220
221 <para>
222 <parameter>--disable-qt3</parameter>: This parameter disables the
223 attempt to build the obsolete <application>Qt3</application>
224 portions of the package.
225 </para>
226
227 <para>
228 <parameter>--disable-qt4</parameter>: This parameter disables the
229 attempt to build the obsolete <application>Qt4Core</application>
230 portions of the package.
231 </para>
232
233 <para>
234 <parameter>--enable-core-docs</parameter>: This parameter enables the
235 building of documentation.
236 </para>
237
238 <para>
239 <parameter>--with-distro=none</parameter>: There is an obsolete
240 boot script in the distribution for LFS. This option disables it.
241 </para>
242
243 <para revision="sysv">
244 <parameter>--with-systemdsystemunitdir=no</parameter>: Without it, the
245 daemon fails to start in BLFS, which does not support
246 <application>systemd</application>.
247 </para>
248
249 <para>
250 <parameter>--with-dbus-system-address=</parameter>: This option
251 prevents the package from referring to the deprecated
252 <filename class='directory'>/var/run</filename> directory.
253 </para>
254
255 <para>
256 <option>--disable-dbus</option>: This parameter disables the use
257 of <application>D-Bus</application>.
258 </para>
259
260 <para>
261 <option>--disable-gtk</option>: This parameter disables the use
262 of <application>GTK+2</application>.
263 </para>
264
265 <para>
266 <option>--disable-gtk3</option>: This parameter disables the use
267 of <application>GTK+3</application>.
268 </para>
269
270 <para>
271 <option>--disable-qt5</option>: This parameter disables
272 the use of <application>Qt5</application>, and allows
273 building without it.
274 </para>
275
276 <para>
277 <option>--disable-libdaemon</option>: This parameter disables the use
278 of <application>libdaemon</application>. If you use this option,
279 <command>avahi-daemon</command> won't be built.
280 </para>
281
282 <para>
283 <option>--enable-tests</option>: This option enables the building of
284 tests and examples.
285 </para>
286
287 <para>
288 <option>--enable-compat-howl</option>: This option enables the
289 compatibility layer for <application>HOWL</application>.
290 </para>
291
292 <para>
293 <option>--enable-compat-libdns_sd</option>: This option enables the
294 compatibility layer for <application>libdns_sd</application>.
295 </para>
296
297 </sect2>
298
299 <sect2 role="configuration">
300 <title>Configuring avahi</title>
301
302 <sect3 id="avahi-init">
303 <title>Boot Script</title>
304
305 <para revision="sysv">
306 To automatically start the <command>avahi-daemon</command>
307 when the system is rebooted, install the
308 <filename>/etc/rc.d/init.d/avahi</filename> bootscript from
309 the <xref linkend="bootscripts"/> package.
310 </para>
311
312 <para revision="systemd">
313 To start the <command>avahi-daemon</command> daemon at boot, enable
314 the previously installed systemd unit by running the following command
315 as the <systemitem class="username">root</systemitem> user:
316 </para>
317
318 <indexterm zone="avahi avahi-init">
319 <primary sortas="f-avahi">avahi</primary>
320 </indexterm>
321
322<screen role="root" revision="sysv"><userinput>make install-avahi</userinput></screen>
323
324<screen role="root" revision="systemd"><userinput>systemctl enable avahi-daemon</userinput></screen>
325
326 <para revision="systemd">
327 To start the <command>avahi-dnsconfd</command> daemon at boot, enable
328 the previously installed systemd unit by running the following command
329 as the <systemitem class="username">root</systemitem> user:
330 </para>
331
332<screen role="root" revision="systemd"><userinput>systemctl enable avahi-dnsconfd</userinput></screen>
333
334 </sect3>
335
336 </sect2>
337
338 <sect2 role="content">
339 <title>Contents</title>
340
341 <segmentedlist>
342 <segtitle>Installed Programs</segtitle>
343 <segtitle>Installed Libraries</segtitle>
344 <segtitle>Installed Directories</segtitle>
345
346 <seglistitem>
347 <seg>avahi-autoipd, avahi-browse, avahi-browse-domains,
348 avahi-daemon, avahi-discover-standalone, avahi-dnsconfd,
349 avahi-publish, avahi-publish-address, avahi-publish-service,
350 avahi-resolve, avahi-resolve-address, avahi-resolve-host-name,
351 avahi-set-host-name, bshell, bssh, and bvnc</seg>
352 <seg>libavahi-client.so, libavahi-common.so, libavahi-core.so,
353 libavahi-glib.so, libavahi-gobject.so, libavahi-libevent.so
354 libavahi-ui-gtk3.so, libavahi-ui.so, libdns_sd.so, and
355 libhowl.so</seg>
356 <seg>/etc/avahi/services, /usr/include/{avahi-client,avahi-common,
357 avahi-compat-howl, avahi-compat-libdns_sd, avahi-core, avahi-glib,
358 avahi-gobject, avahi-libevent, avahi-ui},
359 /usr/lib/avahi, /usr/share/avahi</seg>
360 </seglistitem>
361 </segmentedlist>
362
363 <variablelist>
364 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
365 <?dbfo list-presentation="list"?>
366 <?dbhtml list-presentation="table"?>
367
368 <varlistentry id="avahi-autoipd">
369 <term><command>avahi-autoipd</command></term>
370 <listitem>
371 <para>
372 is a IPv4LL network address configuration daemon
373 </para>
374 <indexterm zone="avahi avahi-autoipd">
375 <primary sortas="b-avahi-autoipd">avahi-autoipd</primary>
376 </indexterm>
377 </listitem>
378 </varlistentry>
379 <!--
380 <varlistentry id="avahi-bookmarks">
381 <term><command>avahi-bookmarks</command></term>
382 <listitem>
383 <para>
384 is a Web service showing mDNS/DNS-SD announced HTTP services
385 using the <application>Avahi</application> daemon.
386 </para>
387 <indexterm zone="avahi avahi-bookmarks">
388 <primary sortas="b-avahi-bookmarks">avahi-bookmarks</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392 -->
393 <varlistentry id="avahi-browse">
394 <term><command>avahi-browse</command></term>
395 <listitem>
396 <para>
397 browses for mDNS/DNS-SD services using the
398 <application>Avahi</application> daemon
399 </para>
400 <indexterm zone="avahi avahi-browse">
401 <primary sortas="b-avahi-browse">avahi-browse</primary>
402 </indexterm>
403 </listitem>
404 </varlistentry>
405
406 <varlistentry id="avahi-browse-domains">
407 <term><command>avahi-browse-domains</command></term>
408 <listitem>
409 <para>
410 browses for mDNS/DNS-SD services using the
411 <application>Avahi</application> daemon
412 </para>
413 <indexterm zone="avahi avahi-browse-domains">
414 <primary sortas="b-avahi-browse-domains">avahi-browse-domains</primary>
415 </indexterm>
416 </listitem>
417 </varlistentry>
418
419 <varlistentry id="avahi-daemon">
420 <term><command>avahi-daemon</command></term>
421 <listitem>
422 <para>
423 is the <application>Avahi</application> mDNS/DNS-SD daemon
424 </para>
425 <indexterm zone="avahi avahi-daemon">
426 <primary sortas="b-avahi-daemon">avahi-daemon</primary>
427 </indexterm>
428 </listitem>
429 </varlistentry>
430 <!--
431 <varlistentry id="avahi-discover">
432 <term><command>avahi-discover</command></term>
433 <listitem>
434 <para>
435 browses for mDNS/DNS-SD services using the
436 <application>Avahi</application> daemon.
437 </para>
438 <indexterm zone="avahi avahi-discover">
439 <primary sortas="b-avahi-discover">avahi-discover</primary>
440 </indexterm>
441 </listitem>
442 </varlistentry>
443 -->
444 <varlistentry id="avahi-discover-standalone">
445 <term><command>avahi-discover-standalone</command></term>
446 <listitem>
447 <para>
448 browses for mDNS/DNS-SD services using the
449 <application>Avahi</application> daemon
450 </para>
451 <indexterm zone="avahi avahi-discover-standalone">
452 <primary sortas="b-avahi-discover-standalone">avahi-discover-standalone</primary>
453 </indexterm>
454 </listitem>
455 </varlistentry>
456
457 <varlistentry id="avahi-dnsconfd">
458 <term><command>avahi-dnsconfd</command></term>
459 <listitem>
460 <para>
461 is a Unicast DNS server from mDNS/DNS-SD configuration daemon
462 </para>
463 <indexterm zone="avahi avahi-dnsconfd">
464 <primary sortas="b-avahi-dnsconfd">avahi-dnsconfd</primary>
465 </indexterm>
466 </listitem>
467 </varlistentry>
468
469 <varlistentry id="avahi-publish">
470 <term><command>avahi-publish</command></term>
471 <listitem>
472 <para>
473 registers a mDNS/DNS-SD service or host name or address mapping
474 using the <application>Avahi</application> daemon
475 </para>
476 <indexterm zone="avahi avahi-publish">
477 <primary sortas="b-avahi-publish">avahi-publish</primary>
478 </indexterm>
479 </listitem>
480 </varlistentry>
481
482 <varlistentry id="avahi-publish-address">
483 <term><command>avahi-publish-address</command></term>
484 <listitem>
485 <para>
486 registers a mDNS/DNS-SD service or host name or address mapping
487 using the <application>Avahi</application> daemon
488 </para>
489 <indexterm zone="avahi avahi-publish-address">
490 <primary sortas="b-avahi-publish-address">avahi-publish-address</primary>
491 </indexterm>
492 </listitem>
493 </varlistentry>
494
495 <varlistentry id="avahi-publish-service">
496 <term><command>avahi-publish-service</command></term>
497 <listitem>
498 <para>
499 registers a mDNS/DNS-SD service or host name or address mapping
500 using the <application>Avahi</application> daemon
501 </para>
502 <indexterm zone="avahi avahi-publish-service">
503 <primary sortas="b-avahi-publish-service">avahi-publish-service</primary>
504 </indexterm>
505 </listitem>
506 </varlistentry>
507
508 <varlistentry id="avahi-resolve">
509 <term><command>avahi-resolve</command></term>
510 <listitem>
511 <para>
512 resolves one or more mDNS/DNS host name(s) to IP address(es)
513 (and vice versa) using the <application>Avahi</application>
514 daemon
515 </para>
516 <indexterm zone="avahi avahi-resolve">
517 <primary sortas="b-avahi-resolve">avahi-resolve</primary>
518 </indexterm>
519 </listitem>
520 </varlistentry>
521
522 <varlistentry id="avahi-resolve-address">
523 <term><command>avahi-resolve-address</command></term>
524 <listitem>
525 <para>
526 resolves one or more mDNS/DNS host name(s) to IP address(es)
527 (and vice versa) using the <application>Avahi</application>
528 daemon
529 </para>
530 <indexterm zone="avahi avahi-resolve-address">
531 <primary sortas="b-avahi-resolve-address">avahi-resolve-address</primary>
532 </indexterm>
533 </listitem>
534 </varlistentry>
535
536 <varlistentry id="avahi-resolve-host-name">
537 <term><command>avahi-resolve-host-name</command></term>
538 <listitem>
539 <para>
540 resolves one or more mDNS/DNS host name(s) to IP address(es)
541 (and vice versa) using the <application>Avahi</application>
542 daemon
543 </para>
544 <indexterm zone="avahi avahi-resolve-host-name">
545 <primary sortas="b-avahi-resolve-host-name">avahi-resolve-host-name</primary>
546 </indexterm>
547 </listitem>
548 </varlistentry>
549
550 <varlistentry id="avahi-set-host-name">
551 <term><command>avahi-set-host-name</command></term>
552 <listitem>
553 <para>
554 changes the mDNS host name
555 </para>
556 <indexterm zone="avahi avahi-set-host-name">
557 <primary sortas="b-avahi-set-host-name">avahi-set-host-name</primary>
558 </indexterm>
559 </listitem>
560 </varlistentry>
561
562 <!--<varlistentry id="bshell">
563 <term><command>bshell</command></term>
564 <listitem>
565 <para>
566 does this .....
567 </para>
568 <indexterm zone="avahi bshell">
569 <primary sortas="b-bshell">bshell</primary>
570 </indexterm>
571 </listitem>
572 </varlistentry>-->
573
574 <varlistentry id="bssh">
575 <term><command>bssh</command></term>
576 <listitem>
577 <para>
578 browses for SSH servers on the local network
579 </para>
580 <indexterm zone="avahi bssh">
581 <primary sortas="b-bssh">bssh</primary>
582 </indexterm>
583 </listitem>
584 </varlistentry>
585
586 <varlistentry id="bvnc">
587 <term><command>bvnc</command></term>
588 <listitem>
589 <para>
590 browses for VNC servers on the local network
591 </para>
592 <indexterm zone="avahi bvnc">
593 <primary sortas="b-bvnc">bvnc</primary>
594 </indexterm>
595 </listitem>
596 </varlistentry>
597
598 <!--<varlistentry id="libavahi-client">
599 <term><filename class='libraryfile'>libavahi-client.{so,a}</filename></term>
600 <listitem>
601 <para>
602 contains functions that .....
603 </para>
604 <indexterm zone="avahi libavahi-client">
605 <primary sortas="c-libavahi-client">libavahi-client.{so,a}</primary>
606 </indexterm>
607 </listitem>
608 </varlistentry>
609
610 <varlistentry id="libavahi-common">
611 <term><filename class='libraryfile'>libavahi-common.{so,a}</filename></term>
612 <listitem>
613 <para>
614 contains functions that .....
615 </para>
616 <indexterm zone="avahi libavahi-common">
617 <primary sortas="c-libavahi-common">libavahi-common.{so,a}</primary>
618 </indexterm>
619 </listitem>
620 </varlistentry>
621
622 <varlistentry id="libavahi-core">
623 <term><filename class='libraryfile'>libavahi-core.{so,a}</filename></term>
624 <listitem>
625 <para>
626 contains functions that .....
627 </para>
628 <indexterm zone="avahi libavahi-core">
629 <primary sortas="c-libavahi-core">libavahi-core.{so,a}</primary>
630 </indexterm>
631 </listitem>
632 </varlistentry>
633
634 <varlistentry id="libavahi-glib">
635 <term><filename class='libraryfile'>libavahi-glib.{so,a}</filename></term>
636 <listitem>
637 <para>
638 contains functions that .....
639 </para>
640 <indexterm zone="avahi libavahi-glib">
641 <primary sortas="c-libavahi-glib">libavahi-glib.{so,a}</primary>
642 </indexterm>
643 </listitem>
644 </varlistentry>
645
646 <varlistentry id="libavahi-gobject">
647 <term><filename class='libraryfile'>libavahi-gobject.{so,a}</filename></term>
648 <listitem>
649 <para>
650 contains functions that .....
651 </para>
652 <indexterm zone="avahi libavahi-gobject">
653 <primary sortas="c-libavahi-gobject">libavahi-gobject.{so,a}</primary>
654 </indexterm>
655 </listitem>
656 </varlistentry>
657
658 <varlistentry id="libavahi-ui-gtk3">
659 <term><filename class='libraryfile'>libavahi-ui-gtk3.{so,a}</filename></term>
660 <listitem>
661 <para>
662 contains functions that .....
663 </para>
664 <indexterm zone="avahi libavahi-ui-gtk3">
665 <primary sortas="c-libavahi-ui-gtk3">libavahi-ui-gtk3.{so,a}</primary>
666 </indexterm>
667 </listitem>
668 </varlistentry>
669
670 <varlistentry id="libavahi-ui">
671 <term><filename class='libraryfile'>libavahi-ui.{so,a}</filename></term>
672 <listitem>
673 <para>
674 contains functions that .....
675 </para>
676 <indexterm zone="avahi libavahi-ui">
677 <primary sortas="c-libavahi-ui">libavahi-ui.{so,a}</primary>
678 </indexterm>
679 </listitem>
680 </varlistentry>
681
682 <varlistentry id="libdns_sd">
683 <term><filename class='libraryfile'>libdns_sd.{so,a}</filename></term>
684 <listitem>
685 <para>
686 contains functions that .....
687 </para>
688 <indexterm zone="avahi libdns_sd">
689 <primary sortas="c-libdns_sd">libdns_sd.{so,a}</primary>
690 </indexterm>
691 </listitem>
692 </varlistentry>
693
694 <varlistentry id="libhowl">
695 <term><filename class='libraryfile'>libhowl.{so,a}</filename></term>
696 <listitem>
697 <para>
698 contains functions that .....
699 </para>
700 <indexterm zone="avahi libhowl">
701 <primary sortas="c-libhowl">libhowl.{so,a}</primary>
702 </indexterm>
703 </listitem>
704 </varlistentry>-->
705
706 </variablelist>
707
708 </sect2>
709
710</sect1>
Note: See TracBrowser for help on using the repository browser.