Merge pull request #9411 from gg1bbs/master
[betaflight.git] / Vagrantfile
blob5188db64ccb97062ecfe99696a1a8ce0327ba0a2
1 # -*- mode: ruby -*-
2 # vi: set ft=ruby :
4 # All Vagrant configuration is done below. The "2" in Vagrant.configure
5 # configures the configuration version (we support older styles for
6 # backwards compatibility). Please don't change it unless you know what
7 # you're doing.
8 Vagrant.configure(2) do |config|
9   # The most common configuration options are documented and commented below.
10   # For a complete reference, please see the online documentation at
11   # https://docs.vagrantup.com.
13   # Every Vagrant development environment requires a box. You can search for
14   # boxes at https://app.vagrantup.com/boxes/search
15   config.vm.box = "ubuntu/xenial64"
17   config.vm.provider "virtualbox" do |v|
18       v.memory = 4096
19       v.customize [ "guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-interval", 10000]
20       v.customize [ "guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-min-adjust", 100]
21       v.customize [ "guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-set-on-restore", 1]
22       v.customize [ "guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold", 10000]
23   end
25   # Enable provisioning with a shell script. Additional provisioners such as
26   # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
27   # documentation for more information about their specific syntax and use.
28   config.vm.provision "shell", inline: <<-SHELL
29     apt-get remove -y binutils-arm-none-eabi gcc-arm-none-eabi
30     add-apt-repository ppa:team-gcc-arm-embedded/ppa
31     apt-get update
32     apt-get install -y git gcc-arm-embedded=6-2017q2-1~xenial1
33     apt-get install -y make python gcc clang
34     apt-get install -y libblocksruntime-dev
35   SHELL
36 end
38 # Usage
39 # On windows start a command shell in the project root directory, where the "Vagrantfile" exists.
40 # "vagrant up"     to start the VM. First time it takes a while.....
41 # "vagrant ssh"    to log into your VM.
42 # "cd /vagrant"    Here are the windows project directory mounted with all your files.
43 # "make all"       Start working, building all targets for example.
44 # "exit"           when done
45 # vagrant halt     to stop your VM
46 # vagrant --help   for more....