]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - Vagrantfile
makes vagrant usable again
[qmk_firmware.git] / Vagrantfile
diff --git a/Vagrantfile b/Vagrantfile
new file mode 100644 (file)
index 0000000..1abe8ff
--- /dev/null
@@ -0,0 +1,88 @@
+# -*- mode: ruby -*-\r
+# vi: set ft=ruby :\r
+\r
+Vagrant.configure(2) do |config|\r
+  # You can only have one config.vm.box uncommented at a time\r
+\r
+  # Comment this and uncomment another if you don't want to use the minimal Arch box\r
+  config.vm.box = "dragon788/arch-ala-elasticdog"\r
+\r
+  # VMware/Virtualbox 64 bit\r
+  # config.vm.box = "phusion/ubuntu-14.04-amd64"\r
+  #\r
+  # VMware/Virtualbox 64 bit\r
+  #config.vm.box = "puphpet/centos65-x64"\r
+  #\r
+  # The opensuse boxes don't have dfu-util in their default repositories\r
+  #\r
+  # The virtualbox version has tools issues\r
+  # VMware/Virtualbox 64 bit\r
+  #config.vm.box = "bento/opensuse-13.2-x86_64"\r
+  #\r
+  # Virtualbox only\r
+  #config.vm.box = "bento/opensuse-13.2-i386"\r
+  # config.vm.box = ""\r
+  # config.vm.box = ""\r
+\r
+  # This section allows you to customize the Virtualbox VM\r
+  # settings, ie showing the GUI or upping the memory\r
+  # or cores if desired\r
+  config.vm.provider "virtualbox" do |vb|\r
+    # Hide the VirtualBox GUI when booting the machine\r
+    vb.gui = false\r
+    # Uncomment the below lines if you want to program\r
+    # your Teensy via the VM rather than your host OS\r
+    #vb.customize ['modifyvm', :id, '--usb', 'on']\r
+    #vb.customize ['usbfilter', 'add', '0',\r
+    #            '--target', :id,\r
+    #            '--name', 'teensy',\r
+    #            '--vendorid', '0x16c0',\r
+    #            '--productid','0x0478'\r
+    #           ] \r
+    # Customize the amount of memory on the VM:\r
+    vb.memory = "512"\r
+  end\r
+\r
+  # This section allows you to customize the VMware VM\r
+  # settings, ie showing the GUI or upping the memory\r
+  # or cores if desired\r
+  config.vm.provider "vmware_workstation" do |vmw|\r
+    # Hide the VMware GUI when booting the machine\r
+    vmw.gui = false \r
\r
+    # Customize the amount of memory on the VM:\r
+    vmw.memory = "512"\r
+  end\r
+\r
+  config.vm.provider "vmware_fusion" do |vmf|\r
+    # Hide the vmfare GUI when booting the machine\r
+    vmf.gui = false\r
\r
+    # Customize the amount of memory on the VM:\r
+    vmf.memory = "512"\r
+  end\r
+  \r
+  # This script ensures the required packages for AVR programming are installed\r
+  # It also ensures the system always gets the latest updates when powered on\r
+  # If this causes issues you can run a 'vagrant destroy' and then\r
+  # add a # before ,args: and run 'vagrant up' to get a working\r
+  # non-updated box and then attempt to troubleshoot or open a Github issue \r
+  \r
+  config.vm.provision "shell", run: "always", path: "avr_setup.sh", args: "-update"\r
+\r
+  config.vm.post_up_message = """\r
+  Log into the VM using 'vagrant ssh' on OSX or from Git Bash (Win)\r
+  or 'vagrant ssh-config' and Putty or Bitvise SSH or another SSH tool\r
+\r
+  Change directory (cd) to the keyboard you wish to program \r
+  (Optionally) modify your layout, \r
+  then run 'make clean' \r
+  and then 'make' to compile the .eep and .hex files.\r
+\r
+  Or you can copy and paste the example line below. \r
\r
+  cd /vagrant; cd keyboard; cd ergodox_ez; make clean; make\r
+  \r
+\r
+  """\r
+end\r