This is a issue tracker for OS X Vagrant boxes, which can be found in Download section
Box was tested only on VirtualBox with Mac OS as a host. Mainly, I made it to build our iOS applications via CI-server.
You can find following images on VagrantCloud:
- Mac OS X Yosemite 10.10 (XCode 6.4) (13Gb) (sha1: 6339bf812017b9f0046d9fdda79cc6f3d2ab169a)
- macOS Sierra (XCode 8.2) (14.1Gb)
Notice it can take a while to download the image as they are large and can be throtled by VagrantCloud hosting.
- Install Vagrant and VirtualBox;
cd
into your project directory;- Run
vagrant init AndrewDryga/vagrant-box-osx
; - Your Vagrantfile should be ready as soon as Vagrant downloads box;
- Start VM by calling
vagrant up
.
Apple's EULA states that you can install your copy on your actual Apple-hardware, plus up to two VMs running on your Apple-hardware. So using this box on another hardware is may be illegal and you should do it on your own risk.
By using it you agree with all macOS Sierra and XCode license agreements.
Sierra box:
- Default Vagrantfile (inside box) that fixes most of common issues;
- Homebrew;
- Homebrew Cask;
- NodeJS 7.2.1 (npm 3.10.10, n 2.1.3);
- Lunchy;
- Puppet 4.8.1;
- XCode 8.2 (and XCode Command Line Tools).
Yosemite box:
- Default Vagrantfile (inside box) that fixes most of common issues;
- Homebrew;
- Homebrew Cask;
- Puppet 3.7.4;
- XCode 6.4;
- XCode Command Line Tools;
- NodeJS 0.12.7 (for npm);
- Appium 1.4.10;
- iOS Simulator (all devices for iOS 8.4).
- Nomad CLI - provides a set of tools that allow to manage certificates, profiles and many other things;
- ObjC.io Issue 6 - how-to article about building apps in cli-only (this one about Travis-Ci);
security
- use it to manage your keychains;- xctool - Facebook project for building iOS apps.
- Box may crash on AMD-based hosts due to VirtualBox issues.
- Do not turn 3D acceleration on in VirtualBox, or it will start retuning aborted condition and would not start in headless mode;
- VirtualBox doesn't have Guest additions for Mac OS X, so you can't have shared folders. Instead you can use normal network shared folders (docs):
# Use NFS for the shared folder
config.vm.synced_folder ".", "/vagrant",
id: "core",
:nfs => true,
:mount_options => ['nolock,vers=3,udp,noatime']
- If your VM freezes with
hfs mounted macintosh hd on device root_device
then you need to set cpuidset inside your Vagrantfile:vb.customize ["modifyvm", :id, "--cpuidset", "1","000206a7","02100800","1fbae3bf","bfebfbff"]
(it's included since version 0.2); - If your mouse does not work on a MacBook Pro host machine, shut down the VM and open the VirtualBox Manager. Edit the VM's settings. Choose the System tab. Under the Motherboard sub-tab, set the Chipset option to be PIIX 3, and set the Pointing Device option to be USB Tablet. Restart the VM;
- When OSX is trying to prompt graphically for password (i.e when using swift REPL), it will raise the error
error:process exited with status -1) (lost connection)
because there is no graphical output when using vagrant via ssh login, enable the develop mode can solve this situation, run the following command:sudo /usr/sbin/DevToolsSecurity --enable
; - If you need user password (for example for Homebrew Cask). Vagrant have default consideration to create user
vagrant
with passwordvagrant
, you can use it.
VirtualBox support for Mac OS X is experimental. More information can be found in official docs.
Main think you should remember is that you need latest VirtualBox version BEFORE you start installation. Process of installation is pretty straight forward (as on usual Mac), but you need to erase virtual drive during installation via Disk Utilities. After that just follow Vagrant guide to create base box and another one to package it.
Sometimes you need to rebuild VirtualBox kernel extensions before installing OS on VM.
- Script to create Mac OS installer image
- Templates to create Host
- And guide to use it
- Another guide by Lifehacker
- Legal question
- How to disable default mounting of shared folder
- Also you might be interested to take look at radeksimko/vagrant-osx that can build boxes for VMWare Vagrant provider.