Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F166511582
D5740.id14605.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
10 KB
Referenced Files
None
Subscribers
None
D5740.id14605.diff
View Options
Index: ports/chapter.xml
===================================================================
--- ports/chapter.xml
+++ ports/chapter.xml
@@ -5,7 +5,7 @@
$FreeBSD$
$FreeBSDde: de-docproj/books/handbook/ports/chapter.xml,v 1.111 2011/12/19 17:13:33 bcr Exp $
- basiert auf: r43886
+ basiert auf: r44016
-->
<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>
@@ -1596,6 +1596,212 @@
</sect2>
</sect1>
+ <sect1 xml:id="ports-poudriere">
+ <title>Pakete mit <application>Poudriere</application>
+ bauen</title>
+
+ <para><application>Poudriere</application> ist ein unter der
+ <acronym>BSD</acronym>-Lizenz stehendes Werkzeug zum Erstellen
+ und Testen von &os;-Paketen. Dieses Programm nutzt &os; Jails,
+ um die Pakete in einer isolierten Umgebung zu bauen. Diese
+ Jails können verwendet werden, um Pakete für andere Versionen
+ von &os; zu bauen, oder um auf einem &arch.amd64;-System Pakete
+ für i386 zu bauen. Sobald die Pakete gebaut sind, haben sie das
+ gleiche Format wie auf den offiziellen Spiegeln. Die Pakete
+ können dann mit &man.pkg.8; oder anderen
+ Paketverwaltungswerkzeugen benutzt werden.</para>
+
+ <para><application>Poudriere</application> wird über das Paket
+ oder den Port <package>ports-mgmt/poudriere</package>
+ installiert. Die Installation beinhaltet eine
+ Beispielkonfiguration in
+ <filename>/usr/local/etc/poudriere.conf.sample</filename>.
+ Kopieren Sie diese Datei nach
+ <filename>/usr/local/etc/poudriere.conf</filename>. Bearbeiten
+ Sie dann die kopierte Datei, um die Konfiguration
+ anzupassen.</para>
+
+ <para>Obwohl <acronym>ZFS</acronym> für
+ <application>poudriere</application> nicht zwingend erforderlich
+ ist, so hat die Nutzung doch einige Vorteile. Wird
+ <acronym>ZFS</acronym> eingesetzt, muss in
+ <filename>/usr/local/etc/poudriere.conf</filename> die Variable
+ <varname>ZPOOL</varname> definiert, und die Variable
+ <varname>FREEBSD_HOST</varname> auf einen nahe gelegenen
+ Spiegel gesetzt werden. Die Definition von
+ <varname>CCACHE_DIR</varname> erlaubt die Verwendung von
+ <package>devel/ccache</package>, um die Bauzeit für häufig
+ kompilierten Code verkürzen. Es kann vorteilhaft sein, die
+ <application>poudriere</application>-Datasets in einem separaten
+ Verzeichnis auf <filename>/poudriere</filename> einzuhängen.
+ Die Werte der anderen Konfigurationsvariablen sind in der Regel
+ angemessen und brauchen nicht geändert werden.</para>
+
+ <para>Die Anzahl der Kerne im Prozessor wird verwendet um zu
+ bestimmen, wie viele Bauprozesse parallel ausgeführt werden
+ sollen. Stellen Sie ausreichend virtuellen Speicher bereit,
+ entweder in Form von <acronym>RAM</acronym> oder als
+ Swap-Speicher. Ist der virtuelle Speicher aufgebraucht, bricht
+ der Bauprozess ab und die Jails stürzen ab, was zu seltsamen
+ Fehlermeldungen führt.</para>
+
+ <sect2 xml:id="poudriere-initialization">
+ <title>Jails und Ports-Sammlung initialisieren</title>
+
+ <para>Nach der Konfiguration muss
+ <application>poudriere</application> initialisiert werden,
+ damit es eine Jail mit der benötigten Ports-Sammlung startet.
+ Geben Sie mit <option>-j</option> den Namen der Jail und mit
+ <option>-v</option> die gewünschte &os;-Version an. Auf
+ &os;/&arch.amd64;-Systemen kann die Architektur mit dem
+ Schalter <option>-a</option> und <literal>i386</literal> oder
+ <literal>amd64</literal> gesetzt werden. Der voreingestellte
+ Wert für die Architektur können Sie sich mit
+ <command>uname</command> anzeigen lassen.</para>
+
+ <screen>&prompt.root; <userinput>poudriere jail -c -j <replaceable>10amd64</replaceable> -v <replaceable>10.0-RELEASE</replaceable></userinput>
+====>> Creating 10amd64 fs... done
+====>> Fetching base.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/base.txz 100% of 59 MB 1470 kBps 00m42s
+====>> Extracting base.txz... done
+====>> Fetching src.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/src.txz 100% of 107 MB 1476 kBps 01m14s
+====>> Extracting src.txz... done
+====>> Fetching games.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/games.txz 100% of 865 kB 734 kBps 00m01s
+====>> Extracting games.txz... done
+====>> Fetching lib32.txz for FreeBSD 10.0-RELEASE amd64
+/poudriere/jails/10amd64/fromftp/lib32.txz 100% of 14 MB 1316 kBps 00m12s
+====>> Extracting lib32.txz... done
+====>> Cleaning up... done
+====>> Jail 10amd64 10.0-RELEASE amd64 is ready to be used</screen>
+
+ <screen>&prompt.root; <userinput>poudriere ports -c -p <replaceable>local</replaceable></userinput>
+====>> Creating local fs... done
+====>> Extracting portstree "local"...
+Looking up portsnap.FreeBSD.org mirrors... 7 mirrors found.
+Fetching public key from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot metadata... done.
+Fetching snapshot generated at Tue Feb 11 01:07:15 CET 2014:
+94a3431f0ce567f6452ffde4fd3d7d3c6e1da143efec76100% of 69 MB 1246 kBps 00m57s
+Extracting snapshot... done.
+Verifying snapshot integrity... done.
+Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org... done.
+Fetching snapshot metadata... done.
+Updating from Tue Feb 11 01:07:15 CET 2014 to Tue Feb 11 16:05:20 CET 2014.
+Fetching 4 metadata patches... done.
+Applying metadata patches... done.
+Fetching 0 metadata files... done.
+Fetching 48 patches.
+(48/48) 100.00% done.
+done.
+Applying patches...
+done.
+Fetching 1 new ports or files... done.
+/poudriere/ports/tester/CHANGES
+/poudriere/ports/tester/COPYRIGHT
+
+[...]
+
+Building new INDEX files... done.</screen>
+
+ <para><application>poudriere</application> kann auf einem
+ einzelnen Rechner Ports mit mehreren Konfigurationen
+ bauen, in mehreren Jails und aus unterschiedlichen
+ Ports-Sammlungen. Spezifische Konfigurationen für diese
+ Kombinationen werden <emphasis>Sets</emphasis>
+ genannt. Lesen Sie den Abschnitt CUSTOMIZATION in
+ &man.poudriere.8; für weitere Einzelheiten nach der
+ Installation von <package>port-mgmt/poudriere</package> oder
+ <package>ports-mgmt/poudriere-devel</package>.</para>
+
+ <para>Die hier gezeigte Konfiguration verwendet eine einzelne
+ Jail-, Port- und Set-spezifische
+ <filename>make.conf</filename> in
+ <filename>/usr/local/etc/poudriere.d</filename>. Der
+ verwendete Dateiname in diesem Beispiel wird aus einer
+ Kombination von Jailnamen, Portnamen und Setnamen zusammen
+ gesetzt:
+ <filename><replaceable>10amd64-local-workstation</replaceable>-make.conf</filename>.
+ Die <filename>make.conf</filename> des Systems und diese neue
+ Datei werden verwendet, um die <filename>make.conf</filename>
+ für die Jail zu erzeugen.</para>
+
+ <para>Die zu bauenden Pakete werden in
+ <filename><replaceable>10amd64-local-workstation</replaceable>-pkglist</filename>
+ eingetragen:</para>
+
+ <programlisting>editors/emacs
+devel/git
+ports-mgmt/pkg
+...</programlisting>
+
+ <para>Die Optionen und Abhängigkeiten für die Ports werden wie
+ folgt konfiguriert:</para>
+
+ <screen>&prompt.root; <userinput>poudriere options -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput></screen>
+
+ <para>Schließlich werden die Pakete gebaut und ein
+ Paket-Repository erstellt:</para>
+
+ <screen>&prompt.root; <userinput>poudriere bulk -j <replaceable>10amd64</replaceable> -p <replaceable>local</replaceable> -z <replaceable>workstation</replaceable> -f <replaceable>10amd64-local-workstation-pkglist</replaceable></userinput></screen>
+
+ <para><keycombo
+ action="simul"><keycap>Ctrl</keycap><keycap>t</keycap></keycombo>
+ zeigt den aktuellen Status des Baus an.
+ <application>Poudriere</application> speichert zudem Dateien
+ in <filename>/poudriere/logs/bulk/jailname</filename>. Diese
+ Dateien kann ein Webserver nutzen, um Informationen über den
+ Bau anzuzeigen.</para>
+
+ <para>Die Pakete stehen jetzt im
+ <application>poudriere</application> Repository für die
+ Installation zur Verfügung.</para>
+
+ <para>Weitere Informationen zu
+ <application>poudriere</application> finden Sie in
+ &man.poudriere.8; und unter <link
+ xlink:href="https://github.com/freebsd/poudriere/wiki"></link>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Konfiguration des pkg-Clients für das Poudriere
+ Repository</title>
+
+ <para>Obwohl es möglich ist ein eigenes Repository zusammen mit
+ dem offiziellen Repository zu nutzen, ist es manchmal
+ sinnvoll das offizielle Repository zu deaktivieren. Dazu
+ wird eine Konfigurationsdatei erstellt, welche die offizielle
+ Konfigurationsdatei überschreibt. Erzeugen Sie dazu
+ <filename>/usr/local/etc/pkg/repos/FreeBSD.conf</filename>
+ mit dem folgenden Inhalt:</para>
+
+ <programlisting>FreeBSD: {
+ enabled: no
+}</programlisting>
+
+ <para>Am einfachsten ist es, das poudriere Repository über
+ <acronym>HTTP</acronym> zur Verfügung zu stellen. Setzen Sie
+ einen Webserver auf, der die Dateien des Paketverzeichnisses
+ ausliefert, zum Beispiel
+ <filename>/usr/local/poudriere/data/packages/<replaceable>10amd64</replaceable></filename>.
+ <filename>10amd64</filename> bezeichnet dabei den Namen des
+ Baus.</para>
+
+ <para>Wenn die <acronym>URL</acronym> des Paket Repositories
+ <literal>http://pkg.example.com/10amd64</literal> ist, dann
+ sollte die Konfiguration des Repositories in
+ <filename>/usr/local/etc/pkg/repos/custom.conf</filename>
+ wie folgt aussehen:</para>
+
+ <programlisting>custom: {
+ url: "<replaceable>http://pkg.example.com/10amd64</replaceable>",
+ enabled: yes,
+}</programlisting>
+ </sect2>
+ </sect1>
+
<sect1 xml:id="ports-nextsteps">
<title>Nach der Installation</title>
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Aug 14, 9:12 PM (3 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36767770
Default Alt Text
D5740.id14605.diff (10 KB)
Attached To
Mode
D5740: Update de_DE/books/handbook/ports/chapter.xml to r44016
Attached
Detach File
Event Timeline
Log In to Comment