3. Jail Build Environment Setup
Prev |  | Next

## 3. Jail Build Environment Setup

Package builds are performed by the clients in a `jail` populated by the `portbuild` script using the ``${arch}`/`${branch}`/builds/`${buildid}`/bindist.tar` file.

On the server, use the `makeworld` command to build a world from the ``${arch}`/`${branch}`/builds/`${buildid}`/src/` tree and install it into ``${arch}`/`${branch}`/builds/`${buildid}`/bindist.tar`. The tree will be updated first unless `-novcs` is specified.

`#` `/a/portbuild/admin/scripts/makeworld `${arch}` `${branch}` `${buildid}` [-novcs]`

Similiarly on the server, the `bindist.tar` tarball is created from the previously installed world by the `mkbindist` script.

`#` `/a/portbuild/admin/scripts/mkbindist `${arch}` `${branch}` `${buildid}``

The per-machine tarballs are located on the server in ``${arch}`/clients`.

The `bindist.tar` file is extracted onto each client at client boot time, and at the start of each pass of the `dopackages` script.

For both commands above, if `${buildid}` is `latest`, it may be omitted.

### Note:

Currently the above two scripts must be run as `root`; otherwise, the install scripts lack sufficient permissions. This is undesirable for security reasons. Work is in progress in -HEAD to allow users to do installations; once that is committed, the intention is to use that and run these two commands as `srcbuild`.

Prev |  | Next
2. Build Client Management | Home | 4. Customizing Your Build

All FreeBSD documents are available for download at http://ftp.FreeBSD.org/pub/FreeBSD/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.