Index: head/de_DE.ISO8859-1/books/handbook/ports/chapter.xml =================================================================== --- head/de_DE.ISO8859-1/books/handbook/ports/chapter.xml (revision 48426) +++ head/de_DE.ISO8859-1/books/handbook/ports/chapter.xml (revision 48427) @@ -1,1704 +1,1716 @@ <?xml version="1.0" encoding="iso-8859-1"?> <!-- The FreeBSD Documentation Project The FreeBSD German Documentation Project $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/ports/chapter.xml,v 1.111 2011/12/19 17:13:33 bcr Exp $ - basiert auf: r42913 + basiert auf: r42918 --> <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="ports"> <info><title>Installieren von Anwendungen: Pakete und Ports</title> <authorgroup> <author><personname><firstname>Uwe</firstname><surname>Pierau</surname></personname><contrib>�bersetzt von </contrib></author> </authorgroup> </info> <sect1 xml:id="ports-synopsis"> <title>�bersicht</title> <indexterm><primary>Ports</primary></indexterm> <indexterm><primary>Pakete</primary></indexterm> <para>&os; enth�lt eine umfassende Sammlung von Systemwerkzeugen, die Teil des Basissystems sind. Dar�ber hinaus stellt &os; zwei sich erg�nzende Methoden zur Installation von Drittanbieter-Software zur Verf�gung: Die Ports-Sammlung zur Installation aus dem Quellcode sowie Pakete zur Installation von vorkompilierten bin�ren Softwarepaketen. Beide Methoden k�nnen benutzt werden, um Anwendungen von lokalen Medien oder �ber das Netzwerk zu installieren.</para> <para>Dieses Kapitel behandelt die folgenden Themen:</para> <itemizedlist> <listitem> <para>Den Unterschied zwischen bin�ren Softwarepaketen und Ports.</para> </listitem> <listitem> <para>Wie man Drittanbieter-Software findet, die nach &os; portiert wurde.</para> </listitem> <listitem> <para>Wie Bin�rpakete mit dem traditionellen Paketsystem verwaltet werden.</para> </listitem> <listitem> <para>Wie Bin�rpakete mit <application>pkgng</application> verwaltet werden.</para> </listitem> <listitem> <para>Den Bau von Drittanbieter-Software aus dem Quellcode mithilfe der Ports-Sammlung.</para> </listitem> <listitem> <para>Wie man die Dateien findet, die zusammen mit der Anwendung installiert wurden.</para> </listitem> <listitem> <para>Was zu tun ist, wenn die Installation einer Software fehlschl�gt.</para> </listitem> </itemizedlist> </sect1> <sect1 xml:id="ports-overview"> <title>Installation von Software</title> <para>Die typischen Schritte zur Installation von Drittanbieter-Software auf einem &unix; System sind:</para> <procedure> <step> <para>Download der Software, die als Quelltext oder im Bin�rformat vorliegen kann.</para> </step> <step> <para>Auspacken der Software. Dies ist typischerweise ein mit &man.compress.1;, &man.gzip.1; oder &man.bzip2.1; komprimiertes Tar-Archiv.</para> </step> <step> <para>Durchsuchen der Dokumentation, die sich in <filename>INSTALL</filename>, <filename>README</filename> oder mehreren Dateien im Verzeichnis <filename>doc/</filename> befindet, nach Anweisungen, wie die Software zu installieren ist.</para> </step> <step> <para>Kompilieren der Software, wenn sie als Quelltext vorliegt. Dazu muss vielleicht das <filename>Makefile</filename> angepasst, oder <command>configure</command> ausgef�hrt werden.</para> </step> <step> <para>Testen und installieren der Software.</para> </step> </procedure> <para>Wenn die Software nicht speziell f�r &os; geschrieben wurde, muss vielleicht sogar der Quelltext angepasst werden, damit die Software funktioniert. Zurzeit werden �ber &os.numports; Anwendungen Dritter zur Verf�gung gestellt.</para> <para>&os; bietet zwei Technologien an, die diese Schritte automatisieren.</para> <para>Ein &os;-Paket enth�lt vorkompilierte Kopien aller Befehle f�r eine Anwendung, sowie zus�tzliche Konfigurationsdateien und Dokumentation. Pakete k�nnen mit den <application>pkg</application>-Befehlen, wie <command>pkg install</command>, manipuliert werden.</para> <para>Ein &os;-Port ist eine Sammlung von Dateien, die das Kompilieren der Quelltexte einer Anwendung automatisieren. Die Dateien, die ein Port umfasst enthalten alle notwendigen Informationen um die Anwendung herunterzuladen, zu extrahieren, anzupassen und zu installieren.</para> <para>Das Portsystem kann auch dazu benutzt werden, Pakete zu generieren, die mit den Paketverwaltungswerkzeugen von &os; manipuliert werden k�nnen.</para> <para>Pakete und Ports beachten Abh�ngigkeiten zwischen Anwendungen. Wenn ein Paket oder die Ports-Sammlung benutzt wird, um eine Anwendung zu installieren, dann werden fehlende Bibliotheken zuerst installiert, sofern sie nicht schon vorher installiert waren.</para> <para>Obwohl beide Technologien gleichartig sind, so haben Pakete und Ports jeweils ihre eigenen St�rken. Welche Technologie eingesetzt wird, h�ngt letzten Endes von den Anforderungen ab, die an eine bestimmte Anwendung gestellt werden.</para> <itemizedlist> <title>Vorteile von Paketen</title> <listitem> <para>Das komprimierte Paket einer Anwendung ist normalerweise kleiner als das komprimierte Archiv der Quelltexte.</para> </listitem> <listitem> <para>Pakete m�ssen nicht mehr kompiliert werden. Dies ist ein Vorteil, wenn gro�e Pakete wie <application>Mozilla</application>, <application>KDE</application> oder <application>GNOME</application> auf langsamen Maschinen installiert werden.</para> </listitem> <listitem> <para>Wenn Sie Pakete verwenden, brauchen Sie nicht zu verstehen, wie Software unter &os; kompiliert wird.</para> </listitem> </itemizedlist> <itemizedlist> <title>Vorteile von Ports</title> <listitem> <para>Da die Pakete auf m�glichst vielen System laufen sollen, werden Optionen beim �bersetzen zur�ckhaltend gesetzt. Wird eine Anwendung �ber die Ports �bersetzt, k�nnen die Optionen nach eigenen Bed�rfnissen angepasst werden.</para> </listitem> <listitem> <para>Die Eigenschaften einiger Anwendungen werden �ber Optionen zum Zeitpunkt des �bersetzens festgelegt. <application>Apache</application> kann zum Beispiel �ber eine gro�e Auswahl an eingebauten Optionen konfiguriert werden.</para> <para>F�r einige F�lle existieren verschiedene Pakete einer Anwendung, die beim �bersetzen unterschiedlich konfiguriert wurden. F�r <application>Ghostscript</application> gibt es ein <filename>ghostscript</filename>-Paket und ein <filename>ghostscript-nox11</filename>-Paket, die sich durch die <application>Xorg</application> Unterst�tzung unterscheiden. Das Erstellen von verschiedenen Paketen wird aber schnell unhandlich, wenn eine Anwendung mehr als ein oder zwei Optionen zum Zeitpunkt des �bersetzens besitzt.</para> </listitem> <listitem> <para>Die Lizenzbestimmungen mancher Software verbietet ein Verbreiten in bin�rer Form. Diese Software muss als Quelltext, der durch den Benutzer kompiliert werden muss, ausgeliefert werden.</para> </listitem> <listitem> <para>Einige Leute trauen bin�ren Distributionen nicht, oder sie ziehen es vor den Quelltext zu lesen, um diesen nach m�glichen Problemen zu durchsuchen.</para> </listitem> <listitem> <para>Der Quellcode wird ben�tigt, um individuelle Anpassungen anzuwenden.</para> </listitem> </itemizedlist> <para>Wenn Sie �ber aktualisierte Ports informiert sein wollen, lesen Sie die Mailinglisten &a.ports; und &a.ports-bugs;.</para> <warning> <para>Bevor Sie eine Anwendung installieren, informieren Sie sich auf der Seite <uri xlink:href="http://vuxml.FreeBSD.org/">http://vuxml.FreeBSD.org/</uri> �ber m�gliche Sicherheitsprobleme mit der Anwendung, oder installieren Sie <package>ports-mgmt/portaudit</package>. Installierte Anwendungen k�nnen mit <command>portaudit -F -a</command> auf bekannte Sicherheitsprobleme untersucht werden.</para> </warning> <para>Der Rest dieses Kapitels beschreibt, wie man Software Dritter mit Paketen und Ports unter &os; installiert und verwaltet.</para> </sect1> <sect1 xml:id="ports-finding-applications"> <title>Suchen einer Anwendung</title> <para>Die Anzahl der nach &os; portierten Anwendungen steigt st�ndig. Es gibt einige Wege, um nach Anwendungen zu suchen:</para> <itemizedlist> <listitem> <para>Die &os;-Webseite stellt unter <link xlink:href="&url.base;/ports/index.html">http://www.FreeBSD.org/ports/</link> eine aktuelle und durchsuchbare Liste aller Anwendungen zur Verf�gung. Die Ports k�nnen nach dem Namen den Anwendung, oder �ber die Software-Kategorie durchsucht werden.</para> </listitem> <listitem> <indexterm><primary>FreshPorts</primary></indexterm> <para>Dan Langille verwaltet <uri xlink:href="http://www.FreshPorts.org/">FreshPorts.org</uri>, das eine umfassende Suchfunktion bietet und �nderungen an den Anwendungen in der Ports-Sammlung verfolgt. Registrierte Benutzer k�nnen eine Merkliste erstellen, um automatisch eine E-Mail zu erhalten, sobald ein Port von dieser Liste aktualisiert wurde.</para> </listitem> <listitem> <indexterm><primary>Freecode</primary></indexterm> <para>Wenn Sie den Namen einer Anwendung nicht kennen, versuchen Sie eine Webseite wie <uri xlink:href="http://www.freecode.com/">Freecode.com</uri>, um eine passende Anwendung zu finden. Schauen Sie dann auf der &os;-Webseite nach, ob die Anwendung schon portiert wurde.</para> </listitem> <listitem> <para>Wenn die Ports-Sammlung bereits installiert ist, gibt es mehrere Methoden, um die lokale Version dieser Port-Sammlung abzufragen. Verwenden Sie <command>whereis <replaceable>Datei</replaceable></command> um herauszufinden, in welcher Kategorie ein Port ist, wobei <replaceable>Datei</replaceable> der Name des Programms ist, das installiert werden soll:</para> <screen>&prompt.root; <userinput>whereis lsof</userinput> lsof: /usr/ports/sysutils/lsof</screen> <para>Alternativ kann der &man.echo.1;-Befehl verwendet werden:</para> <screen>&prompt.root; <userinput>echo /usr/ports/*/*lsof*</userinput> /usr/ports/sysutils/lsof</screen> <para>Beachten Sie aber, dass dieser Befehl auch alle Dateien im Verzeichnis <filename>/usr/ports/distfiles</filename> findet, auf die der angegebene Suchbegriff passt.</para> </listitem> <listitem> <para>Ein weiterer Weg nach Software zu suchen besteht darin, die eingebaute Suchfunktion der Ports-Sammlung zu benutzen. Wechseln Sie dazu in das Verzeichnis <filename>/usr/ports</filename>, und rufen Sie <command>make search name=<replaceable>Anwendungsname</replaceable></command> auf, wobei <replaceable>Anwendungsname</replaceable> der Name der Software ist. Um zum Beispiel nach <command>lsof</command> zu suchen:</para> <screen>&prompt.root; <userinput>cd /usr/ports</userinput> &prompt.root; <userinput>make search name=lsof</userinput> Port: lsof-4.88.d,8 Path: /usr/ports/sysutils/lsof Info: Lists information about open files (similar to fstat(1)) Maint: ler@lerctr.org Index: sysutils B-deps: R-deps: </screen> <tip> <para>Der integrierte Suchmechanismus verwendet eine Datei mit Index-Informationen. Erscheint eine Meldung, dass der <filename>INDEX</filename> ben�tigt wird, f�hren Sie <command>make fetchindex</command> aus, um die aktuelle Index-Datei herunterzuladen. Mit einem vorhandenen <filename>INDEX</filename> ist <command>make search</command> in der Lage, die gew�nschte Suche durchzuf�hren.</para> </tip> <para>Die <quote>Path:</quote>-Zeile zeigt an, wo der Port zu finden ist.</para> <para>Um weniger Informationen zu erhalten, benutzen Sie die Funktion <command>quicksearch</command>:</para> <screen>&prompt.root; <userinput>cd /usr/ports</userinput> &prompt.root; <userinput>make quicksearch name=lsof</userinput> Port: lsof-4.88.d,8 Path: /usr/ports/sysutils/lsof Info: Lists information about open files (similar to fstat(1))</screen> <para>Erweiterte Suchen f�hren Sie mit <command>make search key=<replaceable>Text</replaceable></command> oder <command>make quicksearch key=<replaceable>Text</replaceable></command> aus. Damit werden Portnamen, Kommentare, Beschreibungen und Abh�ngigkeiten nach <replaceable>Text</replaceable> durchsucht. Dies kann sehr n�tzlich sein, wenn der Name des Programms nicht bekannt ist.</para> <para>Bei der Verwendung von <buildtarget>search</buildtarget> und <buildtarget>quicksearch</buildtarget> wird Gro�- und Kleinschreibung bei der Suche ignoriert. Die Suche nach <quote>LSOF</quote> wird dieselben Ergebnisse wie die Suche nach <quote>lsof</quote> liefern.</para> </listitem> </itemizedlist> </sect1> <sect1 xml:id="packages-using"> <!-- <info> <authorgroup> <author><personname><firstname>Chern</firstname><surname>Lee</surname></personname><contrib>Beigesteuert von </contrib></author> </authorgroup> </info> --> <title>Verwendung von Bin�rpaketen</title> <para>Derzeit befindet sich &os; in einer �bergangsphase auf ein neues Paketverwaltungssystem. Benutzer m�chten vielleicht die Vorteile von <link linkend="pkgng-intro">PKGng</link> bei der Verwaltung von Drittanbieter-Paketen in &os; kennenlernen. Benutzer, die noch nicht auf <application>pkgng</application> migriert haben, k�nnen die traditionelle Methode zur Verwaltung der Paketdatenbank verwenden.</para> <para>Diese Methode der Paketverwaltung verwendet ein Datenbankverzeichnis, <filename>/var/db/pkg</filename>, um Versionen und Dateien von installierten Anwendungen aufzuzeichnen. Verschiedene Werkzeuge interagieren mit dem Datenbankverzeichnis und werden verwendet, um Bin�rpakete zu verwalten. Solche Kommandos beginnen mit <literal>pkg_</literal>. Dieser Abschnitt bietet einen �berblick �ber die Kommandos, die verwendet werden, um Bin�rpakete zu installieren, zu l�schen und um Informationen �ber Pakete zu sammeln. Jedes Kommando verf�gt �ber viele Optionen, mit den das Verhalten angepasst werden kann. In den aufgef�hrten Manualpages finden Sie weitere Informationen und Anwendungsbeispiele.</para> <sect2> <title>Installieren eines Pakets</title> <indexterm> <primary>Pakete</primary> <secondary>installieren</secondary> </indexterm> <indexterm> <primary><command>pkg_add</command></primary> </indexterm> <para>Benutzen Sie &man.pkg.add.1;, um ein Bin�rpaket von einem lokalen &os;-Medium oder �ber einen entfernten &os;-Paketserver zu installieren. Obwohl das &os;-Medium keine Netzwerkverbindung f�r die Installation von Paketen ben�tigt, wird es wahrscheinlich nicht die neuesten Versionen der Bin�rpakete enthalten, da die Versionen kontinuierlich auf den &os;-Paketservern neu gebaut werden. Verwenden Sie &man.pkg.add.1; mit <literal>-r</literal> (f�r remote), um ein Paket von einem Server zu installieren. Dies bestimmt automatisch das n�tige Objektformat und die richtige Version des Pakets, l�dt dieses dann von einem Paketserver und installiert es, ohne dass weitere Benutzereingriffe n�tig sind.</para> <indexterm> <primary><command>pkg_add</command></primary></indexterm> <screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen> <para>In diesem Beispiel wird <literal>lsof</literal> ohne Versionsnummer verwendet, da bei der Installation von Paketen von einem entfernten Server keine Versionen angegeben werden d�rfen. Wenn Sie einen anderen &os; FTP-Mirror verwenden m�chten, geben Sie den Mirror in der Umgebungsvariablen <envar>PACKAGESITE</envar> an. &man.pkg.add.1; benutzt &man.fetch.3;, um Dateien herunterzuladen. Umgebungsvariablen wie <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> und <envar>FTP_PASSWORD</envar> werden dabei ber�cksichtigt. Wenn Sie durch eine Firewall gesch�tzt werden, m�ssen Sie vielleicht eine oder mehrere dieser Umgebungsvariablen setzen oder einen FTP oder HTTP Proxy verwenden. Eine Liste der unterst�tzten Umgebungsvariablen f�r <acronym>FTP</acronym> finden Sie in &man.fetch.3;.</para> <note> <para>Unter &os.current; oder &os.stable; holt &man.pkg.add.1; die neueste Version einer Anwendung. Unter einer -RELEASE Version holt es die Version der Anwendung, die im Release enthalten ist. Sie k�nnen dieses Verhalten �ndern, indem Sie die Umgebungsvariable <envar>PACKAGESITE</envar> �berschreiben. Auf einem &os; 9.1-RELEASE System, versucht &man.pkg.add.1; in der Voreinstellung die Pakete von <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-9.1-release/Latest/</literal> zu laden. Um &man.pkg.add.1; zu zwingen, nur &os; 9-STABLE-Pakete herunterzuladen, setzen Sie <envar>PACKAGESITE</envar> auf <literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-9-stable/Latest/</literal>.</para> </note> <para>Pakete werden im <filename>.tbz</filename>-Format ausgeliefert. Sie sind unter <uri xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/">ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/</uri>, oder im Verzeichnis <filename>/packages</filename> auf der &os;-DVD-Distribution. Die Struktur des Paketbaums entspricht der Verzeichnisstruktur unter <filename>/usr/ports</filename>. Jede Kategorie besitzt ein eigenes Verzeichnis und alle Pakete befinden sich im Verzeichnis <filename>All</filename>.</para> </sect2> <sect2> <title>Verwalten von Paketen</title> <indexterm> <primary>Pakete</primary> <secondary>verwalten</secondary> </indexterm> <para>Benutzen Sie &man.pkg.info.1;, um alle installierten Pakete und deren Beschreibung anzuzeigen.</para> <indexterm> <primary><command>pkg_info</command></primary> </indexterm> <screen>&prompt.root; <userinput>pkg_info</userinput> colordiff-1.0.13 Tool to colorize diff output docbook-1.4 Meta-port for the different versions of the DocBook DTD ...</screen> <para>Benutzen Sie &man.pkg.version.1;, um einen �berblick �ber die Versionen aller installierten Pakete und einen Vergleich zu den aktuellen Versionen aus der lokal installierten Ports-Sammlung anzuzeigen:</para> <indexterm> <primary><command>pkg_version</command></primary> </indexterm> <screen>&prompt.root; <userinput>pkg_version</userinput> colordiff = docbook = ...</screen> <para>Die Symbole in der zweiten Spalte zeigen das Alter des Pakets im Vergleich zu der lokalen Version aus der Ports-Sammlung an.</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>Symbol</entry> <entry>Bedeutung</entry> </row> </thead> <tbody> <row> <entry>=</entry> <entry>Die Version des installierten Paketes stimmt mit der Version aus der lokalen Ports-Sammlung �berein.</entry> </row> <row> <entry><</entry> <entry>Die installierte Version ist �lter als die Version aus der lokalen Ports-Sammlung.</entry> </row> <row> <entry>></entry> <entry>Die installierte Version ist neuer als die aus der Ports-Sammlung, was vermutlich bedeutet, dass die lokale Ports-Sammlung veraltet ist.</entry> </row> <row> <entry>?</entry> <entry>Das installierte Paket konnte im Ports-Index nicht gefunden werden. Dies kann passieren, wenn ein installierter Port aus der Ports-Sammlung entfernt wurde oder einen neuen Namen erhalten hat.</entry> </row> <row> <entry>*</entry> <entry>In der Ports-Sammlung befinden sich mehrere Versionen der Anwendung.</entry> </row> <row> <entry>!</entry> <entry>Das installierte Paket ist zwar im Index enthalten, aus irgendeinem Grund war <command>pkg_version</command> aber nicht in der Lage, die Versionsnummer des installierten Pakets mit der Versionsnummer des entsprechenden Eintrags im Index zu vergleichen.</entry> </row> </tbody> </tgroup> </informaltable> </sect2> <sect2> <title>Entfernen eines Pakets</title> <indexterm> <primary><command>pkg_delete</command></primary> </indexterm> <indexterm> <primary>Pakete</primary> <secondary>entfernen</secondary> </indexterm> <para>Um ein zuvor installiertes Paket zu entfernen, benutzen Sie &man.pkg.delete.1;.</para> <screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-2.8.8_1</replaceable></userinput></screen> <para>Beachten Sie, dass &man.pkg.delete.1; die vollst�ndige Bezeichnung des Pakets ben�tigt. Die Eingabe von <replaceable>xchat</replaceable> anstelle von <replaceable>xchat-2.8.8_1</replaceable> w�re im obigen Beispiel daher nicht ausreichend. Benutzen Sie &man.pkg.version.1;, um die Versionsnummer des Pakets herausfinden, oder verwenden Sie Wildcards:</para> <screen>&prompt.root; <userinput>pkg_delete xchat\*</userinput></screen> <para>In diesem Beispiel werden alle Pakete gel�scht, deren Name mit <literal>xchat</literal> beginnt.</para> </sect2> </sect1> <sect1 xml:id="pkgng-intro"> <title>Benutzen von <application>pkgng</application> zur Verwaltung von Bin�rpaketen</title> <para><application>pkgng</application> ist der Nachfolger f�r die traditionellen Paketverwaltungswerkzeuge von &os;. Es bietet viele Funktionen, die den Umgang mit Bin�rpaketen schneller und einfacher machen.</para> <para><application>pkgng</application> ist kein Ersatz f�r die Portverwaltungswerkzeuge wie <package>ports-mgmt/portmaster</package> oder <package>ports-mgmt/portupgrade</package>. W�hrend diese Werkzeuge Drittanbieter-Software sowohl aus Bin�rpaketen als auch aus der Ports-Sammlung installieren k�nnen, so installiert <application>pkgng</application> ausschlie�lich Bin�rpakete.</para> <sect2 xml:id="pkgng-initial-setup"> <title>Erste Schritte mit <application>pkgng</application></title> <para>&os; 9.1 und nachfolgende Versionen enthalten ein Bootstrap-Programm, welches <application>pkgng</application> zusammen mit den Manualpages installiert.</para> <para>Um das Bootstrap Programm zu starten, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>/usr/sbin/pkg</userinput></screen> <para>F�r �ltere Versionen von &os; muss <application>pkgng</application> zun�chst aus der Ports-Sammlung oder als Paket installiert werden.</para> <para>Um den Port zu installieren, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/pkg</userinput> &prompt.root; <userinput>make</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para>Um das Paket zu installieren, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg_add -r pkg</userinput></screen> <para>Sobald <application>pkgng</application> installiert ist, muss die Paketdatenbank mit dem folgenden Befehl vom traditionellen Format in das neue Format konvertiert werden:</para> <screen>&prompt.root; <userinput>pkg2ng</userinput></screen> <para>Auf neu installieren Systemen, auf denen noch keine Software von Drittanbietern installiert wurde, kann dieser Schritt entfallen.</para> <important> <para>Die Konvertierung ist unwiderruflich. Sobald die Paketdatenbank in das Format von <application>pkgng</application> umgewandelt wurde, sollten die traditionellen <application>pkg_*</application> Werkzeuge nicht mehr benutzt werden.</para> </important> <note> <para>Bei der Konvertierung der Paketdatenbank k�nnen Fehler ausgegeben werden, wenn die Inhalte auf die neue Version umgewandelt werden. Im Allgemeinen k�nnen diese Fehler ignoriert werden. Wenn <application>pkg2ng</application> fertig ist, wird eine Liste von Drittanbieter-Software ausgegeben, die nicht erfolgreich konvertiert werden konnte. Diese Anwendungen m�ssen manuell neu installiert werden.</para> </note> <para>Um sicherzustellen, dass die &os; Ports-Sammlung neue Pakete mit <application>pkgng</application> und nicht mit den traditionellen Formaten registriert, muss in &os; 10.<replaceable>X</replaceable> und fr�heren Versionen folgende Zeile in <filename>/etc/make.conf</filename> hinzugef�gt werden:</para> <programlisting>WITH_PKGNG= yes</programlisting> <para>Das <application>pkgng</application> Paketverwaltungssystem benutzt f�r die meisten Operationen ein Paket-Repository. Der Speicherort des Paket-Repositories wird in <filename>/usr/local/etc/pkg.conf</filename> oder der Umgebungsvariablen <envar>PACKAGESITE</envar> definiert.</para> <para>Weitere Konfigurationsoptionen f�r <application>pkgng</application> sind in &man.pkg.conf.5; beschrieben.</para> <para>Informationen zur Bedienung von <application>pkgng</application> ist in &man.pkg.8; verf�gbar. Alternativ kann <command>pkg</command> ohne zus�tzliche Argumente aufgerufen werden.</para> <para>Jedes Argument von <application>pkgng</application> ist in seiner spezifischen Manualpage dokumentiert. Um beispielsweise die Manualpage von <command>pkg install</command> zu lesen, geben Sie einen der folgenden Befehle ein:</para> <screen>&prompt.root; <userinput>pkg help install</userinput></screen> <screen>&prompt.root; <userinput>man pkg-install</userinput></screen> <para>Der Rest dieses Abschnitts beschreibt die typischen Verwaltungsaufgaben f�r Bin�rpakete, die mit <application>pkgng</application> erledigt werden k�nnen. Jedes gezeigte Kommando verf�gt �ber Optionen, um das Verhalten anzupassen. Details und weitere Beispiele finden Sie in den Manualpages der einzelnen Kommandos.</para> </sect2> <sect2 xml:id="pkgng-pkg-info"> <title>Informationen �ber installierte Pakete anzeigen</title> <para>Informationen �ber bereits installierte Pakete k�nnen mit <command>pkg info</command> angezeigt werden. Dabei wird, wenn keine weiteren Optionen angegeben werden, die Version und die Beschreibung aller Pakete oder eines einzelnen Pakets ausgegeben.</para> <para>Um zu ermitteln welche Version von <application>pkgng</application> installiert ist, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg info pkg</userinput> pkg-1.1.4_1</screen> </sect2> <sect2 xml:id="pkgng-installing-deinstalling"> <title>Installation und Deinstallation von Paketen</title> <para>Ein Bin�rpaket installieren Sie mit dem folgenden Befehl, wobei <replaceable>paketname</replaceable> der Name des zu installierenden Pakets ist:</para> <screen>&prompt.root; <userinput>pkg install <replaceable>paketname</replaceable></userinput></screen> <para>Dieser Befehl verwendet Daten aus dem Repository um zu bestimmen, welche Version der Software und welche Abh�ngigkeiten installiert werden m�ssen. Um beispielsweise <application>curl</application> zu installieren:</para> <screen>&prompt.root; <userinput>pkg install curl</userinput> Updating repository catalogue /usr/local/tmp/All/curl-7.31.0_1.txz 100% of 1181 kB 1380 kBps 00m01s /usr/local/tmp/All/ca_root_nss-3.15.1_1.txz 100% of 288 kB 1700 kBps 00m00s Updating repository catalogue The following 2 packages will be installed: Installing ca_root_nss: 3.15.1_1 Installing curl: 7.31.0_1 The installation will require 3 MB more space 0 MB to be downloaded Proceed with installing packages [y/N]: <userinput>y</userinput> Checking integrity... done [1/2] Installing ca_root_nss-3.15.1_1... done [2/2] Installing curl-7.31.0_1... done Cleaning up cache files...Done</screen> <para>Das neue Paket und jedes weitere Paket, das als Abh�ngigkeit installiert wurde, ist in der Liste der installierten Pakete zu sehen:</para> <screen>&prompt.root; <userinput>pkg info</userinput> ca_root_nss-3.15.1_1 The root certificate bundle from the Mozilla Project curl-7.31.0_1 Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers pkg-1.1.4_6 New generation package manager</screen> <para>Wird ein Paket nicht mehr ben�tigt, kann es mit <command>pkg delete</command> entfernt werden. Zum Beispiel:</para> <screen>&prompt.root; <userinput>pkg delete curl</userinput> The following packages will be deleted: curl-7.31.0_1 The deletion will free 3 MB Proceed with deleting packages [y/N]: <userinput>y</userinput> [1/1] Deleting curl-7.31.0_1... done</screen> </sect2> <sect2 xml:id="pkgng-upgrading"> <title>Installierte Pakete aktualisieren</title> <para>Pakete die nicht mehr aktuell sind, k�nnen mit <command>pkg version</command> gefunden werden. &man.pkg-version.8; nutzt zur Identifikation der Paketversionen die lokale Ports-Sammlung, falls diese installiert ist. Ansonsten wird dazu das entfernte Repository benutzt.</para> <para>Installierte Pakete k�nnen mit <command>pkg upgrade</command> auf die neuesten Versionen aktualisiert werden. Mit diesem Befehl werden die installierten Versionen der Pakete mit denen im Repository verglichen. Es wird dann eine Liste der Anwendungen ausgegeben, f�r die neuere Versionen zur Verf�gung stehen. Geben Sie <userinput>y</userinput> ein, um die Aktualisierung durchzuf�hren, oder <userinput>n</userinput>, um die Aktualisierung abzubrechen.</para> </sect2> <sect2 xml:id="pkgng-auditing"> <title>Installierte Pakete auditieren</title> <para>Gelegentlich werden Sicherheitsl�cken in einer Drittanbieter-Software entdeckt. <application>pkgng</application> besitzt einen eingebauten Auditing-Mechanismus. Um die auf dem System installierte Software auf Sicherheitsl�cken zu pr�fen, geben Sie folgenden Befehl ein:</para> <screen>&prompt.root; <userinput>pkg audit -F</userinput></screen> </sect2> <sect2 xml:id="pkgng-autoremove"> <title>Automatisches Entfernen von nicht mehr ben�tigten Abh�ngigkeiten</title> <para>Das Entfernen eines Pakets kann m�glicherweise Abh�ngigkeiten hinterlassen, die nicht mehr ben�tigt werden. Unn�tige Pakete, die als Abh�ngigkeit von anderen Paketen installiert wurden, k�nnen automatisch erfasst und entfernt werden:</para> <screen>&prompt.root; <userinput>pkg autoremove</userinput> Packages to be removed: ca_root_nss-3.15.1_1 The autoremoval will free 723 kB Proceed with autoremoval of packages [y/N]: <userinput>y</userinput> Deinstalling ca_root_nss-3.15.1_1... done</screen> </sect2> <sect2 xml:id="pkgng-backup"> <title>Sicherung der Paketdatenbank</title> <para>Im Gegensatz zum alten Paketverwaltungssystem beinhaltet <application>pkgng</application> einen eigenen Mechanismus zur Sicherung der Paketdatenbank. Um den Inhalt der Paketdatenbank manuell zu sichern, geben Sie folgendes ein, und ersetzen Sie <replaceable>pkgng.db</replaceable> durch einen geeigneten Namen:</para> <screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen> <para>Zus�tzlich verf�gt <application>pkgng</application> �ber ein &man.periodic.8;-Skript, das automatisch eine t�gliche Sicherung der Paketdatenbank erstellt. Diese Funktionalit�t kann aktiviert werden, indem in &man.periodic.conf.5; <literal>daily_backup_pkgng_enable</literal> auf <literal>YES</literal> gesetzt ist.</para> <tip> <para>Um das Skript daran zu hindern, eine Sicherung der Paketdatenbank zu erstellen, muss in &man.periodic.conf.5; <literal>daily_backup_pkgdb_enable</literal> auf <literal>NO</literal> gesetzt werden.</para> </tip> <para>Um den Inhalt einer fr�heren Paketdatenbank wiederherzustellen, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg backup -r <replaceable>/path/to/pkgng.db</replaceable></userinput></screen> </sect2> <sect2 xml:id="pkgng-clean"> <title>Alte Pakete entfernen</title> <para>Standardm��ig speichert <application>pkgng</application> Pakete in einem Cache-Verzeichnis, welches in &man.pkg.conf.5; in der Variablen <envar>PKG_CACHEDIR</envar> definiert wird. Beim Upgrade der Pakete mit <command>pkg upgrade</command>, werden die alten Versionen der Pakete nicht automatisch entfernt.</para> <para>Um veraltete Pakete zu entfernen, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg clean</userinput></screen> </sect2> <sect2 xml:id="pkgng-set"> <title>Manipulation der Paket-Metadaten</title> <para>Bei Software aus der &os; Ports-Sammlung kann es vorkommen, dass die Hauptversionsnummer ge�ndert wird. Daf�r hat <application>pkgng</application> ein eingebautes Kommando, um die Quelle eines Pakets zu aktualisieren. Dies ist n�tzlich, wenn zum Beispiel <package>lang/php5</package> zu <package>lang/php53</package> umbenannt wurde, damit <package>lang/php5</package> jetzt die Version <literal>5.4</literal> integrieren kann.</para> <para>Um die Quelle des Pakets f�r das obige Beispiel zu �ndern, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg set -o lang/php5:lang/php53</userinput></screen> <para>Ein weiteres Beispiel: Um <package>lang/ruby18</package> auf <package>lang/ruby19</package> zu aktualisieren, geben Sie folgendes ein:</para> <screen>&prompt.root; <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen> <para>In diesem letzten Beispiel wird die Quelle der Bibliotheken von <filename>libglut</filename> von <package>graphics/libglut</package> auf <package>graphics/freeglut</package> ge�ndert:</para> <screen>&prompt.root; <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen> <note> <para>Bei einem Wechsel der Paketquelle ist es notwendig, die Pakete neu zu installieren, welche von dem Paket abh�ngig sind, das seine Paketquelle ge�ndert hat. Um eine Neuinstallation von abh�ngigen Paketen zu erzwingen, f�hren Sie folgenden Befehl aus:</para> <screen>&prompt.root; <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen> </note> </sect2> </sect1> <sect1 xml:id="ports-using"> <title>Benutzen der Ports-Sammlung</title> <para>Die Ports-Sammlung ist eine Reihe von <filename>Makefiles</filename>, Patches und Beschreibungen, die unter <filename>/usr/ports</filename> gespeichert sind. Diese Dateien werden f�r den Bau und die Installation von Anwendungen unter &os; verwendet. Bevor eine Anwendung aus den Ports erstellt werden kann, muss zuerst die Ports-Sammlung installiert werden. Wenn Sie dies nicht bereits bei der Installation von &os; getan haben, benutzen Sie eine der beiden Methoden um sie zu installieren:</para> <procedure> <title>Installation mit Portsnap</title> <para><application>Portsnap</application> ist ein schnelles und benutzerfreundliches Werkzeug zur Installation der Ports-Sammlung und die bevorzugte Wahl f�r die meisten Benutzer. Im <xref linkend="updating-upgrading-portsnap"/> finden Sie eine ausf�hrliche Beschreibung zu <application>Portsnap</application>.</para> <step> <para>Laden Sie einen komprimierten Snapshot der Ports-Sammlung in <filename>/var/db/portsnap</filename>.</para> <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> </step> <step> <para>Wenn Sie <application>Portsnap</application> das erste Mal verwenden, m�ssen Sie den Snapshot nach <filename>/usr/ports</filename> extrahieren:</para> <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> </step> <step> <para>Nach dem ersten Einsatz von <application>Portsnap</application>, kann <filename>/usr/ports</filename> wie folgt aktualisiert werden:</para> <screen>&prompt.root; <userinput>portsnap fetch</userinput> &prompt.root; <userinput>portsnap update</userinput></screen> </step> </procedure> <procedure> <title>Installation mit Subversion</title> <para>Wird mehr Kontrolle �ber die Ports-Sammlung ben�tigt, oder wenn die lokalen �nderungen beibehalten werden sollen, kann <application>Subversion</application> benutzt werden, um die Ports-Sammlung zu laden. Lesen Sie <link - xlink:href="&url.articles.committers-guide;/subversion-primer.html">the + xlink:href="&url.articles.committers-guide;/subversion-primer.html">den Subversion Primer</link> f�r eine detaillierte Beschreibung von <application>Subversion</application>.</para> <step> <para><application>Subversion</application> muss installiert sein, bevor die Ports-Sammlung geladen werden kann. Ist eine lokale Kopie der Ports-Sammlung bereits vorhanden, installieren Sie <application>Subversion</application> wie folgt:</para> <screen>&prompt.root; <userinput>cd /usr/ports/devel/subversion</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para>Ist keine lokale Kopie der Ports-Sammlung vorhanden, kann <application>Subversion</application> als Paket installiert werden:</para> <screen>&prompt.root; <userinput>pkg_add -r subversion</userinput></screen> <para>Wird <application>pkgng</application> f�r die Verwaltung von Paketen benutzt, kann <application>Subversion</application> dar�ber installiert werden:</para> <screen>&prompt.root; <userinput>pkg install subversion</userinput></screen> </step> <step> <para>Laden Sie eine Kopie der Ports-Sammlung:</para> <screen>&prompt.root; <userinput>svn checkout https://svn.FreeBSD.org/ports/head /usr/ports</userinput></screen> </step> <step> <para>Nach dem erstmaligen <foreignphrase>checkout</foreignphrase> mit <application>Subversion</application> kann <filename>/usr/ports</filename> wie folgt aktualisiert werden:</para> <screen>&prompt.root; <userinput>svn update /usr/ports</userinput></screen> </step> </procedure> <para>Die Ports-Sammlung installiert eine Reihe von Verzeichnissen, die jeweils eine Softwarekategorie repr�sentieren. Jede Kategorie hat f�r jede einzelne Anwendung ein weiteres Unterverzeichnis. Jedes Unterverzeichnis enth�lt Dateien, die &os; sagen, wie ein Programm kompiliert und installiert werden muss. Diese Dateien werden auch Port-<quote>Ger�st</quote> genannt. Jedes Port-<quote>Ger�st</quote> beinhaltet die folgenden Dateien und Verzeichnisse:</para> <itemizedlist> <listitem> <para><filename>Makefile</filename>: enth�lt Anweisungen, die spezifizieren, wie die Anwendung kompiliert wird und wohin die Komponenten installiert werden sollten.</para> </listitem> <listitem> <para><filename>distinfo</filename>: enth�lt die Namen und die Pr�fsummen der Dateien, die heruntergeladen werden m�ssen, um den Port zu bauen.</para> </listitem> <listitem> <para><filename>files</filename>: dieses Verzeichnis enth�lt Patches, welche das �bersetzen und Installieren der Anwendung unter &os; erm�glichen. Zudem k�nnen noch weitere Dateien, die f�r die �bersetzung des Ports verwendet werden, enthalten sein.</para> </listitem> <listitem> <para><filename>pkg-descr</filename>: enth�lt eine ausf�hrlichere Beschreibung der Anwendung.</para> </listitem> <listitem> <para><filename>pkg-plist</filename>: eine Liste aller Dateien, die durch diesen Port installiert werden. Au�erdem sind hier Informationen enthalten, die zum Entfernen des Ports ben�tigt werden.</para> </listitem> </itemizedlist> <para>Einige Ports beinhalten noch <filename>pkg-message</filename> oder weitere Dateien, die vom Port-System benutzt werden, um spezielle Situationen zu handhaben. Wenn Sie mehr �ber diese Dateien oder das Port-System erfahren wollen, lesen Sie das <link xlink:href="&url.books.porters-handbook.en;/index.html"> &os; Porter's Handbook</link>.</para> <para>Ein Port enth�lt nicht den eigentlichen Quellcode, der auch als <quote>Distfile</quote> bekannt ist. Der heruntergeladene Quellcode wird automatisch nach <filename>/usr/ports/distfiles</filename> extrahiert.</para> <sect2 xml:id="ports-skeleton"> <title>Ports installieren</title> <indexterm> <primary>Ports</primary> <secondary>installieren</secondary> </indexterm> <para>Dieser Abschnitt beschreibt die grundlegende Benutzung der Ports-Sammlung, um Software zu installieren oder zu deinstallieren. Eine ausf�hrliche Beschreibung der einzelnen <command>make</command>-Targets finden Sie in &man.ports.7;.</para> <warning> <para>Stellen Sie sicher, dass die Ports-Sammlung aktuell ist, bevor Sie einen Port kompilieren. Informieren Sie sich vorher zus�tzlich unter <uri xlink:href="http://vuxml.FreeBSD.org/"> http://vuxml.FreeBSD.org/</uri> �ber m�gliche Sicherheitsprobleme des zu installierenden Ports. Alternativ k�nnen Sie <command>pkg audit -F</command> ausf�hren, bevor Sie einen neuen Port installieren. Die t�glich laufende Sicherheitspr�fung des Systems aktualisiert ebenfalls die Datenbank und pr�ft installierte Anwendungen auf vorhandene Sicherheitsprobleme. Weitere Informationen finden Sie in &man.portaudit.1; und &man.periodic.8;.</para> </warning> <para>Die Benutzung der Ports-Sammlung setzt eine funktionierende Internetverbindung und Superuser-Rechte voraus.</para> <para>Um einen Port zu installieren, wechseln Sie in das Verzeichnis des Ports, den Sie installieren m�chten. Geben Sie dann <command>make install</command> am Prompt ein:</para> <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput> &prompt.root; <userinput>make install</userinput> >> lsof_4.88D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/. >> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/. ===> Extracting for lsof-4.88 ... [Ausgabe des Auspackens weggelassen] ... >> Checksum OK for lsof_4.88D.freebsd.tar.gz. ===> Patching for lsof-4.88.d,8 ===> Applying FreeBSD patches for lsof-4.88.d,8 ===> Configuring for lsof-4.88.d,8 ... [configure-Ausgabe weggelassen] ... ===> Building for lsof-4.88.d,8 ... [Ausgabe der �bersetzung weggelassen] ... ===> Installing for lsof-4.88.d,8 ... [Ausgabe der Installation weggelassen] ... ===> Generating temporary packing list ===> Compressing manual pages for lsof-4.57 ===> Registering installation for lsof-4.57 ===> SECURITY NOTE: This port has installed the following binaries which execute with increased privileges. /usr/local/bin/lsof &prompt.root;</screen> <para>Da <command>lsof</command> eine Anwendung ist, die mit erh�hten Rechten l�uft, wird nach der Installation eine Sicherheitswarnung angezeigt. Sobald die Installation abgeschlossen ist, erscheint wieder der Prompt.</para> <para>Um die Suche nach Kommandos zu beschleunigen, speichern einige Shells eine Liste der verf�gbaren Kommandos in den durch die Umgebungsvariable <envar>PATH</envar> gegebenen Verzeichnissen. Benutzer der <command>tcsh</command> m�ssen eventuell <command>rehash</command> eintippen, um die neu installierten Kommandos benutzen zu k�nnen, ohne den vollst�ndigen Pfad anzugeben. Benutzer der Shell <command>sh</command> m�ssen stattdessen <command>hash -r</command> eintippen. Weitere Informationen finden Sie in der Dokumentation der jeweiligen Shell.</para> <para>Bei der Installation wird ein Arbeitsverzeichnis erstellt, das alle tempor�ren Dateien enth�lt, die w�hrend des Bauvorgangs ben�tigt werden. Wenn dieses Verzeichnis nach der Installation entfernt wird, spart dies Plattenplatz und minimiert m�gliche Probleme bei der Aktualisierung des Ports auf eine neuere Version:</para> <screen>&prompt.root; <userinput>make clean</userinput> ===> Cleaning for lsof-4.88.d,8 &prompt.root;</screen> <note> <para>Sie k�nnen zwei Schritte sparen, wenn Sie bei der Kompilierung des Ports gleich <command>make install clean</command> eingeben.</para> </note> <sect3> <title>Port Installation anpassen</title> <para>Einige Ports bieten Optionen, mit denen zus�tzliche Funktionen oder Sicherheitsoptionen eingestellt werden k�nnen. Beispiele daf�r sind <package>www/firefox</package>, <package>security/gpgme</package> und <package>mail/sylpheed-claws</package>. Wenn ein Port von anderen Ports abh�ngig ist und diese �ber zus�tzliche Abh�ngigkeiten und Optionen verf�gen, wird mehrmals ein Men� ausgegeben, wo der Benutzer verschiedene Optionen w�hlen kann. Um dies zu vermeiden, wechseln Sie in das Verzeichnis des Ports und geben Sie <command>make config-recursive</command> ein, um die Konfiguration an einem St�ck zu erledigen. F�hren Sie danach <command>make install [clean]</command> aus, um den Port zu kompilieren und zu installieren.</para> <tip> <para>Bei der Verwendung von <buildtarget>config-recursive</buildtarget> wird eine Liste von Ports, die konfiguriert werden, vom Target <buildtarget>all-depends-list</buildtarget> erstellt. Es wird empfohlen, <command>make config-recursive</command> so lange auszuf�hren, bis alle Optionen der abh�ngigen Ports definiert sind und keine Optionen und Men�s mehr erscheinen. Damit soll sichergestellt werden, dass alle Optionen konfiguriert wurden.</para> </tip> <para>Es gibt diverse M�glichkeiten, dieses Men� nach dem Bau eines Ports erneut aufzurufen, um Optionen zu entfernen, hinzuzuf�gen oder anzupassen. Sie k�nnen beispielsweise mit <command>cd</command> in das Verzeichnis des Ports wechseln und dort <command>make config</command> eingeben. Eine andere M�glichkeit ist <command>make showconfig</command>. Eine weitere Alternative bietet <command>make rmconfig</command>, das alle urspr�nglich gew�hlten Optionen zur�cksetzt und es Ihnen dadurch erm�glicht, die Konfiguration erneut zu beginnen. Die eben erw�hnten Optionen werden ausf�hrlich in &man.ports.7; beschrieben.</para> <para>Die Ports-Sammlung benutzt zum Herunterladen von Dateien &man.fetch.3;, das diverse Umgebungsvariablen unterst�tzt. Die Variablen <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> und <envar>FTP_PASSWORD</envar> m�ssen unter Umst�nden gesetzt werden, wenn das &os;-System hinter einer Firewall oder einem FTP/HTTP-Proxy arbeitet. Eine vollst�ndige Liste der unterst�tzten Variablen finden Sie in &man.fetch.1;.</para> <para>Benutzer ohne eine st�ndige Internet-Verbindung k�nnen <command>make fetch</command> im Verzeichnis <filename>/usr/ports</filename> ausf�hren, um die ben�tigten Dateien herunterzuladen. Es ist auch m�glich, <command>make fetch</command> nur in einem Teil des Baums, wie <filename>/usr/ports/net</filename>, aufzurufen. Die Dateien von allen abh�ngigen Ports werden mit diesem Kommando allerdings nicht heruntergeladen. Wenn Sie diese Dateien ebenfalls herunterladen wollen, benutzen Sie stattdessen <command>make fetch-recursive</command>.</para> <para>In einigen seltenen F�llen ist es erforderlich, die ben�tigten Dateien von einem anderen Ort als den im Port definierten <varname>MASTER_SITES</varname> herunterzuladen. Sie k�nnen <varname>MASTER_SITES</varname> mit dem folgenden Kommando �berschreiben:</para> <screen>&prompt.root; <userinput>cd /usr/ports/directory</userinput> &prompt.root; <userinput>make MASTER_SITE_OVERRIDE= \ <replaceable>ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/</replaceable> fetch</userinput></screen> <para>Die Variablen <varname>WRKDIRPREFIX</varname> und <varname>PREFIX</varname> �berschreiben das voreingestellte Bau- und Zielverzeichnis. Zum Beispiel:</para> <screen>&prompt.root; <userinput>make WRKDIRPREFIX=/usr/home/example/ports install</userinput></screen> <para>Dieses Kommando baut den Port unter <filename>/usr/home/example/ports</filename> und installiert ihn unter <filename>/usr/local</filename>.</para> <para>Die Variable <varname>PREFIX</varname> legt das Installations-Verzeichnis fest:</para> <screen>&prompt.root; <userinput>make PREFIX=/usr/home/example/local install</userinput></screen> <para>In diesem Beispiel wird der Port unter <filename>/usr/ports</filename> gebaut und nach <filename>/usr/home/example/local</filename> installiert.</para> <para>Sie k�nnen beide Variablen auch zusammen benutzen:</para> <screen>&prompt.root; <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput></screen> <para>Alternativ k�nnen diese Variablen auch als Umgebungsvariablen gesetzt werden. In der Manualpage Ihrer Shell finden Sie Anweisungen, wie Umgebungsvariablen gesetzt werden.</para> </sect3> </sect2> <sect2 xml:id="ports-removing"> <title>Entfernen installierter Ports</title> <indexterm> <primary>Ports</primary> <secondary>entfernen</secondary> </indexterm> <para>Installierte Ports k�nnen mit <command>pkg delete</command> wieder deinstalliert werden. Beispiele f�r dieses Kommando finden Sie in &man.pkg-delete.8;.</para> <para>Alternativ kann <command>make deinstall</command> im Verzeichnis des Ports aufgerufen werden:</para> <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput> <userinput>make deinstall</userinput> ===> Deinstalling for sysutils/lsof ===> Deinstalling Deinstallation has been requested for the following 1 packages: lsof-4.88.d,8 Thee deinstallation will free 229 kB [1/1] Deleting lsof-4.88.d,8... done</screen> <para>Es wird empfohlen die Nachrichten zu lesen, die ausgegeben werden, wenn ein Port deinstalliert wird. Wenn der Port noch Anwendungen hat, die von ihm abh�ngig sind, werdenn diese am Bildschirm angezeigt, aber die Deinstallation wird forgesetzt. In solchen F�llen ist es besser, die Anwendung neu zu installieren, um fehlende Abh�ngigkeiten zu vermeiden.</para> </sect2> <sect2 xml:id="ports-upgrading"> <title>Ports aktualisieren</title> <indexterm> <primary>Ports</primary> <secondary>aktualisieren</secondary> </indexterm> - <para>Als erstes sollten sie sich alle installierten Ports - anzeigen lassen, von denen eine aktuellere Version in der - Ports-Sammlung existiert. Dazu verwenden Sie den Befehl - &man.pkg.version.1;:</para> + <para>Im Laufe der Zeit stehen neuere Versionen der Software in + der Ports-Sammlung zur Verf�gung. In diesem Abschnitt wird + beschrieben, wie Sie bestimmen, welche Software aktualisiert + werden kann und wie das Upgrade durchzuf�hren ist.</para> - <screen>&prompt.root; <userinput>pkg_version -v</userinput></screen> + <para>Um festzustellen, ob neuere Versionen der installierten + Ports verf�gbar sind, stellen Sie sicher, dass die neueste + Version der Ports-Sammlung installiert ist. Diese wird in + Prozedur 5.1 und Prozedur 5.2 beschrieben. F�hren Sie + anschlie�end den folgenden Befehl aus, um eine Liste der Ports + zu erhalten f�r die eine aktuelle Version existiert:</para> - <sect3 xml:id="ports-file-updating"> - <title>Lesen Sie - <filename>/usr/ports/UPDATING</filename></title> + <screen>&prompt.root; <userinput>pkg version -l "<"</userinput></screen> - <para>Nachdem Sie die Ports-Sammlung auf den neusten - Stand gebracht haben, lesen Sie bitte zuerst die Datei + <important> + <para>Lesen Sie zuerst <filename>/usr/ports/UPDATING</filename>, bevor Sie einen Port aktualisieren. In dieser Datei werden Probleme und zus�tzlich durchzuf�hrende Schritte bei der Aktualisierung einzelner Ports beschrieben. Dazu geh�ren solche Dinge wie ge�nderte Dateiformate, verschobene Konfigurationsdateien, aber auch Inkompatibilit�ten zu einer - Vorg�ngerversion.</para> + Vorg�ngerversion. Notieren Sie sich alle Anweisungen der + Ports, die aktualisiert werden m�ssen. Folgen Sie den + Anweisungen, wenn Sie das Upgrade durchf�hren.</para> + </important> - <para>Sollte <filename>UPDATING</filename> etwas hier Gesagtem - widersprechen, so gilt das in <filename>UPDATING</filename> - Gesagte.</para> - </sect3> - - <sect3 xml:id="portupgrade"> - <title>Ports mit Portupgrade aktualisieren</title> - - <indexterm> - <primary>portupgrade</primary> - </indexterm> - - <para><application>portupgrade</application> wurde entwickelt, um - die Aktualisierung von Ports zu vereinfachen. Sie k�nnen - <application>portupgrade</application> �ber den Port - <package>ports-mgmt/portupgrade</package> wie - jeden anderen Port mit <command>make install clean</command> - installieren:</para> - - <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/portupgrade/</userinput> -&prompt.root; <userinput>make install clean</userinput></screen> - - <para>Durchsuchen Sie regelm��ig die Liste der installierten - Ports mit <command>pkgdb -F</command> und beheben Sie alle - gefundenen Probleme. Es ist eine gute Idee, dies vor jedem - Update auszuf�hren.</para> - - <para>Benutzen Sie <command>portupgrade -a</command>, um - automatisch alle veralteten Ports auf dem System zu - aktualisieren. Verwenden Sie den Schalter - <option>-i</option>, wenn Sie individuell entscheiden wollen, - ob ein Port aktualisiert werden soll:</para> - - <screen>&prompt.root; <userinput>portupgrade -ai</userinput></screen> - - <para>Um nur eine spezifische Anwendung zu aktualisieren, - verwenden Sie <command>portupgrade - <replaceable>Paketname</replaceable></command>. - Geben Sie den Schalter <option>-R</option> an, wenn - <application>portupgrade</application> zuvor alle - Ports aktualisieren soll, die von dem gegebenen - Paket abh�ngen.</para> - - <screen>&prompt.root; <userinput>portupgrade -R firefox</userinput></screen> - - <para>Um Pakete anstelle von Ports zu installieren, verweden Sie - den Schalter <option>-P</option>. Mit dieser - Option durchsucht <application>portupgrade</application> - die in der Umgebungsvariablen <envar>PKG_PATH</envar> - aufgef�hrten Verzeichnisse nach Paketen. Sind - lokal keine Pakete vorhanden, versucht - <application>portupgrade</application> die Pakete - �ber das Netz herunterzuladen. Gibt es die Pakete - weder lokal noch auf entfernten Rechnern, werden die Ports - verwendet. Um dies zu verhindern, benutzen Sie die - Option <option>-PP</option>.</para> - - <screen>&prompt.root; <userinput>portupgrade -PP gnome2</userinput></screen> - - <para>Wenn Sie nur die Quelldateien des Ports (oder die Pakete - mit <option>-P</option>) herunterladen m�chten, - ohne die Anwendung zu bauen oder zu installieren, - geben Sie die Option <option>-F</option> an. - Weitere M�glichkeiten lesen Sie bitte in - der Hilfeseite &man.portupgrade.1; nach.</para> - </sect3> - <sect3 xml:id="portmaster"> - <title>Ports mit <application>portmaster</application> + <title>Ports mit <application>Portmaster</application> aktualisieren</title> <indexterm> <primary>portmaster</primary> </indexterm> - <para><package>portmaster</package> ist ein weiteres Werkzeug - zum Aktualisieren von Ports. - <application>portmaster</application> nutzt nur Werkzeuge, - die bereits im Basissystem vorhanden sind, ohne dabei von - weiteren Ports abh�ngig zu sein. Es verwendet Informationen - in <filename>/var/db/pkg/</filename>, um - festzustellen, welche Ports aktualisiert werden sollen. - Sie k�nnen den Port wie folgt installieren:</para> + <para><package>ports-mgmt/portmaster</package> ist ein sehr + kleines Werkzeug zum Aktualisieren von Ports. Es wurde + entwickelt, um mit den in &os; integrierten Werkzeugen zu + arbeiten, ohne dabei von anderen Ports oder Datenbanken + abh�ngig zu sein. Sie k�nnen das Programm aus der + Ports-Sammlung installieren:</para> <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/portmaster</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para><application>Portmaster</application> teilt Ports in vier Kategorien ein:</para> <itemizedlist> <listitem> - <para>Root ports: no dependencies and is not depended on - by other ports</para> - </listitem> + <para>Root Port: hat keine Abh�ngigkeiten und andere Ports + sind nicht von diesem Port abh�ngig.</para> + </listitem> <listitem> - <para>Trunk ports: no dependencies, but other ports depend - upon it</para> - </listitem> + <para>Trunk Port: hat keine Abh�ngigkeiten, aber andere + Ports sind von diesem Port abh�ngig.</para> + </listitem> <listitem> - <para>Branch ports: have dependencies but are depended - upon by other ports</para> - </listitem> + <para>Branch Port: hat Abh�ngigkeiten und andere Ports + sind von diesem Port abh�ngig.</para> + </listitem> <listitem> - <para>Leaf ports: have dependencies but are not depended - upon by other ports</para> - </listitem> + <para>Leaf Port: hat Abh�ngigkeiten, aber andere Ports + sind nicht von diesem Port abh�ngig.</para> + </listitem> </itemizedlist> <para>Um eine Liste der installierten Ports anzuzeigen und - nach neueren Versionen zu suchen, verwenden Sie - <option>-L</option>:</para> + nach neueren Versionen zu suchen, verwenden Sie:</para> <screen>&prompt.root; <userinput>portmaster -L</userinput> ===>>> Root ports (No dependencies, not depended on) ===>>> ispell-3.2.06_18 ===>>> screen-4.0.3 ===>>> New version available: screen-4.0.3_1 ===>>> tcpflow-0.21_1 ===>>> 7 root ports ... ===>>> Branch ports (Have dependencies, are depended on) ===>>> apache22-2.2.3 ===>>> New version available: apache22-2.2.8 ... ===>>> Leaf ports (Have dependencies, not depended on) ===>>> automake-1.9.6_2 ===>>> bash-3.1.17 ===>>> New version available: bash-3.2.33 ... ===>>> 32 leaf ports ===>>> 137 total installed ports ===>>> 83 have new versions available </screen> <para>Um alle installierten Ports zu aktualisieren, verwenden Sie folgenden Befehl:</para> <screen>&prompt.root; <userinput>portmaster -a</userinput></screen> <note> <para>In der Voreinstellung erzeugt - <application>portmaster</application> eine + <application>Portmaster</application> eine Sicherheitskopie, bevor ein installierter Port gel�scht wird. Ist die Installation der neuen Version erfolgreich, wird dieses Backup wieder gel�scht. Wollen Sie das Backup lieber manuell l�schen, verwenden Sie die Option <option>-b</option> beim Aufruf von - <application>portmaster</application>. Durch die + <application>Portmaster</application>. Durch die Verwendung von <option>-i</option> wird - <application>portmaster</application> im interaktiven + <application>Portmaster</application> im interaktiven Modus gestartet und fragt bei jedem zu aktualisierenden - Port nach, wie weiter vorgegangen werden soll.</para> + Port nach, wie weiter vorgegangen werden soll. Viele + weitere Optionen stehen zur Verf�gung. Lesen Sie die + Manualpage von &man.portmaster.8; f�r weitere Einzelheiten + in Bezug auf ihre Nutzung.</para> </note> - <para>Treten w�hrend der Aktualisierung Fehler auf, k�nnen - Sie die Option <option>-f</option> verwenden, um alle Ports zu + <para>Treten w�hrend der Aktualisierung Fehler auf, verwenden + Sie die Option <option>-f</option>, um alle Ports zu aktualisieren beziehungsweise neu zu bauen:</para> <screen>&prompt.root; <userinput>portmaster -af</userinput></screen> - <para><application>portmaster</application> ist auch in der Lage, - neue Ports zu installieren, wobei zuvor alle abh�ngigen Ports - aktualisiert werden:</para> + <para><application>Portmaster</application> ist auch in der + Lage, neue Ports zu installieren, wobei zuvor alle + abh�ngigen Ports aktualisiert werden. Um diese Funktion + zu nutzen, geben Sie den Pfad des Ports in der + Ports-Sammlung an:</para> <screen>&prompt.root; <userinput>portmaster shells/bash</userinput></screen> + </sect3> - <para>Weiterf�hrende Informationen finden Sie in der Manualpage - &man.portmaster.8;.</para> + <sect3 xml:id="portupgrade"> + <title>Ports mit Portupgrade aktualisieren</title> + + <indexterm> + <primary>portupgrade</primary> + </indexterm> + + <para>Ein weiteres Werkzeug zur Aktualisierung von Ports ist + <application>Portupgrade</application>, welches als Paket oder + Port <package>ports-mgmt/portupgrade</package> zur Verf�gung + steht. Dieses Programm installiert eine Reihe von + Anwendungen, die f�r die Verwaltung von Ports verwendet werden + k�nnen. Das Programm ist jedoch von Ruby abh�ngig. Um den + Port zu installieren, geben Sie ein:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput> +&prompt.root; <userinput>make install clean</userinput></screen> + + <para>Durchsuchen Sie vor jedem Update die Liste der + installierten Ports mit <command>pkgdb -F</command> und + beheben Sie alle gefundenen Probleme.</para> + + <para>Benutzen Sie <command>portupgrade -a</command>, um + automatisch alle veralteten Ports auf dem System zu + aktualisieren. Verwenden Sie zus�tzlich den Schalter + <option>-i</option>, wenn Sie individuell entscheiden wollen, + ob ein Port aktualisiert werden soll:</para> + + <screen>&prompt.root; <userinput>portupgrade -ai</userinput></screen> + + <para>Um nur eine spezifische Anwendung zu aktualisieren, + verwenden Sie <command>portupgrade + <replaceable>Paketname</replaceable></command>. Es ist + wichtig den Schalter <option>-R</option> zu benutzen, um zuvor + alle Ports zu aktualisieren, die von dem gegebenen Anwendung + abh�ngen.</para> + + <screen>&prompt.root; <userinput>portupgrade -R firefox</userinput></screen> + + <para>Um Pakete anstelle von Ports zu installieren, verwenden + Sie den Schalter <option>-P</option>. Mit dieser + Option durchsucht <application>Portupgrade</application> + die in der Umgebungsvariablen <envar>PKG_PATH</envar> + aufgef�hrten Verzeichnisse nach Paketen. Sind + lokal keine Pakete vorhanden, versucht + <application>Portupgrade</application> die Pakete + �ber das Netz herunterzuladen. Gibt es die Pakete + weder lokal noch auf entfernten Rechnern, werden die Ports + verwendet. Um die Nutzung von Ports g�nzlich zu verhindern, + benutzen Sie die Option <option>-PP</option>. + <application>Portupgrade</application> w�rde dann abbrechen, + falls keine Pakete zur Verf�gung stehen.</para> + + <screen>&prompt.root; <userinput>portupgrade -PP gnome2</userinput></screen> + + <para>Wenn Sie nur die Quelldateien des Ports, oder die Pakete + mit <option>-P</option> herunterladen m�chten, ohne die + Anwendung zu bauen oder zu installieren, geben Sie den + Schalter <option>-F</option> an. Weitere Informationen zu den + verf�gbaren Schaltern finden Sie in der Manualpage von + &man.portupgrade.1;.</para> </sect3> </sect2> <sect2 xml:id="ports-disk-space"> <title>Platzbedarf von Ports</title> <indexterm> <primary>Ports</primary> <secondary>Plattenplatz</secondary> </indexterm> <para>Die Nutzung der Ports-Sammlung wird im Laufe der Zeit viel Plattenplatz verschlingen. Nach dem Bau und der Installation eines Ports, wird <command>make clean</command> die tempor�ren Arbeitsverzeichnisse <filename>work</filename> aufr�umen. - Um die gesamte Ports-Sammlung aufzur�umen, verwenden Sie - folgenden Befehl:</para> + <application>Portmaster</application> wird dieses Verzeichnis + automatisch entfernen, wenn die Option <option>-K</option> + verwendet wird. Wenn <application>Portupgrade</application> + installiert ist, wird dieser Befehl alle Arbeitsverzeichnisse + der lokalen Ports-Sammlung entfernen:</para> <screen>&prompt.root; <userinput>portsclean -C</userinput></screen> - <para>Im Laufe der Zeit werden sich zahlreiche veraltete - Distfiles in <filename>distfiles</filename> ansammeln. Mit - dem folgenden Befehl werden alle Distfiles gel�scht, die vom - keinem Port mehr ben�tigt werden:</para> + <para>Zus�tzlich werden sich im Laufe der Zeit zahlreiche + veraltete Distfiles in + <filename>/usr/ports/distfiles</filename> ansammeln. Wenn + <application>Portupgrade</application> installiert ist, k�nnen + mit dem folgenden Befehl alle Distfiles gel�scht werden, die + vom keinem Port mehr ben�tigt werden:</para> <screen>&prompt.root; <userinput>portsclean -D</userinput></screen> - <para>Um alle Distfiles zu l�schen, die von - keinem derzeit installierten Port referenziert werden:</para> + <para>Mit <application>Portupgrade</application> k�nnen Sie alle + Distfiles l�schen, die von keinem derzeit installierten + Port ben�tigt werden:</para> <screen>&prompt.root; <userinput>portsclean -DD</userinput></screen> - <note> - <para>Das Werkzeug <command>portsclean</command> wird - automatisch bei der Installation von - <package>portupgrade</package> mit installiert.</para> - </note> + <para>Wenn <application>Portmaster</application> installiert + ist, benutzen Sie diesen Befehl:</para> - <para><package>port-mgmt/pkg_cutleaves</package> automatisiert - die Deinstallation von installierten Ports, die nicht weiter - ben�tigt werden.</para> + <screen>&prompt.root; <userinput>portmaster --clean-distfiles</userinput></screen> + + <para>In der Voreinstellung arbeitet dieses Programm interaktiv + und fragt den Benutzer um Best�tigung, bevor ein Distfile + gel�scht wird.</para> + + <para>Zus�tzlich zu diesen Kommandos gibt es noch + <package>port-mgmt/pkg_cutleaves</package>. Dieses Werkzeug + automatisiert die Deinstallation von installierten Ports, die + nicht weiter ben�tigt werden.</para> </sect2> </sect1> <sect1 xml:id="ports-nextsteps"> <title>Nach der Installation</title> <para>Unabh�ngig davon, ob die Software aus einem bin�ren Paket oder aus einem Port installiert wird, ben�tigen die meisten Anwendungen von Drittanbietern ein gewisses Ma� an Konfiguration, nachdem sie installiert wurden. Die folgenden Kommandos und Speicherorte helfen Ihnen dabei festzustellen, was mit der Anwendung zusammen installiert wurde.</para> <itemizedlist> <listitem> <para>Die meisten Anwendungen installieren mindestens eine Konfigurationsdatei nach <filename>/usr/local/etc</filename>. Die Konfigurationsdateien sollten �berpr�ft und ggf. bearbeitet werden, um die Anforderungen des Systems zu erf�llen.</para> </listitem> <listitem> <para>Wenn die Anwendung Dokumentation zur Verf�gung stellt, wird diese nach <filename>/usr/local/share/doc</filename> installiert. Viele Anwendungen installieren auch Manualpages. Diese Dokumentation sollten Sie lesen, bevor Sie fortfahren.</para> </listitem> <listitem> <para>Einige Anwendungen laufen als Dienst und m�ssen vor dem ersten Start in <filename>/etc/rc.conf</filename> eingetragen werden. Diese Anwendungen installieren meist ein Skript in <filename>/usr/local/etc/rc.d</filename>. Weitere Informationen finden Sie im <xref linkend="configtuning-starting-services"/>.</para> </listitem> <listitem> <para>Benutzer der &man.csh.1; sollten <command>rehash</command> ausf�hren, um die neu installierten Programme nutzen zu k�nnen.</para> </listitem> <listitem> <para>Benutzen Sie <command>pkg info</command>, um die Dateien, Manualpages und Binaries zu ermitteln, die mit der Anwendung installiert wurden.</para> </listitem> </itemizedlist> </sect1> <sect1 xml:id="ports-broken"> <title>Kaputte Ports</title> - <para>Stolpern Sie einmal �ber einen Port, der nicht - funktioniert:</para> + <para>Wenn sich ein Port nicht bauen oder installieren l�sst, + versuchen Sie folgendes:</para> <orderedlist> <listitem> <para>Stellen Sie fest, ob die <link xlink:href="&url.base;/de/support.html#gnats">Datenbank mit den Problemberichten</link> bereits einen L�sungsvorschlag enth�lt. Ist dies der Fall, kann die vorgeschlagene L�sung getestet werden.</para> </listitem> <listitem> - <para>Bitten Sie den Betreuer des Ports um Hilfe. Geben - Sie dazu <command>make maintainer</command> - ein oder lesen Sie das <filename>Makefile</filename> im Verzeichnis - des Ports, um an die E-Mail-Adresse zu kommen. Vergessen Sie nicht - den Namen und die Version des Ports (schicken Sie die Zeile mit - <literal>$FreeBSD:</literal> aus dem - <filename>Makefile</filename>) und die Ausgabe bis zur Fehlermeldung - mitzuschicken.</para> + <para>Bitten Sie den Betreuer des Ports um Hilfe. Geben Sie + dazu <command>make maintainer</command> ein oder lesen Sie + das <filename>Makefile</filename> im Verzeichnis des Ports, + um an die E-Mail-Adresse zu kommen. Vergessen Sie nicht + die Zeile mit <literal>$FreeBSD:</literal> aus dem + <filename>Makefile</filename> und die Ausgabe bis zur + Fehlermeldung mitzuschicken.</para> <note> <para>Einige Ports werden nicht von einer Einzelperson, sondern von einer <link xlink:href="&url.articles.mailing-list-faq.en;/article.html"> Mailingliste</link> betreut. Viele (aber nicht alle) dieser Adressen haben die Form <email role="nolink">freebsd-NameDerListe@FreeBSD.org</email>. Denken Sie daran, wenn Sie Ihre Fragen formulieren.</para> <para>Dies gilt insbesondere f�r Ports, die als Betreuer den Eintrag <email role="nolink">ports@FreeBSD.org</email> aufweisen. Derartige Ports haben �berhaupt keinen Betreuer. Korrekturen und Unterst�tzung kommen daher nur von Personen, die diese Mailingliste abonniert haben. Gerade in diesem Bereich werden jederzeit zus�tzliche freiwillige Helfer ben�tigt!</para> </note> <para>Erhalten Sie auf Ihre Anfrage keine Antwort, benutzen - Sie &man.send-pr.1;, um einen Problembericht zu erstellen. + Sie Bugzilla, um einen Problembericht zu erstellen. Bevor Sie einen solchen Bericht erstellen, lesen Sie den Artikel <link xlink:href="&url.articles.problem-reports.en;/article.html">Writing &os; Problem Reports</link>.</para> </listitem> <listitem> <para>Reparieren Sie ihn! Das <link xlink:href="&url.books.porters-handbook.en;/index.html">&os; Porter's Handbook</link> enth�lt eine detaillierte Beschreibung des Portsystems. Damit sind Sie in der Lage, - einen gelegentlich kaputten Port zu reparieren oder einen + einen zeitweilig kaputten Port zu reparieren oder einen eigenen Port zu erstellen.</para> </listitem> <listitem> - <para>Benutzen Sie alternativ &man.pkg.add.1;, um das Paket zu - installieren.</para> + <para>Installieren Sie das Paket anstelle des Ports. + Anweisungen hierzu finden Sie in + <xref linkend="packages-using"/> oder in + <xref linkend="pkgng-intro"/>.</para> </listitem> </orderedlist> </sect1> </chapter>