This builds firmware for every keyboard with vial keymap support in vial-qmk, a fork of qmk, and gives you a folder of the firmware binaries. Since all the building is done within qmkfm/base_container, the only major dependencies are docker, python3, and a python package.
Made with pointers from looking at Github Actions from xelus22's QMK-VIA-HEX.
You'll need two cronjobs -
- One to build the docker image - a change to the ast library
deployed in Python 3.14 hasn't had fixes applied to qmk mainline backported to vial-qmk, so you have to
build this custom one pinned to python 3.13.
build.pypulls up latest git changes within the ephemeral container, but maybe rebuild periodically to pull down updates via apt. - One to run
build.py.
I run build.py as a cronjob and get Caddy to serve the vial directory, but you can use whatever server to serve
the directory of files. This implies that you already have docker installed, and the user that runs docker is a member
of the docker group, or is root.
I had a spare domain name I wanted to use.
Firmware blobs for boards hidden on discords are annoying to find, and so is setting up a QMK dev environment if you're not especially tech-savvy, so I set this up for my friends to pull FW from. But, you also don't have to! okin#3938 hosts a similar solution here, if you are more inclined to use SaaS CI sorts of stuff.
- Make index.html look better
- Ape qmk.tzarc.io's design less
- sorry, tzarc
- Ape qmk.tzarc.io's design less
List state ofrules.mkfor each fw to indicate which features need to be disabled- Then think of a way to present it in a decent way
Mount git repo from a specifc folder on host instead of on container fs- recognize when to error out and prevent writing to
.commit_idif job fails