Adding Docker build system & documentation
This commit is contained in:
		
							parent
							
								
									9ecf9073b9
								
							
						
					
					
						commit
						0446263935
					
				
					 2 changed files with 47 additions and 0 deletions
				
			
		
							
								
								
									
										28
									
								
								Dockerfile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								Dockerfile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					FROM debian:jessie
 | 
				
			||||||
 | 
					MAINTAINER Erik Dasque <erik@frenchguys.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN apt-get update
 | 
				
			||||||
 | 
					RUN apt-get install --no-install-recommends -y build-essential \
 | 
				
			||||||
 | 
					    gcc \
 | 
				
			||||||
 | 
					    unzip \
 | 
				
			||||||
 | 
					    wget \
 | 
				
			||||||
 | 
					    zip \
 | 
				
			||||||
 | 
					    gcc-avr \
 | 
				
			||||||
 | 
					    binutils-avr \
 | 
				
			||||||
 | 
					    avr-libc \
 | 
				
			||||||
 | 
					    dfu-programmer \
 | 
				
			||||||
 | 
					    dfu-util \
 | 
				
			||||||
 | 
					    gcc-arm-none-eabi \
 | 
				
			||||||
 | 
					    binutils-arm-none-eabi \
 | 
				
			||||||
 | 
					    libnewlib-arm-none-eabi \
 | 
				
			||||||
 | 
					    git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RUN apt-get clean
 | 
				
			||||||
 | 
					RUN rm -rf /var/lib/apt/lists/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ENV keyboard=ergodox_ez
 | 
				
			||||||
 | 
					ENV keymap=default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					VOLUME /qmk
 | 
				
			||||||
 | 
					WORKDIR /qmk
 | 
				
			||||||
 | 
					CMD make clean ; make keyboard=${keyboard} keymap=${keymap}
 | 
				
			||||||
							
								
								
									
										19
									
								
								readme.md
									
										
									
									
									
								
							
							
						
						
									
										19
									
								
								readme.md
									
										
									
									
									
								
							| 
						 | 
					@ -75,6 +75,25 @@ Debian/Ubuntu example:
 | 
				
			||||||
    sudo apt-get update
 | 
					    sudo apt-get update
 | 
				
			||||||
    sudo apt-get install gcc-avr avr-libc dfu-programmer
 | 
					    sudo apt-get install gcc-avr avr-libc dfu-programmer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Docker
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					If this is a bit complex for you, Docker might be the turn-key solution you need. After installing [Docker](https://www.docker.com/products/docker), run the following commands at the root of the QMK folder:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					# You only need to run this once, it'll take a little while
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker build -t qmk .
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# and you'll run this every time you want to build a keymap
 | 
				
			||||||
 | 
					# modify the keymap and keyboard assigment to compile what you want
 | 
				
			||||||
 | 
					# defaults are ergodox_ez/default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker run -e keymap=gwen -e keyboard=ergodox_ez --rm -v $('pwd'):/qmk:rw qmk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This will compile the targetted keyboard/keymap and leave it in your QMK directory for you to flash.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Vagrant
 | 
					### Vagrant
 | 
				
			||||||
If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [VAGRANT_GUIDE file](VAGRANT_GUIDE.md).
 | 
					If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [VAGRANT_GUIDE file](VAGRANT_GUIDE.md).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue