github.com/dahs81/otto@v0.2.1-0.20160126165905-6400716cf085/images/scripts/freebsd/vmtools.sh (about) 1 #!/bin/sh -eux 2 3 freebsd_major="`uname -r | awk -F. '{print $1}'`"; 4 5 case "$PACKER_BUILDER_TYPE" in 6 7 virtualbox-iso|virtualbox-ovf) 8 # Disable X11 because vagrants are (usually) headless 9 echo 'WITHOUT_X11="YES"' >> /etc/make.conf; 10 11 pkg install -y virtualbox-ose-additions; 12 13 echo 'vboxdrv_load="YES"' >>/boot/loader.conf; 14 echo 'vboxnet_enable="YES"' >>/etc/rc.conf; 15 echo 'vboxguest_enable="YES"' >>/etc/rc.conf; 16 echo 'vboxservice_enable="YES"' >>/etc/rc.conf; 17 18 echo 'virtio_blk_load="YES"' >>/boot/loader.conf; 19 if [ "$freebsd_major" -gt 9 ]; then 20 # Appeared in FreeBSD 10 21 echo 'virtio_scsi_load="YES"' >>/boot/loader.conf; 22 fi 23 echo 'virtio_balloon_load="YES"' >>/boot/loader.conf; 24 echo 'if_vtnet_load="YES"' >>/boot/loader.conf; 25 26 echo 'ifconfig_vtnet0_name="em0"' >>/etc/rc.conf; 27 echo 'ifconfig_vtnet1_name="em1"' >>/etc/rc.conf; 28 echo 'ifconfig_vtnet2_name="em2"' >>/etc/rc.conf; 29 echo 'ifconfig_vtnet3_name="em3"' >>/etc/rc.conf; 30 31 pw groupadd vboxusers; 32 pw groupmod vboxusers -m vagrant; 33 ;; 34 35 vmware-iso|vmware-vmx) 36 # Install Perl and other software needed by vmware-install.pl 37 pkg install -y perl5; 38 pkg install -y compat6x-`uname -m`; 39 # the install script is very picky about location of perl command 40 ln -s /usr/local/bin/perl /usr/bin/perl; 41 42 mkdir -p /tmp/vmfusion; 43 mkdir -p /tmp/vmfusion-archive; 44 mdconfig -a -t vnode -f $HOME_DIR/freebsd.iso -u 0; 45 mount -t cd9660 /dev/md0 /tmp/vmfusion; 46 tar xzf /tmp/vmfusion/vmware-freebsd-tools.tar.gz -C /tmp/vmfusion-archive; 47 /tmp/vmfusion-archive/vmware-tools-distrib/vmware-install.pl --default; 48 echo 'ifconfig_vxn0="dhcp"' >>/etc/rc.conf; 49 umount /tmp/vmfusion; 50 rm -rf /tmp/vmfusion; 51 rm -rf /tmp/vmfusion-archive; 52 rm -f $HOME_DIR/*.iso; 53 54 rm -f /usr/bin/perl; 55 ;; 56 57 parallels-iso|parallels-pvm) 58 echo "No current support for Parallels tools, continuing" 59 ;; 60 61 *) 62 echo "Unknown Packer Builder Type >>$PACKER_BUILDER_TYPE<< selected."; 63 echo "Known are virtualbox-iso|virtualbox-ovf|vmware-iso|vmware-vmx|parallels-iso|parallels-pvm."; 64 ;; 65 66 esac