qmk_firmware/static/Getting_Started/Install_Build_Tools/Vagrant.html
2018-05-07 21:02:24 -07:00

133 lines
15 KiB
HTML

<!DOCTYPE html>
<html class="no-js" lang="en">
<head>
<title>Vagrant - QMK Firmware</title>
<meta name="description" content="Keyboard controller firmware for Atmel AVR and ARM USB families">
<meta name="author" content="QMK Community">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="icon" href="../../themes/daux/img/favicon-navy.png" type="image/x-icon">
<!-- Mobile -->
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Font -->
<!-- CSS -->
<link href='../../themes/daux/css/theme-navy.min.css' rel='stylesheet' type='text/css'>
<!-- Tipue Search -->
<link href="../../tipuesearch/tipuesearch.css" rel="stylesheet">
<!--[if lt IE 9]>
<script src="../../themes/daux/js/html5shiv-3.7.3.min.js"></script>
<![endif]-->
</head>
<body class=" ">
<div class="Columns content">
<aside class="Columns__left Collapsible">
<button type="button" class="Button Collapsible__trigger">
<span class="Collapsible__trigger__bar"></span>
<span class="Collapsible__trigger__bar"></span>
<span class="Collapsible__trigger__bar"></span>
</button>
<a class="Brand" href="../../index.html">QMK Firmware</a>
<div class="Search">
<svg class="Search__icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 451 451">
<path d="M447.05 428l-109.6-109.6c29.4-33.8 47.2-77.9 47.2-126.1C384.65 86.2 298.35 0 192.35 0 86.25 0 .05 86.3.05 192.3s86.3 192.3 192.3 192.3c48.2 0 92.3-17.8 126.1-47.2L428.05 447c2.6 2.6 6.1 4 9.5 4s6.9-1.3 9.5-4c5.2-5.2 5.2-13.8 0-19zM26.95 192.3c0-91.2 74.2-165.3 165.3-165.3 91.2 0 165.3 74.2 165.3 165.3s-74.1 165.4-165.3 165.4c-91.1 0-165.3-74.2-165.3-165.4z"/>
</svg>
<input type="search" id="tipue_search_input" class="Search__field" placeholder="Search..." autocomplete="on"
results=25 autosave=text_search>
</div>
<div class="Collapsible__content">
<!-- Navigation -->
<ul class='Nav'><li class='Nav__item Nav__item--open has-children'><a href="../../Getting_Started/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Getting Started</a><ul class='Nav'><li class='Nav__item Nav__item--open has-children'><a href="../../Getting_Started/Install_Build_Tools/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Install Build Tools</a><ul class='Nav'><li class='Nav__item Nav__item--active'><a href="../../Getting_Started/Install_Build_Tools/Vagrant.html">Vagrant</a></li></ul></li><li class='Nav__item '><a href="../../Getting_Started/Build_Compile_Instructions.html">Build Compile Instructions</a></li><li class='Nav__item '><a href="../../Getting_Started/Flashing_Firmware.html">Flashing Firmware</a></li><li class='Nav__item '><a href="../../Getting_Started/Contributing.html">Contributing</a></li><li class='Nav__item '><a href="../../Getting_Started/How_to_Use_GitHub.html">How to Use GitHub</a></li><li class='Nav__item '><a href="../../Getting_Started/Getting_Help.html">Getting Help</a></li></ul></li><li class='Nav__item has-children'><a href="../../Complete_Newbs_Guide/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Complete Newbs Guide</a><ul class='Nav'><li class='Nav__item '><a href="../../Complete_Newbs_Guide/Complete_Newbie's_Guide.html">Complete Newbie's Guide</a></li><li class='Nav__item '><a href="../../Complete_Newbs_Guide/Building_Your_First_Firmware.html">Building Your First Firmware</a></li><li class='Nav__item '><a href="../../Complete_Newbs_Guide/Flashing_Firmware.html">Flashing Firmware</a></li><li class='Nav__item '><a href="../../Complete_Newbs_Guide/Testing_and_Debugging.html">Testing and Debugging</a></li></ul></li><li class='Nav__item has-children'><a href="../../FAQ/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>FAQ</a><ul class='Nav'><li class='Nav__item '><a href="../../FAQ/General_FAQ.html">General FAQ</a></li><li class='Nav__item '><a href="../../FAQ/Build_Compile_QMK.html">Build Compile QMK</a></li><li class='Nav__item '><a href="../../FAQ/Debugging_and_Troubleshooting.html">Debugging and Troubleshooting</a></li><li class='Nav__item '><a href="../../FAQ/Keymaps.html">Keymaps</a></li></ul></li><li class='Nav__item has-children'><a href="../../Hardware/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Hardware</a><ul class='Nav'><li class='Nav__item '><a href="../../Hardware/AVR_Processors.html">AVR Processors</a></li><li class='Nav__item '><a href="../../Hardware/Drivers.html">Drivers</a></li></ul></li><li class='Nav__item has-children'><a href="../../Features/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Features</a><ul class='Nav'><li class='Nav__item '><a href="../../Features/Advanced_Keycodes.html">Advanced Keycodes</a></li><li class='Nav__item '><a href="../../Features/Audio.html">Audio</a></li><li class='Nav__item '><a href="../../Features/Auto_Shift.html">Auto Shift</a></li><li class='Nav__item '><a href="../../Features/Backlight.html">Backlight</a></li><li class='Nav__item '><a href="../../Features/Bluetooth.html">Bluetooth</a></li><li class='Nav__item '><a href="../../Features/Bootmagic.html">Bootmagic</a></li><li class='Nav__item '><a href="../../Features/Command.html">Command</a></li><li class='Nav__item '><a href="../../Features/Dynamic_Macros.html">Dynamic Macros</a></li><li class='Nav__item '><a href="../../Features/Grave_Escape.html">Grave Escape</a></li><li class='Nav__item '><a href="../../Features/Key_Lock.html">Key Lock</a></li><li class='Nav__item '><a href="../../Features/Layouts.html">Layouts</a></li><li class='Nav__item '><a href="../../Features/Leader_Key.html">Leader Key</a></li><li class='Nav__item '><a href="../../Features/Macros.html">Macros</a></li><li class='Nav__item '><a href="../../Features/Mouse_Keys.html">Mouse Keys</a></li><li class='Nav__item '><a href="../../Features/Pointing_Device.html">Pointing Device</a></li><li class='Nav__item '><a href="../../Features/PS_2_Mouse.html">PS 2 Mouse</a></li><li class='Nav__item '><a href="../../Features/RGB_Lighting.html">RGB Lighting</a></li><li class='Nav__item '><a href="../../Features/Space_Cadet_Shift.html">Space Cadet Shift</a></li><li class='Nav__item '><a href="../../Features/Space_Cadet_Shift_Enter.html">Space Cadet Shift Enter</a></li><li class='Nav__item '><a href="../../Features/Stenography.html">Stenography</a></li><li class='Nav__item '><a href="../../Features/Swap_Hands.html">Swap Hands</a></li><li class='Nav__item '><a href="../../Features/Tap_Dance.html">Tap Dance</a></li><li class='Nav__item '><a href="../../Features/Terminal.html">Terminal</a></li><li class='Nav__item '><a href="../../Features/Thermal_Printer.html">Thermal Printer</a></li><li class='Nav__item '><a href="../../Features/Unicode.html">Unicode</a></li><li class='Nav__item '><a href="../../Features/Userspace.html">Userspace</a></li></ul></li><li class='Nav__item has-children'><a href="../../Keycodes/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Keycodes</a><ul class='Nav'><li class='Nav__item '><a href="../../Keycodes/Advanced_Keycodes.html">Advanced Keycodes</a></li><li class='Nav__item '><a href="../../Keycodes/Backlight.html">Backlight</a></li><li class='Nav__item '><a href="../../Keycodes/Basic.html">Basic</a></li><li class='Nav__item '><a href="../../Keycodes/Bluetooth.html">Bluetooth</a></li><li class='Nav__item '><a href="../../Keycodes/Bootmagic.html">Bootmagic</a></li><li class='Nav__item '><a href="../../Keycodes/Quantum_Keycodes.html">Quantum Keycodes</a></li><li class='Nav__item '><a href="../../Keycodes/RGB_Lighting.html">RGB Lighting</a></li><li class='Nav__item '><a href="../../Keycodes/Stenography.html">Stenography</a></li><li class='Nav__item '><a href="../../Keycodes/Thermal_Printer.html">Thermal Printer</a></li><li class='Nav__item '><a href="../../Keycodes/US_ANSI_Shifted_keys.html">US ANSI Shifted keys</a></li></ul></li><li class='Nav__item has-children'><a href="../../Reference/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>Reference</a><ul class='Nav'><li class='Nav__item '><a href="../../Reference/Keyboard_Guidelines.html">Keyboard Guidelines</a></li><li class='Nav__item '><a href="../../Reference/Compatable_Microcontrollers.html">Compatable Microcontrollers</a></li><li class='Nav__item '><a href="../../Reference/Config_Options.html">Config Options</a></li><li class='Nav__item '><a href="../../Reference/Custom_Code.html">Custom Code</a></li><li class='Nav__item '><a href="../../Reference/Documentation_Best_Practices.html">Documentation Best Practices</a></li><li class='Nav__item '><a href="../../Reference/Documentation_Templates.html">Documentation Templates</a></li><li class='Nav__item '><a href="../../Reference/Glossary.html">Glossary</a></li><li class='Nav__item '><a href="../../Reference/Keymap_Overview.html">Keymap Overview</a></li><li class='Nav__item '><a href="../../Reference/Unit_Testing.html">Unit Testing</a></li></ul></li><li class='Nav__item has-children'><a href="../../For_Makers_And_Modders/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>For Makers And Modders</a><ul class='Nav'><li class='Nav__item '><a href="../../For_Makers_And_Modders/Hand_Wiring_Guide.html">Hand Wiring Guide</a></li><li class='Nav__item '><a href="../../For_Makers_And_Modders/ISP_Flashing_Guide.html">ISP Flashing Guide</a></li></ul></li><li class='Nav__item has-children'><a href="../../IDEs/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>IDEs</a><ul class='Nav'><li class='Nav__item '><a href="../../IDEs/Eclipse.html">Eclipse</a></li></ul></li><li class='Nav__item has-children'><a href="../../For_a_Deeper_Understanding/index.html" class="folder"><i class="Nav__arrow">&nbsp;</i>For a Deeper Understanding</a><ul class='Nav'><li class='Nav__item '><a href="../../For_a_Deeper_Understanding/How_Keyboards_Work.html">How Keyboards Work</a></li><li class='Nav__item '><a href="../../For_a_Deeper_Understanding/Understanding_QMK.html">Understanding QMK</a></li></ul></li></ul>
<div class="Links">
</div>
</div>
</aside>
<div class="Columns__right Columns__right--full">
<div class="Columns__right__content">
<div class="doc_content">
<article class="Page">
<div class="Page__header">
<h1><a href="../../Getting_Started/index.html">Getting Started</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../Getting_Started/Install_Build_Tools/index.html">Install Build Tools</a> <svg class="Page__header--separator" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 477.175 477.175"><path d="M360.73 229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1 0s-5.3 13.8 0 19.1l215.5 215.5-215.5 215.5c-5.3 5.3-5.3 13.8 0 19.1 2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-4l225.1-225.1c5.3-5.2 5.3-13.8.1-19z"/></svg> <a href="../../Getting_Started/Install_Build_Tools/Vagrant.html">Vagrant</a></h1>
<span class="EditOn">
<a href="https://github.com/qmk/qmk_firmware/blob/master/docs/01_Getting_Started/01_Install_Build_Tools/Vagrant.md" target="_blank">
Edit on GitHub </a>
</span>
</div>
<div class="s-content">
<ul class="TableOfContents">
<li>
<p><a href="#page_Vagrant-Quick-Start">Vagrant Quick Start</a></p>
<ul class="TableOfContents">
<li>
<p><a href="#page_Requirements">Requirements</a></p>
</li>
</ul>
</li>
<li>
<p><a href="#page_Flashing-the-Firmware">Flashing the Firmware</a></p>
</li>
</ul>
<h1 id="page_Vagrant-Quick-Start">Vagrant Quick Start</h1>
<p>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.</p>
<h2 id="page_Requirements">Requirements</h2>
<p>Using the <code>/Vagrantfile</code> in this repository requires you have <a href="http://www.vagrantup.com/" class="Link--external">Vagrant</a> as well as <a href="https://www.virtualbox.org/" class="Link--external">VirtualBox</a> (or <a href="https://www.vmware.com/products/workstation" class="Link--external">VMware Workstation</a> and <a href="http://www.vagrantup.com/vmware" class="Link--external">Vagrant VMware plugin</a> but the (paid) VMware plugin requires a licensed copy of VMware Workstation/Fusion).</p>
<p><em>COMPATIBILITY NOTICE</em> 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. <strong>Alternately, you can try running the following command:</strong> <code>vagrant plugin install vagrant-vbguest</code></p>
<p>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.</p>
<h1 id="page_Flashing-the-Firmware">Flashing the Firmware</h1>
<p>The &quot;easy&quot; way to flash the firmware is using a tool from your host OS:</p>
<ul>
<li>
<a href="https://github.com/qmk/qmk_toolbox" class="Link--external">QMK Toolbox</a> (recommended)</li>
<li>
<a href="https://www.pjrc.com/teensy/loader.html" class="Link--external">Teensy Loader</a>
</li>
<li>
<a href="http://www.atmel.com/tools/flip.aspx" class="Link--external">Atmel FLIP</a>
</li>
</ul>
<p>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.</p>
</div>
<nav>
<ul class="Pager">
<li class=Pager--prev><a href="../../Getting_Started/Install_Build_Tools/index.html">Previous</a></li> <li class=Pager--next><a href="../../Getting_Started/Build_Compile_Instructions.html">Next</a></li> </ul>
</nav>
</article>
</div>
</div>
</div>
</div>
<!-- JS -->
<script src="../../themes/daux/js/jquery-1.11.3.min.js"></script><script src="../../themes/daux/js/highlight.pack.js"></script><script src="../../themes/daux/js/daux.js"></script>
<!-- Tipue Search -->
<script type="text/javascript" src="../../tipuesearch/tipuesearch.js"></script>
<script>
window.onunload = function(){}; // force $(document).ready to be called on back/forward navigation in firefox
$(function() {
tipuesearch({
'base_url': '../../'
});
});
</script>
</body>
</html>