Source string Read only

(itstool) path: note/para
517/5170
Context English State
The <acronym>FTP</acronym>/<acronym>HTTP</acronym> server to use when the jails are installed from FreeBSD releases and updated with <citerefentry><refentrytitle>freebsd-update</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Choose a server location which is close, for example if the machine is located in Australia, use <literal>ftp.au.freebsd.org</literal>.
<varname>SVN_HOST</varname>
The server from where jails are installed and updated when using <application>Subversion</application>. Also used for ports tree when not using <citerefentry><refentrytitle>portsnap</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Again, choose a nearby location. A list of official <application>Subversion</application> mirrors can be found in the <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/svn.html#svn-mirrors">FreeBSD Handbook <application>Subversion</application> section</link>.
Creating <application>Poudriere</application> Jails
Create the base jails which <application>Poudriere</application> will use for building:
<prompt>#</prompt> <userinput>poudriere jail -c -j 113Ramd64 -v 11.3-RELEASE -a amd64</userinput>
Fetch a <literal>11.3-RELEASE</literal> for <literal>amd64</literal> from the <acronym>FTP</acronym> server given by <varname>FREEBSD_HOST</varname> in <filename>poudriere.conf</filename>, create the zfs file system <literal>tank/poudriere/jails/113Ramd64</literal>, mount it on <filename>/poudriere/jails/113Ramd64</filename> and extract the <literal>11.3-RELEASE</literal> tarballs into this file system.
<prompt>#</prompt> <userinput>poudriere jail -c -j 11i386 -v stable/11 -a i386 -m svn+https</userinput>
buildworld
Create <literal>tank/poudriere/jails/11i386</literal>, mount it on <filename>/poudriere/jails/11i386</filename>, then check out the tip of the <application>Subversion</application> branch of <literal>FreeBSD-11-STABLE</literal> from <literal>SVN_HOST</literal> in <filename>poudriere.conf</filename> into <filename>/poudriere/jails/11i386/usr/src</filename>, then complete a <_:buildtarget-1/> and install it into <filename>/poudriere/jails/11i386</filename>.
If a specific <application>Subversion</application> revision is needed, append it to the version string. For example:
<prompt>#</prompt> <userinput>poudriere jail -c -j 11i386 -v stable/11@123456 -a i386 -m svn+https</userinput>
While it is possible to build a newer version of FreeBSD on an older version, most of the time it will not run. For example, if a <literal>stable/11</literal> jail is needed, the host will have to run <literal>stable/11</literal> too. Running <literal>11.3-RELEASE</literal> is not enough.
To create a <application>Poudriere</application> jail for <literal>13.0-CURRENT</literal>:
<prompt>#</prompt> <userinput>poudriere jail -c -j 13amd64 -v head -a amd64 -m svn+https</userinput>
In order to run a <literal>13.0-CURRENT</literal> <application>Poudriere</application> jail you must be running <literal>13.0-CURRENT</literal>. In general, newer kernels can build and run older jails. For instance, a <literal>13.0-CURRENT</literal> kernel can build and run a <literal>11.3-STABLE</literal> <application>Poudriere</application> jail if the <literal>COMPAT_FREEBSD11</literal> kernel option was compiled in (on by default in <literal>13.0-CURRENT</literal> <filename>GENERIC</filename> kernel config).
The default <literal>svn</literal> protocol works but is not very secure. Using <literal>svn+https</literal> along with verifying the remote server's <acronym>SSL</acronym> fingerprint is advised. It will ensure that the files used for building the jail are from a trusted source.
A list of jails currently known to <application>Poudriere</application> can be shown with <command>poudriere jail -l</command>:
<prompt>#</prompt> <userinput>poudriere jail -l</userinput>
JAILNAME VERSION ARCH METHOD
113Ramd64 11.3-RELEASE amd64 ftp
11i386 11.3-STABLE i386 svn+https
Keeping <application>Poudriere</application> Jails Updated
Managing updates is very straightforward. The command:
<prompt>#</prompt> <userinput>poudriere jail -u -j <replaceable>JAILNAME</replaceable></userinput>
updates the specified jail to the latest version available. For FreeBSD releases, update to the latest patchlevel with <citerefentry><refentrytitle>freebsd-update</refentrytitle><manvolnum>8</manvolnum></citerefentry>. For FreeBSD versions built from source, update to the latest <application>Subversion</application> revision in the branch.
For jails employing a <literal>svn+<replaceable>*</replaceable></literal> method, it is helpful to add <command>-J <replaceable>NumberOfParallelBuildJobs</replaceable></command> to speed up the build by increasing the number of parallel compile jobs used. For example, if the building machine has 6 <acronym>CPU</acronym>s, use:
<prompt>#</prompt> <userinput>poudriere jail -u -J 6 -j <replaceable>JAILNAME</replaceable></userinput>
Setting Up Ports Trees for Use with <application>Poudriere</application>
There are multiple ways to use ports trees in <application>Poudriere</application>. The most straightforward way is to have <application>Poudriere</application> create a default ports tree for itself, using either <citerefentry><refentrytitle>portsnap</refentrytitle><manvolnum>8</manvolnum></citerefentry> (if running FreeBSD 12.1 or 11.4) or <application>Subversion</application> (if running FreeBSD-CURRENT):
<prompt>#</prompt> <userinput>poudriere ports -c -m portsnap</userinput>
<prompt>#</prompt> <userinput>poudriere ports -c -m svn+https</userinput>
These commands create <literal>tank/poudriere/ports/default</literal>, mount it on <filename>/poudriere/ports/default</filename>, and populate it using either <citerefentry><refentrytitle>portsnap</refentrytitle><manvolnum>8</manvolnum></citerefentry> or <application>Subversion</application>. Afterward it is included in the list of known ports trees:
<prompt>#</prompt> <userinput>poudriere ports -l</userinput>
PORTSTREE METHOD TIMESTAMP PATH
default svn+https 2020-07-20 04:23:56 /poudriere/ports/default

Loading…

No matching activity found.

Browse all component changes

Things to check

Multiple failing checks

The translations in several languages have failing checks

Reset

Glossary

English English
No related strings found in the glossary.

Source information

Source string comment
(itstool) path: note/para
Flags
read-only
Source string location
book.translate.xml:19189
String age
3 months ago
Source string age
3 months ago
Translation file
books/porters-handbook.pot, string 4013