1573e7ccaSGlen Barber#!/bin/sh 2573e7ccaSGlen Barber# 3573e7ccaSGlen Barber# 4573e7ccaSGlen Barber 5573e7ccaSGlen Barber# Set to a list of packages to install. 6b4ff8f11SGlen Barberexport VM_EXTRA_PACKAGES="net/cloud-init devel/py-pbr devel/py-iso8601 \ 7b4ff8f11SGlen Barber net/py-eventlet net/py-netaddr comms/py-serial devel/py-six \ 8b4ff8f11SGlen Barber devel/py-babel net/py-oauth net/py-netifaces" 9573e7ccaSGlen Barber 10573e7ccaSGlen Barber# Set to a list of third-party software to enable in rc.conf(5). 1135d8a6aaSGlen Barberexport VM_RC_LIST="cloudinit" 121e7c1f17SGlen Barber 1382fe8340SGlen Barberexport NOSWAP=YES 1482fe8340SGlen Barber 151e7c1f17SGlen Barbervm_extra_pre_umount() { 1682fe8340SGlen Barber #Enable sshd by default 171e7c1f17SGlen Barber echo 'sshd_enable="YES"' >> ${DESTDIR}/etc/rc.conf 1882fe8340SGlen Barber 1982fe8340SGlen Barber # Disable DNS lookups by default to make SSH connect quickly 2082fe8340SGlen Barber echo 'UseDNS no' >> ${DESTDIR}/etc/ssh/sshd_config 2182fe8340SGlen Barber 2282fe8340SGlen Barber # Allow root to ssh using keys 2382fe8340SGlen Barber echo 'PermitRootLogin without-password' >> ${DESTDIR}/etc/ssh/sshd_config 2482fe8340SGlen Barber 2582fe8340SGlen Barber # Disable sendmail 2682fe8340SGlen Barber echo 'sendmail_enable="NO"' >> ${DESTDIR}/etc/rc.conf 2782fe8340SGlen Barber echo 'sendmail_submit_enable="NO"' >> ${DESTDIR}/etc/rc.conf 2882fe8340SGlen Barber echo 'sendmail_outbound_enable="NO"' >> ${DESTDIR}/etc/rc.conf 2982fe8340SGlen Barber echo 'sendmail_msp_queue_enable="NO"' >> ${DESTDIR}/etc/rc.conf 3082fe8340SGlen Barber 3182fe8340SGlen Barber # Enable DHCP for the OpenStack instance 321e7c1f17SGlen Barber echo 'ifconfig_DEFAULT="SYNCDHCP"' >> ${DESTDIR}/etc/rc.conf 331e7c1f17SGlen Barber 349af30cb2SGlen Barber # Openstack wants sudo(8) usable by default without a password. 359af30cb2SGlen Barber echo 'ALL ALL=(ALL) NOPASSWD:ALL' >> \ 369af30cb2SGlen Barber ${DESTDIR}/usr/local/etc/sudoers.d/cloud-init 379af30cb2SGlen Barber 3882fe8340SGlen Barber # The console is not interactive, so we might as well boot quickly. 3982fe8340SGlen Barber echo 'autoboot_delay="-1"' >> ${DESTDIR}/boot/loader.conf 4082fe8340SGlen Barber echo 'beastie_disable="YES"' >> ${DESTDIR}/boot/loader.conf 41*2e08f5b4SWarner Losh echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf 42*2e08f5b4SWarner Losh echo 'console="comconsole vidconsole"' >> ${DESTDIR}/boot/loader.conf 43*2e08f5b4SWarner Losh echo 'comconsole_speed="115200"' >> ${DESTDIR}/boot/loader.conf 4482fe8340SGlen Barber 4582fe8340SGlen Barber # Reboot quickly, Don't wait at the panic screen 4682fe8340SGlen Barber echo 'debug.trace_on_panic=1' >> ${DESTDIR}/etc/sysctl.conf 4782fe8340SGlen Barber echo 'debug.debugger_on_panic=0' >> ${DESTDIR}/etc/sysctl.conf 4882fe8340SGlen Barber echo 'kern.panic_reboot_wait_time=0' >> ${DESTDIR}/etc/sysctl.conf 4982fe8340SGlen Barber 5082fe8340SGlen Barber touch ${DESTDIR}/firstboot 511e7c1f17SGlen Barber return 0 521e7c1f17SGlen Barber} 53