2e08f5b4ce
Make stock FreeBSD more useful for people wishing to use them. The QEMU folks suggested this change. It adds a serial console which allows them to interact with FreeBSD from the earliest moments. This allows them to configure FreeBSD via the serial port to set it up for CI use. Reviewed by: kevans@ Sponsored by: Netflix, Inc Differential Revision: https://reviews.freebsd.org/D22786
56 lines
1.9 KiB
Bash
56 lines
1.9 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# Set to a list of packages to install.
|
|
export VM_EXTRA_PACKAGES="net/cloud-init devel/py-pbr devel/py-iso8601 \
|
|
net/py-eventlet net/py-netaddr comms/py-serial devel/py-six \
|
|
devel/py-babel net/py-oauth net/py-netifaces"
|
|
|
|
# Set to a list of third-party software to enable in rc.conf(5).
|
|
export VM_RC_LIST="cloudinit"
|
|
|
|
export NOSWAP=YES
|
|
|
|
vm_extra_pre_umount() {
|
|
#Enable sshd by default
|
|
echo 'sshd_enable="YES"' >> ${DESTDIR}/etc/rc.conf
|
|
|
|
# Disable DNS lookups by default to make SSH connect quickly
|
|
echo 'UseDNS no' >> ${DESTDIR}/etc/ssh/sshd_config
|
|
|
|
# Allow root to ssh using keys
|
|
echo 'PermitRootLogin without-password' >> ${DESTDIR}/etc/ssh/sshd_config
|
|
|
|
# Disable sendmail
|
|
echo 'sendmail_enable="NO"' >> ${DESTDIR}/etc/rc.conf
|
|
echo 'sendmail_submit_enable="NO"' >> ${DESTDIR}/etc/rc.conf
|
|
echo 'sendmail_outbound_enable="NO"' >> ${DESTDIR}/etc/rc.conf
|
|
echo 'sendmail_msp_queue_enable="NO"' >> ${DESTDIR}/etc/rc.conf
|
|
|
|
# Enable DHCP for the OpenStack instance
|
|
echo 'ifconfig_DEFAULT="SYNCDHCP"' >> ${DESTDIR}/etc/rc.conf
|
|
|
|
# Openstack wants sudo(8) usable by default without a password.
|
|
echo 'ALL ALL=(ALL) NOPASSWD:ALL' >> \
|
|
${DESTDIR}/usr/local/etc/sudoers.d/cloud-init
|
|
|
|
rm -f ${DESTDIR}/etc/resolv.conf
|
|
|
|
# The console is not interactive, so we might as well boot quickly.
|
|
echo 'autoboot_delay="-1"' >> ${DESTDIR}/boot/loader.conf
|
|
echo 'beastie_disable="YES"' >> ${DESTDIR}/boot/loader.conf
|
|
echo 'boot_multicons="YES"' >> ${DESTDIR}/boot/loader.conf
|
|
echo 'console="comconsole vidconsole"' >> ${DESTDIR}/boot/loader.conf
|
|
echo 'comconsole_speed="115200"' >> ${DESTDIR}/boot/loader.conf
|
|
|
|
# Reboot quickly, Don't wait at the panic screen
|
|
echo 'debug.trace_on_panic=1' >> ${DESTDIR}/etc/sysctl.conf
|
|
echo 'debug.debugger_on_panic=0' >> ${DESTDIR}/etc/sysctl.conf
|
|
echo 'kern.panic_reboot_wait_time=0' >> ${DESTDIR}/etc/sysctl.conf
|
|
|
|
touch ${DESTDIR}/firstboot
|
|
return 0
|
|
}
|