The add-on ports tree for FreeBSD ports system.
To build packages in this repository:
- Merge official FreeBSD ports tree and this repository with portshaker
- Build package from merged ports tree with poudriere
Install portshaker
and poudriere
:
# pkg install portshaker poudriere
(Recommended but optional) Install dialog4ports
, to specify ports build option with poudriere options
:
# pkg install dialog4ports
Put /usr/local/etc/portshaker.d/freebsd_ports
:
#!/bin/sh
# $Id$
. /usr/local/share/portshaker/portshaker.subr
method="git"
git_clone_uri="https://github.com/freebsd/freebsd-ports.git"
run_portshaker_command $*
and /usr/local/etc/portshaker.d/rworksjp
:
#!/bin/sh
. /usr/local/share/portshaker/portshaker.subr
method="git"
git_clone_uri="https://github.com/rworksjp/freebsd-ports.git"
run_portshaker_command $*
Edit /usr/local/etc/portshaker.conf
:
mirror_base_dir=/var/cache/portshaker
poudriere_ports_mountpoint="/usr/local/poudriere/ports"
rworksjp_poudriere_tree=rworksjp
rworksjp_merge_from="freebsd_ports rworksjp"
(Optional) When you have a ZFS pool and want to build packages with it, the following instructions are required:
- Add
ZPOOL=zroot
line in/usr/local/etc/poudriere.conf
, if you have a ZFS pool namedzroot
. - Create a ZFS filesystem for portshaker,
zfs create -o mountpoint=/var/cache/portshaker zroot/portshaker
, if you have a ZFS pool namedzroot
. - Add
use_zfs=yes
andpoudriere_dataset="data/poudriere"
lines in/usr/local/etc/portshaker.conf
.
For people building lots of packages, compression option of ZFS filesystem give a help to reduce disk usage.
Creating poudirere builder jail, for example:
# poudriere jails -c -j FreeBSD:10:amd64 -v 10.2-RELEASE -a amd64
Update ports trees and merge them with portshaker
, instead of poudriere ports -u
:
# portshaker
Build sysutils/glusterfs
package with FreeBSD:10:amd64
builder:
# poudriere bulk -j FreeBSD:10:amd64 -p rworksjp sysutils/glusterfs
This creates packages, glusterfs
its own and required, usually under /usr/local/poudriere/data/packages/FreeBSD:10:amd64-rworksjp/
Licensed under the BSD 2-clause License. For detailed information see LICENSE.
About portshaker, consult following:
man 8 portshaker
: how to use portshaker commandman 5 portshaker.conf
:configuration formats and optionsman 5 portshaker.d
: how to create or change files under /usr/local/etc/portshaker.d/- smortex/portshaker: portshaker source code on github, if you want to follow how portshaker works
About poudriere, consult following:
- Poudriere section in FreeBSD Porter's Handbook: general usage to building ports with poudriere
- poudriere documentation: poudriere official documentation, including design and combination with other tools
man 8 poudriere
: about poudriere command and subcommand and how to use these- freebsd/poudriere: poudirere source code on github, if you want to follow how poudriere works