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