Moved qmk container to qmk repo
parent
d6c4dab27f
commit
378c2933b9
|
@ -1,6 +0,0 @@
|
||||||
[submodule "qmk/qmk_cli"]
|
|
||||||
path = qmk/qmk_cli
|
|
||||||
url = ssh://git@git.betalupi.com:33/QMK/qmk_cli.git
|
|
||||||
[submodule "qmk/qmk_firmware"]
|
|
||||||
path = qmk/qmk_firmware
|
|
||||||
url = ssh://git@git.betalupi.com:33/QMK/qmk_firmware.git
|
|
|
@ -1,83 +0,0 @@
|
||||||
## Build qmk-cli
|
|
||||||
FROM python:3.8-slim-buster AS qmk_cli_builder
|
|
||||||
WORKDIR /app
|
|
||||||
COPY qmk_cli .
|
|
||||||
RUN pip3 install build
|
|
||||||
RUN python3 -m build
|
|
||||||
|
|
||||||
|
|
||||||
## Base container
|
|
||||||
FROM debian:11-slim
|
|
||||||
|
|
||||||
# Install dependencies
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install --no-install-recommends -y \
|
|
||||||
avrdude \
|
|
||||||
binutils-arm-none-eabi \
|
|
||||||
binutils-riscv64-unknown-elf \
|
|
||||||
build-essential \
|
|
||||||
ca-certificates \
|
|
||||||
clang-format-11 \
|
|
||||||
dfu-programmer \
|
|
||||||
dfu-util \
|
|
||||||
dos2unix \
|
|
||||||
ca-certificates \
|
|
||||||
gcc \
|
|
||||||
gcc-arm-none-eabi \
|
|
||||||
gcc-riscv64-unknown-elf \
|
|
||||||
git \
|
|
||||||
libfl2 \
|
|
||||||
libnewlib-arm-none-eabi \
|
|
||||||
picolibc-riscv64-unknown-elf \
|
|
||||||
python3 \
|
|
||||||
python3-pip \
|
|
||||||
software-properties-common \
|
|
||||||
tar \
|
|
||||||
teensy-loader-cli \
|
|
||||||
unzip \
|
|
||||||
tar \
|
|
||||||
wget \
|
|
||||||
zip \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Install python packages
|
|
||||||
RUN python3 -m pip install --upgrade \
|
|
||||||
pip \
|
|
||||||
setuptools \
|
|
||||||
wheel \
|
|
||||||
nose2 \
|
|
||||||
yapf
|
|
||||||
|
|
||||||
# upgrade avr-gcc... for reasons?
|
|
||||||
RUN /bin/bash -c "set -o pipefail && \
|
|
||||||
wget -q https://github.com/ZakKemble/avr-gcc-build/releases/download/v8.3.0-1/avr-gcc-8.3.0-x64-linux.tar.bz2 -O - | tee /tmp/asdf.tar.bz2 | md5sum -c <(echo '588D0BEA4C5D21A1A06AA17625684417 -') && \
|
|
||||||
tar xfj /tmp/asdf.tar.bz2 --strip-components=1 -C / && \
|
|
||||||
rm -rf /share/ /tmp/*"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Install qmk-cli
|
|
||||||
COPY --from=qmk_cli_builder /app/dist /tmp/dist
|
|
||||||
RUN python3 -m pip install /tmp/dist/qmk-*.whl && \
|
|
||||||
rm -rf /tmp/dist
|
|
||||||
|
|
||||||
# Copy qmk repo.
|
|
||||||
# Make sure you've pulled submodules first!
|
|
||||||
COPY qmk_firmware /qmk_firmware
|
|
||||||
RUN chmod -R 777 /qmk_firmware
|
|
||||||
|
|
||||||
VOLUME /qmk_firmware/keyboards
|
|
||||||
VOLUME /build_output
|
|
||||||
WORKDIR /qmk_firmware
|
|
||||||
|
|
||||||
ENV SKIP_GIT true
|
|
||||||
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
|
||||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
|
||||||
|
|
||||||
# How to use:
|
|
||||||
# docker run -it \
|
|
||||||
# --user 1000:1001 \
|
|
||||||
# -v "$(pwd)/kb:/qmk_firmware/keyboards" \
|
|
||||||
#
|
|
|
@ -1,24 +0,0 @@
|
||||||
# QMK Build Container
|
|
||||||
|
|
||||||
This container contains everything you need to build QMK, including a pinned version of QMK itself. **Be careful, this container may not use the latest version of QMK.**
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
This container takes two volumes:
|
|
||||||
- `/build_output`: QMK binaries are copied here.
|
|
||||||
- `/qmk_firmware/keyboards`: QMK keyboard dir. Link this to your code.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
docker run -it \
|
|
||||||
--user $(id -u):$(id -g) \
|
|
||||||
-v "$(pwd)/output:/build_output" \
|
|
||||||
-v "$(pwd)/kb:/qmk_firmware/keyboards:ro" \
|
|
||||||
-e QMK_TARGET="betalupi_ergodox:default" \
|
|
||||||
git.betalupi.com/mark/qmk
|
|
||||||
```
|
|
||||||
|
|
||||||
## Building
|
|
||||||
|
|
||||||
1. Before building, run `git submodule update --init --recursive`.
|
|
||||||
2. Checkout whatever version of `qmk_firmware` you need
|
|
||||||
3. Run `docker build . -t git.betalupi.com/mark/qmk`
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
if [[ -z "$QMK_TARGET" ]]; then
|
|
||||||
echo "You must provide a target to build!" 1>&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
make $QMK_TARGET
|
|
||||||
|
|
||||||
# Move output files to output directory.
|
|
||||||
# These are the only extensions qmk can produce,
|
|
||||||
# as far as I know.
|
|
||||||
mv *.{bin,hex,uf2} /build_output > /dev/null 2>&1
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 42481f2db3da47f074f89232bc7c24ccb2202e24
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 2106acc24a5c223a5429ea5413bd78f6f0ad038c
|
|
Loading…
Reference in New Issue