NANO_KERNEL=MATEUSZ NANO_NAME=MateuszRouter NANO_ARCH=i386 TARGET_ARCH=i386; export TARGET_ARCH FlashDevice Generic 1G NANO_IMAGES="2" # Initialize the second slice =1, or not =0 NANO_INIT_IMG2="1" NANO_BOOT0CFG="-o packet,update,nosetdrv -s 1 -m 3" NANO_DRIVE=ad0 # Configure the world CONF_WORLD=' TARGET=i386 TARGET_ARCH=i386 TARGET_CPUTYPE=i486 # WITHOUT_ options can be inserted here WITHOUT_BIND=YES WITHOUT_GAMES=YES WITHOUT_INFO=YES ' # set the autoboot delay to a lower value than the default 10s echo 'autoboot_delay="4"' >> ${NANO_WORLDDIR}/boot/loader.conf # Install custom packages I want to embed on the nanobsd system install_packages () ( mkdir -p ${NANO_WORLDDIR}/packages cp /usr/src/tools/tools/nanobsd/packages/* ${NANO_WORLDDIR}/packages # for FreeBSD 10.0 cd ${NANO_WORLDDIR} pkg -c ${NANO_WORLDDIR} add packages/* || true # for FreeBSD 9.x #chroot ${NANO_WORLDDIR} sh -c 'cd packages; pkg_add -v *;cd ..;' # rm -rf ${NANO_WORLDDIR}/packages ) customize_cmd install_packages # add some defaults to rc.conf cust_rcconf () ( cd ${NANO_WORLDDIR}/etc echo '# Set the hostname of this machine here' >> rc.conf echo 'hostname="mateuszrt"' >> rc.conf echo '' >> rc.conf echo '# Enable/disable the routing stack' >> rc.conf echo 'gateway_enable="NO"' >> rc.conf echo '' >> rc.conf echo '# Networking' >> rc.conf echo 'defaultrouter="1.2.3.4"' >> rc.conf echo 'ifconfig_vr0="192.168.0.1 MTU 1500 UP"' >> rc.conf echo '#cloned_interfaces="bridge0"' >> rc.conf echo '#ifconfig_bridge0="addm gif0 addm vtnet0 up"' >> rc.conf echo '#ipv4_addrs_bridge0="192.168.96.2/24 192.168.94.2/24"' >> rc.conf echo '' >> rc.conf echo '# SSH daemon' >> rc.conf echo 'sshd_enable="YES"' >> rc.conf echo '' >> rc.conf echo '# Sendmail processes' >> rc.conf echo 'sendmail_enable="NO"' >> rc.conf echo 'sendmail_submit_enable="NO"' >> rc.conf echo 'sendmail_outbound_enable="NO"' >> rc.conf echo 'sendmail_msp_queue_enable="NO"' >> rc.conf echo '' >> rc.conf echo '# PacketFilter' >> rc.conf echo 'pf_enable="NO"' >> rc.conf echo 'pf_rules="/etc/pf.conf"' >> rc.conf echo '' >> rc.conf echo '# IPSec and IKE processes' >> rc.conf echo 'racoon_enable="NO"' >> rc.conf echo 'ipsec_enable="NO"' >> rc.conf echo 'ipsec_program="/usr/local/sbin/setkey"' >> rc.conf echo 'ipsec_file="/usr/local/etc/racoon/setkey.conf"' >> rc.conf echo 'bird_enable="NO"' >> rc.conf echo '' >> rc.conf echo '# DHCP server' >> rc.conf echo 'dhcpd_enable="NO"' >> rc.conf echo 'dhcpd_ifaces="vr0"' >> rc.conf echo '' >> rc.conf echo 'syslogd_enable="YES"' >> rc.conf echo 'syslogd_flags="-s -s"' >> rc.conf ) customize_cmd cust_rcconf # disable the VGA console, and use the RS-232 instead (no VGA on my Alix box) customize_cmd cust_comconsole # Allow root to log in via ssh customize_cmd cust_allow_ssh_root