commit 67fac7803e28c485bbd23c47cd5bb92de61e3763
parent c8dcd9291beb7ad4ff6570d4a9c11b4efcf58024
Author: Nick Brassel <nick@tzarc.org>
Date: Fri, 23 Feb 2024 22:35:45 +1100
Add support for devcontainers. (#6)
Diffstat:
3 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
@@ -0,0 +1,33 @@
+// For format details, see https://aka.ms/devcontainer.json. For config options, see the
+// README at: https://github.com/devcontainers/templates/tree/main/src/debian
+{
+ "name": "QMK CLI",
+ // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
+ "image": "ghcr.io/qmk/qmk_cli",
+ "customizations": {
+ "vscode": {
+ "extensions": [
+ "amodio.toggle-excluded-files",
+ "EditorConfig.EditorConfig",
+ "xaver.clang-format",
+ "llvm-vs-code-extensions.vscode-clangd",
+ "bierner.github-markdown-preview",
+ "donjayamanne.git-extension-pack",
+ "ms-vscode-remote.remote-containers"
+ ]
+ }
+ },
+ "postCreateCommand": "/workspaces/qmk_userspace/.devcontainer/setup.sh"
+
+ // Features to add to the dev container. More info: https://containers.dev/features.
+ // "features": {},
+
+ // Use 'forwardPorts' to make a list of ports inside the container available locally.
+ // "forwardPorts": [],
+
+ // Configure tool-specific properties.
+ // "customizations": {},
+
+ // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
+ // "remoteUser": "root"
+}
diff --git a/.devcontainer/setup.sh b/.devcontainer/setup.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/env bash
+
+set -eEuo pipefail
+
+wget https://bootstrap.pypa.io/get-pip.py
+python3 get-pip.py
+python3 -m pip install qmk
+rm get-pip.py
+
+python3 -m pip install --upgrade milc
+
+git config --global --add safe.directory /workspaces/qmk_userspace
+git submodule update --init --recursive
+
+[ -d /workspaces/qmk_firmware ] || git clone https://github.com/qmk/qmk_firmware.git /workspaces/qmk_firmware
+git config --global --add safe.directory /workspaces/qmk_firmware
+
+qmk config user.qmk_home=/workspaces/qmk_firmware
+qmk config user.overlay_dir=/workspaces/qmk_userspace
+
+qmk git-submodule
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
@@ -0,0 +1,12 @@
+// Suggested extensions
+{
+ "recommendations": [
+ "amodio.toggle-excluded-files",
+ "EditorConfig.EditorConfig",
+ "xaver.clang-format",
+ "llvm-vs-code-extensions.vscode-clangd",
+ "bierner.github-markdown-preview",
+ "donjayamanne.git-extension-pack",
+ "ms-vscode-remote.remote-containers"
+ ]
+}