diff --git a/Makefile b/Makefile index 43e0703..20b3666 100644 --- a/Makefile +++ b/Makefile @@ -33,6 +33,8 @@ compress_man: .endfor install: install_bin install_templates install_makefiles install_scripts install_man + install -d ${DESTDIR}${PREFIX}/etc + install -m 0644 reggae.conf.sample ${DESTDIR}${PREFIX}/etc install_bin: install -d ${DESTDIR}${PREFIX}${BIN} diff --git a/reggae.conf.sample b/reggae.conf.sample new file mode 100644 index 0000000..e8fe8cf --- /dev/null +++ b/reggae.conf.sample @@ -0,0 +1,8 @@ +# Following are default values + +BRIDGE_INTERFACE="bridge1" +CBSD_WORKDIR="/cbsd" +DOMAIN="my.domain" +IP_POOL="10.0.0.0/24" +JAIL_INTERFACE="lo1" +ZFS_POOL="zroot" diff --git a/scripts/init.sh b/scripts/init.sh index 31239c0..71c336d 100755 --- a/scripts/init.sh +++ b/scripts/init.sh @@ -1,5 +1,14 @@ -CBSD_WORKDIR="/cbsd" -DOMAIN="my.domain" +#!/bin/sh + +if [ -e "/usr/local/etc/reggae.conf" ]; then + . "/usr/local/etc/reggae.conf" +fi +CBSD_WORKDIR=${CBSD_WORKDIR:-"/cbsd"} +DOMAIN=${DOMAIN:-"my.domain"} +BRIDGE_INTERFACE=${BRIDGE_INTERFACCE:-"bridge1"} +JAIL_INTERFACE=${JAIL_INTERFACE:-"lo1"} +ZFS_POOL=${ZFS_POOL:-"zroot"} +IP_POOL=${IP_POOL:-"10.0.0.0/24"} SSHD_FLAGS=`sysrc -n sshd_flags` SHORT_HOSTNAME=`hostname -s` HOSTNAME=`hostname` @@ -17,20 +26,20 @@ for iface in ${CLONED_INTERFACES}; do done -LO1_INTERFACE=`grep '^lo1$' /tmp/ifaces.txt` +LO1_INTERFACE=`grep "^${JAIL_INTERFACE}$" /tmp/ifaces.txt` if [ -z "${LO1_INTERFACE}" ]; then if [ -z "${CLONED_INTERFACES}" ]; then - CLONED_INTERFACES="lo1" + CLONED_INTERFACES="${JAIL_INTERFACE}" else - CLONED_INTERFACES="${CLONED_INTERFACES} lo1" + CLONED_INTERFACES="${CLONED_INTERFACES} ${JAIL_INTERFACE}" fi sysrc ifconfig_lo1="up" fi -BRIDGE1_INTERFACE=`grep '^bridge1$' /tmp/ifaces.txt` +BRIDGE1_INTERFACE=`grep "^${BRIDGE_INTERFACE}$" /tmp/ifaces.txt` if [ -z "${BRIDGE1_INTERFACE}" ]; then - CLONED_INTERFACES="${CLONED_INTERFACES} bridge1" - sysrc ifconfig_bridge1="inet 172.16.0.1 netmask 255.255.255.0 description ${EGRESS}" + CLONED_INTERFACES="${CLONED_INTERFACES} ${BRIDGE_INTERFACE}" + sysrc ifconfig_${BRIDGE_INTERFACE}="inet 172.16.0.1 netmask 255.255.255.0 description ${EGRESS}" fi sysrc cloned_interfaces="${CLONED_INTERFACES}" @@ -39,7 +48,7 @@ rm -rf /tmp/ifaces.txt if [ ! -d "${CBSD_WORKDIR}" ]; then - zfs create -o mountpoint=${CBSD_WORKDIR} zroot${CBSD_WORKDIR} + zfs create -o mountpoint=${CBSD_WORKDIR} ${ZFS_POOL}${CBSD_WORKDIR} fi if [ "${HOSTNAME}" == "${SHORT_HOSTNAME}" ]; then @@ -57,6 +66,7 @@ sed \ -e "s:NODEIP:${NODEIP}:g" \ -e "s:NAMESERVER:${RESOLVER}:g" \ -e "s:NATIP:${NATIP}:g" \ + -e "s:IP_POOL:${IP_POOL}:g" \ /usr/local/share/reggae/templates/initenv.conf >"${TEMP_INITENV_CONF}" env workdir="${CBSD_WORKDIR}" /usr/local/cbsd/sudoexec/initenv "${TEMP_INITENV_CONF}" diff --git a/templates/initenv.conf b/templates/initenv.conf index 970d630..2dea4ec 100644 --- a/templates/initenv.conf +++ b/templates/initenv.conf @@ -4,7 +4,7 @@ nodename="HOSTNAME" nodeip="NODEIP" jnameserver="NAMESERVER" -nodeippool="10.0.0.0/24" +nodeippool="IP_POOL" natip="NATIP" nat_enable="0" sshd_flags="0"