source: networking/netutils/networkmanager.xml@ 6f59a88

12.1 ken/TL2024 lazarus plabs/newcss python3.11 rahul/power-profiles-daemon trunk xry111/llvm18
Last change on this file since 6f59a88 was f4ac7141, checked in by Pierre Labastie <pierre.labastie@…>, 9 months ago

Remove many more forgotten ftp urls

  • Property mode set to 100644
File size: 23.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 NetworkManager-download-http
8"&gnome-download-http;/NetworkManager/&NetworkManager-minor;/NetworkManager-&NetworkManager-version;.tar.xz">
9 <!ENTITY NetworkManager-download-ftp " ">
10 <!ENTITY NetworkManager-md5sum "bd6c9cb0ecd0fb7f516cde7bf4dee3fb">
11 <!ENTITY NetworkManager-size "6.6 MB">
12 <!ENTITY NetworkManager-buildsize "904 MB (with tests and documentation)">
13 <!ENTITY NetworkManager-time "1.2 SBU (with tests, using parallelism=4)">
14]>
15
16<sect1 id="NetworkManager" xreflabel="NetworkManager-&NetworkManager-version;">
17 <?dbhtml filename="networkmanager.html"?>
18
19
20 <title>NetworkManager-&NetworkManager-version;</title>
21
22 <indexterm zone="NetworkManager">
23 <primary sortas="a-NetworkManager">NetworkManager</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to NetworkManager</title>
28
29 <para>
30 <application>NetworkManager</application> is a set of co-operative
31 tools that make networking simple and straightforward. Whether you use WiFi,
32 wired, 3G, or Bluetooth, NetworkManager allows you to quickly move from
33 one network to another: Once a network has been configured and joined
34 once, it can be detected and re-joined automatically the next time it's
35 available.
36 </para>
37
38 &lfs120_checked;
39
40 <note revision="systemd">
41 <para>
42 Make sure that you disable the <command>systemd-networkd</command>
43 service or configure it not to manage the interfaces you want to manage
44 with <application>NetworkManager</application>.
45 </para>
46 </note>
47
48 <bridgehead renderas="sect3">Package Information</bridgehead>
49 <itemizedlist spacing="compact">
50 <listitem>
51 <para>
52 Download (HTTP): <ulink url="&NetworkManager-download-http;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download (FTP): <ulink url="&NetworkManager-download-ftp;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download MD5 sum: &NetworkManager-md5sum;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download size: &NetworkManager-size;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated disk space required: &NetworkManager-buildsize;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Estimated build time: &NetworkManager-time;
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect3">NetworkManager Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required">
86 <xref linkend="jansson"/> and
87 <xref linkend="libndp"/>
88 </para>
89
90 <bridgehead renderas="sect4">Recommended</bridgehead>
91 <para role="recommended">
92 <xref linkend="curl"/>,
93 <xref linkend="dhcpcd"/>,
94 <xref linkend="gobject-introspection"/>,
95 <xref linkend="iptables"/>,
96 <xref linkend="newt"/> (for <command>nmtui</command>),
97 <xref linkend="nss"/>,
98 <xref role='runtime' linkend="polkit"/> (runtime),
99 <xref linkend="pygobject3"/>,
100 <phrase revision="sysv"><xref linkend="elogind"/>,</phrase>
101 <phrase revision="systemd"><xref linkend="systemd"/>,</phrase>
102 <xref linkend="vala"/>, and
103 <xref linkend="wpa_supplicant"/> (runtime, built with D-Bus support)
104 </para>
105
106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional">
108 <xref linkend="bluez"/>,
109 <xref linkend="dbus-python"/> (for the test suite),
110 <!-- <xref linkend="firewalld"/> (For whenever firewalld is reintroduced) -->
111 <xref linkend="gnutls"/> (can be used instead of <xref linkend="nss"/>),
112 <xref linkend="gtk-doc"/>,
113 <xref linkend="libpsl"/>,
114 (<xref linkend="qt5"/> or
115 <xref role="node" linkend="qt5-components"/> with qtdoc) (for examples),
116 <xref linkend="ModemManager"/>,
117 <xref linkend="upower"/>,
118 <xref linkend="valgrind"/>,
119 <ulink url="https://thekelleys.org.uk/dnsmasq/doc.html">dnsmasq</ulink>,
120 <ulink url="https://firewalld.org/">firewalld</ulink>,
121 <ulink url="https://github.com/Distrotech/libaudit">libaudit</ulink>,
122 <ulink url="https://github.com/jpirko/libteam">libteam</ulink>,
123 <ulink url="&gnome-download-http;/mobile-broadband-provider-info/">mobile-broadband-provider-info</ulink>,
124 <ulink url="https://www.samba.org/ftp/ppp/">PPP</ulink>, and
125 <ulink url="https://dianne.skoll.ca/projects/rp-pppoe/">RP-PPPoE</ulink>
126 </para>
127
128 </sect2>
129
130 <sect2 role="kernel" id="NetworkManager-kernel">
131 <title>Kernel Configuration</title>
132
133 <para>
134 If you wish to run the tests, check that at least the following options
135 are enabled in the kernel configuration. Those options have been
136 determined to be necessary, but may not be sufficient. Recompile the
137 kernel if necessary:
138 </para>
139
140 <!-- Ethernet Teaming support is potentially optional, but I didn't
141 run the tests again to test that. It was needed to convince one of
142 the Linux Platform tests to move farther along because otherwise
143 RTNETLINK would respond with an Error 95 - unknown device type.
144 This would cause the test to fail early on in the process.
145
146 [pierre, Nov 2022]: I cannot tell whether these options are
147 the only ones that are needed. They are the options I had to add
148 in order to have some tests pass. But I already had some other
149 options set for packet filtering (iptables), that may not be
150 available by default and may be necessary. Even with the options
151 below still one test (test-route) fails.-->
152
153 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
154 href="networkmanager-test-kernel.xml"/>
155
156 <indexterm zone="NetworkManager NetworkManager-kernel">
157 <primary sortas="d-NetworkManager">NetworkManager (test)</primary>
158 </indexterm>
159 </sect2>
160
161 <sect2 role="installation">
162 <title>Installation of NetworkManager</title>
163
164 <para>
165 If <xref linkend="qt5"/> is installed and the Qt based
166 examples are desired, fix two meson.build files:
167 </para>
168
169<screen><userinput>sed -e 's/-qt4/-qt5/' \
170 -e 's/moc_location/host_bins/' \
171 -i examples/C/qt/meson.build &amp;&amp;
172
173sed -e 's/Qt/&amp;5/' \
174 -i meson.build</userinput></screen>
175
176<!--
177 <para>
178 Fix a missing meson.build file for initrd hooks (not used in BLFS):
179 </para>
180
181<screen><userinput>sed '/initrd/d' -i src/core/meson.build</userinput></screen>
182-->
183
184 <para>
185 Fix the python scripts so that they use <application>Python
186 3</application>:
187 </para>
188
189<screen><userinput>grep -rl '^#!.*python$' | xargs sed -i '1s/python/&amp;3/'</userinput></screen>
190
191 <para>
192 Install <application>NetworkManager</application> by running the
193 following commands:
194 </para>
195
196<screen revision="sysv"><userinput>mkdir build &amp;&amp;
197cd build &amp;&amp;
198
199CXXFLAGS+="-O2 -fPIC" \
200meson setup .. \
201 --prefix=/usr \
202 --buildtype=release \
203 -Dlibaudit=no \
204 -Dlibpsl=false \
205 -Dnmtui=true \
206 -Dovs=false \
207 -Dppp=false \
208 -Dselinux=false \
209 -Dsession_tracking=elogind \
210 -Dmodem_manager=false \
211 -Dsystemdsystemunitdir=no \
212 -Dsystemd_journal=false \
213 -Dqt=false &amp;&amp;
214ninja</userinput></screen>
215
216<screen revision="systemd"><userinput>mkdir build &amp;&amp;
217cd build &amp;&amp;
218
219CXXFLAGS+="-O2 -fPIC" \
220meson setup .. \
221 --prefix=/usr \
222 --buildtype=release \
223 -Dlibaudit=no \
224 -Dlibpsl=false \
225 -Dnmtui=true \
226 -Dovs=false \
227 -Dppp=false \
228 -Dselinux=false \
229 -Dqt=false \
230 -Dsession_tracking=systemd \
231 -Dmodem_manager=false &amp;&amp;
232ninja</userinput></screen>
233
234 <para>
235 An already active graphical session with a bus address is necessary
236 to run the tests. To test the results, issue
237 <command>ninja test</command>.
238 </para>
239
240 <para>
241 A few tests may fail, depending on enabled kernel options.
242 </para>
243
244 <para>
245 Now, as the <systemitem class="username">root</systemitem> user:
246 </para>
247
248<screen role="root"><userinput>ninja install &amp;&amp;
249mv -v /usr/share/doc/NetworkManager{,-&NetworkManager-version;}</userinput></screen>
250
251 <para>
252 If you have not passed the <option>-Ddocs=true</option> option to
253 <command>meson</command>, you can install the pregenerated manual pages
254 with (as the &root; user):
255 </para>
256
257<screen role="root"><userinput>for file in $(echo ../man/*.[1578]); do
258 section=${file##*.} &amp;&amp;
259 install -vdm 755 /usr/share/man/man$section
260 install -vm 644 $file /usr/share/man/man$section/
261done</userinput></screen>
262
263 <para>
264 If you have not used <option>-Ddocs=true</option>, the
265 pregenerated HTML documentation can also be installed with (as
266 the &root; user):
267 </para>
268
269<screen role="root"
270 remap="doc"><userinput>cp -Rv ../docs/{api,libnm} /usr/share/doc/NetworkManager-&NetworkManager-version;</userinput></screen>
271
272 </sect2>
273
274 <sect2 role="commands">
275 <title>Command Explanations</title>
276
277 <para>
278 <envar>CXXFLAGS="-O2 -fPIC"</envar>: These compiler options are
279 necessary to build the Qt5 based examples.
280 </para>
281
282 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
283 href="../../xincludes/meson-buildtype-release.xml"/>
284
285 <para>
286 <option>-Ddocs=true</option>: Use this switch to enable building
287 man pages and documentation if <xref linkend="gtk-doc"/> is installed.
288 </para>
289
290 <para>
291 <parameter>-Dnmtui=true</parameter>: This switch enables building
292 <command>nmtui</command>.
293 </para>
294
295 <para revision="sysv">
296 <parameter>-Dsystemdsystemunitdir=no</parameter> and
297 <parameter>-Dsystemd_journal=false</parameter>: systemd is not
298 used for sysv init systems, so prevent installing units and using the
299 systemd journal.
300 </para>
301
302 <para>
303 <parameter>-Dlibpsl=false</parameter> and
304 <parameter>-Dovs=false</parameter>: These switches disable building with
305 the respective libraries. Remove these if you have the needed libraries
306 installed on your system.
307 </para>
308
309 <para>
310 <parameter>-Dmodem_manager=false</parameter>: This switch is required if
311 <application>ModemManager</application> is not installed. Omit this switch
312 if you have built <application>ModemManager</application> and
313 <application>mobile-broadband-provider-info</application>.
314 </para>
315
316 <para revision="sysv">
317 <parameter>-Dsession_tracking=elogind</parameter>: This switch
318 is used to set <command>elogind</command> as the default
319 program for session tracking.
320 </para>
321
322 <para revision="systemd">
323 <parameter>-Dsession_tracking=systemd</parameter>: This switch
324 is used to set <command>systemd-logind</command> as the default
325 program for session tracking.
326 </para>
327
328 <para revision="systemd">
329 <parameter>-Dsystemdsystemunitdir=/lib/systemd/system</parameter>:
330 This switch is used to set the correct installation directory for
331 systemd units.
332 </para>
333
334 <para>
335 <parameter>-Dppp=false</parameter>: This switch disables
336 <application>PPP</application> support in
337 <application>NetworkManager</application> since the programs necessary
338 for it are not installed. Remove this switch if you need PPP support and
339 have <application>PPP</application> installed.
340 </para>
341
342 <para>
343 <parameter>-Dlibaudit=no</parameter> and
344 <parameter>-Dselinux=false</parameter>: This switch disables support for
345 libaudit and SELinux since they are not used in BLFS.
346 </para>
347
348 <para>
349 <parameter>-Dqt=false</parameter>: This switch disables the
350 <application>Qt</application> examples. Omit if you have
351 <application>Qt</application> available and wish to install the examples.
352 </para>
353
354 <para>
355 <option>-Dcrypto=gnutls</option>: Use this switch if you have GnuTLS
356 installed and want to use it for certificate and key operations in
357 NetworkManager, instead of using NSS (the default).
358 </para>
359
360 <para>
361 <option>-Dcrypto=null</option>: Use this switch if neither NSS nor
362 GnuTLS is installed but you want to build NetworkManager anyway. This
363 switch will make NetworkManager lack some features (for example
364 802.1X).
365 </para>
366
367 <para>
368 <option>-Dsuspend_resume=upower</option>: Use this switch if
369 you have <xref linkend='upower'/> installed and want to use it
370 (instead of &logind;) for suspend and resume support.
371 </para>
372 </sect2>
373
374 <sect2 role="configuration">
375 <title>Configuring NetworkManager</title>
376
377 <sect3 id="NetworkManager-config">
378 <title>Config Files</title>
379 <para>
380 <filename>/etc/NetworkManager/NetworkManager.conf</filename>
381 </para>
382
383 <indexterm zone="NetworkManager NetworkManager-config">
384 <primary
385 sortas="e-etc-NetworkManager-NetworkManager.conf">
386 /etc/NetworkManager/NetworkManager.conf</primary>
387 </indexterm>
388
389 </sect3>
390
391 <sect3><title>Configuration Information</title>
392
393 <para>
394 For <application>NetworkManager</application> to work, at least
395 a minimal configuration file must be present. Such a file is not
396 installed with <command>make install</command>. Issue the following
397 command as the <systemitem class="username">root</systemitem> user to
398 create a minimal <filename>NetworkManager.conf</filename> file:
399 </para>
400
401<screen role="root"><userinput>cat &gt;&gt; /etc/NetworkManager/NetworkManager.conf &lt;&lt; "EOF"
402<literal>[main]
403plugins=keyfile</literal>
404EOF</userinput></screen>
405
406 <para>
407 This file should not be modified directly by users of the system.
408 Instead, system specific changes should be made using configuration
409 files in the
410 <filename class="directory">/etc/NetworkManager/conf.d</filename>
411 directory.
412 </para>
413
414 <para>
415 To allow polkit to manage authorizations, add the following
416 configuration file:
417 </para>
418
419<screen role="root"><userinput>cat &gt; /etc/NetworkManager/conf.d/polkit.conf &lt;&lt; "EOF"
420<literal>[main]
421auth-polkit=true</literal>
422EOF</userinput></screen>
423
424 <para>
425 To use something other than the built-in dhcp client (recommended if
426 using only <command>nmcli</command>), use the following configuration
427 (valid values include either dhcpcd or internal):
428 </para>
429
430<screen role="nodump"><userinput>cat &gt; /etc/NetworkManager/conf.d/dhcp.conf &lt;&lt; "EOF"
431<literal>[main]
432dhcp=</literal><replaceable>dhcpcd</replaceable>
433EOF</userinput></screen>
434
435 <para>
436 To prevent <application>NetworkManager</application> from updating the
437 <filename>/etc/resolv.conf</filename> file, add the following
438 configuration file:
439 </para>
440
441<screen role="nodump"><userinput>cat &gt; /etc/NetworkManager/conf.d/no-dns-update.conf &lt;&lt; "EOF"
442<literal>[main]
443dns=none</literal>
444EOF</userinput></screen>
445
446 <para>
447 For additional configuration options, see
448 <command>man 5 NetworkManager.conf</command>.
449 </para>
450
451 <para>
452 To allow regular users to configure network connections,
453 you should add them to the
454 <systemitem class="groupname">netdev</systemitem>
455 group, and create a <application>polkit</application> rule that grants
456 access. Run the following commands as the
457 <systemitem class="username">root</systemitem> user:
458 </para>
459
460<screen role="root"><userinput>groupadd -fg 86 netdev &amp;&amp;
461/usr/sbin/usermod -a -G netdev <replaceable>&lt;username&gt;</replaceable>
462
463cat &gt; /usr/share/polkit-1/rules.d/org.freedesktop.NetworkManager.rules &lt;&lt; "EOF"
464<literal>polkit.addRule(function(action, subject) {
465 if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 &amp;&amp; subject.isInGroup("netdev")) {
466 return polkit.Result.YES;
467 }
468});</literal>
469EOF</userinput></screen>
470
471 </sect3>
472
473 <sect3 id="NetworkManager-init">
474 <title><phrase revision="sysv">Boot Script</phrase>
475 <phrase revision="systemd">Systemd Unit</phrase></title>
476
477 <para revision="sysv">
478 To automatically start the <command>NetworkManager</command> daemon
479 when the system is rebooted, install the
480 <filename>/etc/rc.d/init.d/networkmanager</filename>bootscript from the
481 <xref linkend="bootscripts"/> package.
482 </para>
483
484 <para revision="systemd">
485 To start the <command>NetworkManager</command> daemon at boot, enable
486 the previously installed systemd unit by running the following command
487 as the <systemitem class="username">root</systemitem> user:
488 </para>
489
490 <note>
491 <para>
492 If using <application>Network Manager</application> to manage
493 an interface, any previous configuration for that interface should be
494 removed, and the interface brought down prior to starting
495 <application>Network Manager</application>.
496 </para>
497 </note>
498
499 <indexterm zone="NetworkManager NetworkManager-init">
500 <primary sortas="f-NetworkManager">NetworkManager</primary>
501 </indexterm>
502
503<screen role="root" revision="sysv"><userinput>make install-networkmanager</userinput></screen>
504
505<screen role="root" revision="systemd"><userinput>systemctl enable NetworkManager</userinput></screen>
506<!-- The below instruction is obsolete. NetworkManager-wait-online is now
507 enabled by default when enabling NetworkManager. -->
508<!--
509 <para revision="systemd">
510 <application>NetworkManager</application> also ships a systemd unit
511 called <filename>NetworkManager-wait-online.service</filename> which
512 can be used to prevent services that require network connectivity
513 from starting until <application>NetworkManager</application> has
514 established the connection. To enable it, run the following command
515 as the <systemitem class="username">root</systemitem> user:
516 </para>
517
518<screen role="root" revision="systemd"><userinput>systemctl enable NetworkManager-wait-online</userinput></screen>
519 -->
520 <!-- As such, let's now provide instructions on how to disable that
521 behavior, for those who wish to do so. -->
522 <para revision="systemd">
523 Starting in version 1.11.2 of <application>NetworkManager</application>,
524 a systemd unit named <filename>NetworkManager-wait-online.service</filename>
525 is enabled, which is used to prevent services that require network
526 connectivity from starting until <application>NetworkManager</application>
527 establishes a connection. To disable this behavior, run the following
528 command as the <systemitem class="username">root</systemitem> user:
529 </para>
530
531<screen role="root" revision="systemd"><userinput>systemctl disable NetworkManager-wait-online</userinput></screen>
532
533 </sect3>
534
535 </sect2>
536
537 <sect2 role="content">
538 <title>Contents</title>
539
540 <segmentedlist>
541 <segtitle>Installed Programs</segtitle>
542 <segtitle>Installed Libraries</segtitle>
543 <segtitle>Installed Directories</segtitle>
544
545 <seglistitem>
546 <seg>
547 NetworkManager, nmcli, nm-online, nmtui, and, symlinked to nmtui:
548 nmtui-connect, nmtui-edit, and nmtui-hostname
549 </seg>
550 <seg>
551 libnm.so
552 and several modules under /usr/lib/NetworkManager
553 </seg>
554 <seg>
555 /etc/NetworkManager,
556 /usr/include/libnm,
557 /usr/lib/NetworkManager,
558 /usr/share/doc/NetworkManager-&NetworkManager-version;,
559 /usr/share/gtk-doc/html/{libnm,NetworkManager}
560 (if the documentation is built),
561 and
562 /var/lib/NetworkManager
563 </seg>
564 </seglistitem>
565 </segmentedlist>
566
567 <variablelist>
568 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
569 <?dbfo list-presentation="list"?>
570 <?dbhtml list-presentation="table"?>
571
572 <varlistentry id="nmcli">
573 <term><command>nmcli</command></term>
574 <listitem>
575 <para>
576 is a command-line tool for controlling
577 <application>NetworkManager</application>
578 and getting its status
579 </para>
580 <indexterm zone="NetworkManager nmcli">
581 <primary sortas="b-nmcli">nmcli</primary>
582 </indexterm>
583 </listitem>
584 </varlistentry>
585
586 <varlistentry id="nm-online">
587 <term><command>nm-online</command></term>
588 <listitem>
589 <para>
590 is an utility to determine whether you are online
591 </para>
592 <indexterm zone="NetworkManager nm-online">
593 <primary sortas="b-nm-online">nm-online</primary>
594 </indexterm>
595 </listitem>
596 </varlistentry>
597
598 <varlistentry id="nmtui">
599 <term><command>nmtui</command></term>
600 <listitem>
601 <para>
602 is an interactive ncurses-based user interface for
603 <application>nmcli</application>
604 </para>
605 <indexterm zone="NetworkManager nmtui">
606 <primary sortas="b-nmtui">nmtui</primary>
607 </indexterm>
608 </listitem>
609 </varlistentry>
610
611 <varlistentry id="nmtui-connect">
612 <term><command>nmtui-connect</command></term>
613 <listitem>
614 <para>
615 is an interactive ncurses-based user interface to
616 activate/deactivate connections
617 </para>
618 <indexterm zone="NetworkManager nmtui-connect">
619 <primary sortas="b-nmtui-connect">nmtui-connect</primary>
620 </indexterm>
621 </listitem>
622 </varlistentry>
623
624 <varlistentry id="nmtui-edit">
625 <term><command>nmtui-edit</command></term>
626 <listitem>
627 <para>
628 is an interactive ncurses-based user interface to edit connections
629 </para>
630 <indexterm zone="NetworkManager nmtui-edit">
631 <primary sortas="b-nmtui-edit">nmtui-edit</primary>
632 </indexterm>
633 </listitem>
634 </varlistentry>
635
636 <varlistentry id="nmtui-hostname">
637 <term><command>nmtui-hostname</command></term>
638 <listitem>
639 <para>
640 is an interactive ncurses-based user interface to edit the hostname
641 </para>
642 <indexterm zone="NetworkManager nmtui-hostname">
643 <primary sortas="b-nmtui-hostname">nmtui-hostname</primary>
644 </indexterm>
645 </listitem>
646 </varlistentry>
647
648 <varlistentry id="NetworkManager-prog">
649 <term><command>NetworkManager</command></term>
650 <listitem>
651 <para>
652 is the network management daemon
653 </para>
654 <indexterm zone="NetworkManager NetworkManager-prog">
655 <primary sortas="b-NetworkManager">NetworkManager</primary>
656 </indexterm>
657 </listitem>
658 </varlistentry>
659
660 <varlistentry id="libnm">
661 <term><filename class="libraryfile">libnm.so</filename></term>
662 <listitem>
663 <para>
664 contains functions used by <application>NetworkManager</application>
665 </para>
666 <indexterm zone="NetworkManager libnm">
667 <primary sortas="c-libnm">libnm.so</primary>
668 </indexterm>
669 </listitem>
670 </varlistentry>
671 </variablelist>
672
673 </sect2>
674
675</sect1>
Note: See TracBrowser for help on using the repository browser.