Package Building Procedures
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 | Home | Next
Build Client Management |  | Customizing Your Build