]> git.donarmstrong.com Git - qmk_firmware.git/blob - docs/getting_started_vagrant.md
848a43a1f9cbcb47b67c2d800baa2b26a2d0224a
[qmk_firmware.git] / docs / getting_started_vagrant.md
1 # Vagrant Quick Start
2
3 This project includes a Vagrantfile that will allow you to build a new firmware for your keyboard very easily without major changes to your primary operating system. This also ensures that when you clone the project and perform a build, you have the exact same environment as anyone else using the Vagrantfile to build. This makes it much easier for people to help you troubleshoot any issues you encounter.
4
5 ## Requirements
6
7 Using the `/Vagrantfile` in this repository requires you have [Vagrant](http://www.vagrantup.com/) as well as [VirtualBox](https://www.virtualbox.org/) (or [VMware Workstation](https://www.vmware.com/products/workstation) and [Vagrant VMware plugin](http://www.vagrantup.com/vmware) but the (paid) VMware plugin requires a licensed copy of VMware Workstation/Fusion).
8
9 *COMPATIBILITY NOTICE* Certain versions of Virtualbox 5 appear to have an incompatibility with the Virtualbox extensions installed in the boxes in this Vagrantfile. If you encounter any issues with the /vagrant mount not succeeding, please upgrade your version of Virtualbox to at least 5.0.12. **Alternately, you can try running the following command:** `vagrant plugin install vagrant-vbguest`
10
11 Other than having Vagrant and Virtualbox installed and possibly a restart of your computer afterwards, you can simple run a 'vagrant up' anywhere inside the folder where you checked out this project and it will start a Linux virtual machine that contains all the tools required to build this project. There is a post Vagrant startup hint that will get you off on the right foot, otherwise you can also reference the build documentation below.
12
13 # Flashing the Firmware
14
15 The "easy" way to flash the firmware is using a tool from your host OS:
16
17 * [QMK Toolbox](https://github.com/qmk/qmk_toolbox) (recommended)
18 * [Teensy Loader](https://www.pjrc.com/teensy/loader.html)
19 * [Atmel FLIP](http://www.atmel.com/tools/flip.aspx)
20
21 If you want to program via the command line you can uncomment the ['modifyvm'] lines in the Vagrantfile to enable the USB passthrough into Linux and then program using the command line tools like dfu-util/dfu-programmer or you can install the Teensy CLI version.