aboutsummaryrefslogtreecommitdiff
path: root/docs/newbs_getting_started.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/newbs_getting_started.md')
-rw-r--r--docs/newbs_getting_started.md63
1 files changed, 36 insertions, 27 deletions
diff --git a/docs/newbs_getting_started.md b/docs/newbs_getting_started.md
index 1c7206cf5..7ea4c62e2 100644
--- a/docs/newbs_getting_started.md
+++ b/docs/newbs_getting_started.md
@@ -1,15 +1,14 @@
1# Getting Started 1# Getting Started
2 2
3Your computer keyboard has a processor inside of it, not unlike the one inside your computer. This processor runs software that is responsible for detecting button presses and sending reports about the state of the keyboard when buttons are pressed or released. QMK fills the role of that software, detecting button presses and passing that information on to the host computer. When you build your custom keymap, you are creating the equivalent of an executable program for your keyboard. 3Your computer keyboard has a processor inside of it, similar to the one inside your computer. This processor runs software that is responsible for detecting button presses and informing the computer when keys are pressed. QMK fills the role of that software, detecting button presses and passing that information on to the host computer. When you build your custom keymap, you are creating an executable program for your keyboard.
4 4
5QMK tries to put a lot of power into your hands by making easy things easy, and hard things possible. You don't have to know how to program to create powerful keymaps — you only have to follow a few simple syntax rules. 5QMK tries to put a lot of power into your hands by making easy things easy, and hard things possible. You don't have to know how to program to create powerful keymaps — you only have to follow a few simple syntax rules.
6 6
7# Prerequisites 7# Prerequisites
8 8
9Before you can build keymaps, you need to install some software and set up your build environment. This only has to be done once no matter how many keyboards you plan to compile firmware for. 9Before you can build keymaps, you need to install some software and set up your build environment. This only has to be done once no matter how many keyboards you plan to compile firmware for.
10
11If you would prefer a more graphical user interface approach, please consider using the online [QMK Configurator](https://config.qmk.fm). Please refer to [Building Your First Firmware using the online GUI](newbs_building_firmware_configurator.md).
12 10
11If you would prefer a more graphical user interface approach, please consider using the online [QMK Configurator](newbs_building_firmware_configurator.md).
13 12
14## Download Software 13## Download Software
15 14
@@ -40,52 +39,50 @@ We've tried to make QMK as easy to set up as possible. You only have to prepare
40 39
41### Windows 40### Windows
42 41
43You will need to install MSYS2 and Git. 42You will need to install MSYS2, Git, and the QMK CLI.
44 43
45* Follow the installation instructions on the [MSYS2 homepage](http://www.msys2.org). 44* Follow the installation instructions on the [MSYS2 homepage](http://www.msys2.org).
46* Close any open MSYS2 terminals and open a new MSYS2 MinGW 64-bit terminal. 45* Close any open MSYS2 terminals and open a new MSYS2 MinGW 64-bit terminal.
47* Install Git by running this command: `pacman -S git`.
48 46
49### macOS 47After opening a new MSYS2 MinGW 64-bit terminal run these commands:
50 48
51You will need to install Homebrew. Follow the instructions on the [Homebrew homepage](https://brew.sh). 49 pacman -S git python3-pip
50 python3 -m pip install qmk
51 qmk setup
52 52
53After Homebrew is installed, continue with _Set Up QMK_. In that step you will run a script that will install other packages. 53### macOS
54 54
55### Linux 55You will need to install Homebrew. Follow the instructions on the [Homebrew homepage](https://brew.sh).
56 56
57You will need to install Git. It's very likely that you already have it, but if not, one of the following commands should install it: 57After Homebrew is installed run these commands:
58 58
59* Debian / Ubuntu / Devuan: `apt-get install git` 59 brew tap qmk/qmk
60* Fedora / Red Hat / CentOS: `yum install git` 60 brew install qmk
61* Arch: `pacman -S git` 61 qmk setup
62 62
63?> Docker is also an option on all platforms. [Click here for details.](getting_started_build_tools.md#docker) 63### Linux
64 64
65## Set Up QMK 65You will need to install Git and Python. It's very likely that you already have both, but if not, one of the following commands should install them:
66 66
67Once you have set up your Linux/Unix environment, you are ready to download QMK. We will do this by using Git to "clone" the QMK repository. Open a Terminal or MSYS2 MinGW window and leave it open for the remainder of this guide. Inside that window run these two commands: 67* Debian / Ubuntu / Devuan: `apt-get install git python3 && python3 -m pip install qmk`
68* Fedora / Red Hat / CentOS: `yum install git python3 && python3 -m pip install qmk`
69* Arch: `pacman -S qmk`
68 70
69```shell 71After installing QMK you can set it up with this command:
70git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git
71cd qmk_firmware
72```
73 72
74?> If you already know [how to use GitHub](getting_started_github.md), we recommend that you create and clone your own fork instead. If you don't know what that means, you can safely ignore this message. 73 qmk setup
75 74
76QMK comes with a script to help you set up the rest of what you'll need. You should run it now by typing in this command: 75?> If you already know [how to use GitHub](getting_started_github.md), we recommend that you create your own fork and use `qmk setup <github_username>` to clone your personal fork. If you don't know what that means you can safely ignore this message.
77
78 util/qmk_install.sh
79 76
80## Test Your Build Environment 77## Test Your Build Environment
81 78
82Now that your QMK build environment is set up, you can build a firmware for your keyboard. Start by trying to build the keyboard's default keymap. You should be able to do that with a command in this format: 79Now that your QMK build environment is set up, you can build a firmware for your keyboard. Start by trying to build the keyboard's default keymap. You should be able to do that with a command in this format:
83 80
84 make <keyboard>:default 81 qmk compile -kb <keyboard> -km default
85 82
86For example, to build a firmware for a Clueboard 66% you would use: 83For example, to build a firmware for a Clueboard 66% you would use:
87 84
88 make clueboard/66/rev3:default 85 qmk compile -kb clueboard/66/rev3 -km default
89 86
90When it is done you should have a lot of output that ends similar to this: 87When it is done you should have a lot of output that ends similar to this:
91 88
@@ -97,6 +94,18 @@ Checking file size of clueboard_66_rev3_default.hex
97 * The firmware size is fine - 26356/28672 (2316 bytes free) 94 * The firmware size is fine - 26356/28672 (2316 bytes free)
98``` 95```
99 96
97## Configure Your Build Environment
98
99You can configure your build environment to set the defaults and make working with QMK less tedious. Let's do that now!
100
101Most people new to QMK only have 1 keyboard. You can set this keyboard as your default with the `qmk config` command. For example, to set your default keyboard to `clueboard/66/rev4`:
102
103 qmk config user.keyboard=clueboard/66/rev4
104
105You can also set your default keymap name. Most people use their github username here, and we recommend that you do too.
106
107 qmk config user.keymap=<github_username>
108
100# Creating Your Keymap 109# Creating Your Keymap
101 110
102You are now ready to create your own personal keymap! Move on to [Building Your First Firmware](newbs_building_firmware.md) for that. 111You are now ready to create your own personal keymap! Move on to [Building Your First Firmware](newbs_building_firmware.md) for that.