#!/bin/bash set -e function deploysets { for set in base comp etc man misc modules text; do echo -n $set... bsdtar -xJp --numeric-owner -f $repo/$set.tar.xz -C /var/tmp/tree/ && echo done done; unset set } source ${0%/*}/installffs.conf [[ -z $name ]] && echo define name && exit 1 [[ -z $repo ]] && echo define repo && exit 1 [[ -z $image ]] && echo define image && exit 1 [[ -z $tools ]] && echo define tools && exit 1 [[ -z $zone ]] && echo define zone && exit 1 [[ ! -x $tools/bin/nbmakefs ]] && echo $tools/bin/nbmakefs executable not found && exit 1 [[ ! -x `which bsdtar` ]] && echo install libarchive first && exit 1 [[ ! -x `which fallocate` ]] && echo install util-linux first && exit 1 echo echo prepare /var/tmp/tree/ echo rm -rf /var/tmp/tree/ mkdir /var/tmp/tree/ deploysets ln -sf ../usr/share/zoneinfo/$zone /var/tmp/tree/etc/localtime 2>/dev/null #no network config yet hence no sshd cat > /var/tmp/tree/etc/rc.conf < /var/tmp/tree/etc/myname echo 127.0.0.1 $name >> /var/tmp/tree/etc/hosts cat > /var/tmp/tree/etc/fstab <> /var/tmp/tree/etc/rc.local <