Cloning fossil
$ fossil clone https://fossil.etoilebsd.net/poudriere poudriere.fossil $ mkdir poudriere $ cd poudriere $ fossil open ../poudriere.fossil
Installing poudriere
$ make $ make install
Updating poudriere
$ fossil update $ make $ make install
Configuring poudriere
$ cd /usr/local/etc/ $ cp poudriere.conf poudriere.conf.sample
Make sure the following options are set
ZPOOL=zroot ZROOTFS=/poudriere FREEBSD_HOST=http://freebsd.isc.org RESOLV_CONF=/etc/resolv.conf BASEFS=/usr/local/poudriere USE_PORTLINT=no USE_TMPFS=all DISTFILES_CACHE=/usr/ports/distfiles SVN_HOST=svn0.us-west.FreeBSD.org CHECK_CHANGED_OPTIONS=yes CHECK_CHANGED_DEPS=yes NO_RESTRICTED=yes URL_BASE=http://beefy2.isc.freebsd.org
Create the building jails (for amd64)
$ poudriere jail -c -j 83amd64 -v 8.4-RELEASE $ poudriere jail -c -j 91amd64 -v 9.1-RELEASE $ poudriere jail -c -j head -v 10.0-CURRENT
for i386
$ poudriere jail -c -j 83amd64 -v 8.4-RELEASE $ poudriere jail -c -j 91amd64 -v 9.1-RELEASE $ poudriere jail -c -j head -v 10.0-CURRENT
Create the ports tree
$ poudriere ports -c
Update the ports tree
$ poudriere ports -u
Make sure to build pkgng packages and not build restricted packages
$ echo 'WITH_PKGNG=yes' > /usr/local/etc/poudriere.d/make.conf $ echo 'NO_RESTRICTED=yes' >> /usr/local/etc/poudriere.d/make.conf
Start building packages:
$ poudriere bulk -j 91amd64 -a
Setup nginx (make sure nginx has the fancyindex module - nginx.conf:
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile off; keepalive_timeout 65; gzip on; gzip_http_version 1.0; gzip_comp_level 6; gzip_proxied any; gzip_min_length 1100; gzip_buffers 16 8k; gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript image/gif image/jpeg image/png application/json; server { listen 80; listen [::]:80; server_name beefy2.isc.freebsd.org; location / { root /usr/local/poudriere/data/logs; index index.html index.htm; allow all; fancyindex on; } } }
The two following lines needs to be added the the nginx mime.types file:
application/json json; text/plain log;