Curly shells and rabbit holes. I treated myself to a new keyboard. One of my requirements for a keyboard is that it is QMK (or any other FOSS firmware) compatible. Since I am currently spending most of my private computer time on macOS, I wanted to be able to build the firmware and flash it from there. One of the first steps of the QMK setup procedure is to curl | sh a command from the docs to install the QMK command line tool. Shell-curling always feels icky to me for various reasons, and so I looked for alternatives. Here's my setup (using homebrew, which is also installed by bash-curling ;) Install container: brew install containerInstall dfu-util: brew install dfu-utilUse the docker build script with container: SKIP_FLASHING_SUPPORT=1 RUNTIME=container ./util/docker_build.sh your/keyboard:your_layoutFlash using dfu-util: dfu-util -a 0 -w -d 0483:DF11 -s 0x08000000:leave -D /path/to/your/bin It works and does not clutter up my system. #macOS #container #qmk #curlbash #homebrew