Note: You are viewing an old version of this page. View the current version.

  • install to $j/base
  • create $j/etc $j/var $j/home $j/tmp $j/usrlocal etc
  • null-ro mount $j/base to $j/root
  • null-rw mount $j/etc to $j/root/etc
  • null-rw mount $j/var to $j/root/var
  • etc...
  • when upgrade time, diff $j/etc against $j/base/etc to see what was edited and how
  • upgrade $j/base
  • copy $j/base to $j/etc and apply the patches for changed items
  • things like var can be updated by running the var mtree over it
  • things like home and stuff don't need to be upgraded

poudriere builds packages into jenga.den:/srv/www/root/packages/cdnjail-cdn/ using ports tree cdn and jail cdnjail

/usr/local/etc/poudriere.conf

ZPOOL=jenga
FREEBSD_HOST=http://jenga.den.cyberleo.net # make release into /pub/FreeBSD/releases/amd64/amd64/9.1-RELEASE-CDNJAIL/
BASEFS=/poudriere
DISTFILES_CACHE=/var/ports/distfiles # shared with host
CCACHE_DIR=/poudriere/ccache
export HTTP_PROXY=http://gateway.den.cyberleo.net:46565
export FTP_PROXY=http://gateway.den.cyberleo.net:46565
ALLOW_MAKE_JOBS=yes

Using this method, /usr/ports MUST NOT EXIST WHATSOEVER OR PORTMASTER WILL BITCH AT YOU WITH AN UNINTELLIGIBLE ERROR MESSAGE THAT YOU WILL SPEND HOURS TRYING TO DEBUG BEFORE JUST DELETING THE DIRECTORY AND FUCK.

/usr/local/etc/portmaster.rc

# Look for INDEX-9.bz2 here
MASTER_SITE_INDEX=http://jenga.den.cyberleo.net/packages/cdnjail-cdn/
# Look for packages here; should point to the directory containing All, Latest, et alia
PACKAGESITE=${MASTER_SITE_INDEX}
# Store the downloaded packages here
PACKAGES=/%
# Use packages only; never try to use ports tree
PM_PACKAGES=only
# Use INDEX for port version information
PM_INDEX=yes
# Use only INDEX; never try to use ports tree
PM_INDEX_ONLY=pm_index_only

Install portmaster and cdn-base from newly configured repo

PACKAGESITE=http://jenga.den.cyberleo.net/packages/cdnjail-cdn/Latest/ pkg_add -r portmaster
portmaster misc-cdn/cdn-base

Check that ports are up to date without updating anything

portmaster -an

Show root and leaf port origins on the current machine

portmaster --list-origins