From 23cf62e01fc292a87f4cb2a524fceb998bfac745 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn-Michael?= <40151420+ldericher@users.noreply.github.com> Date: Wed, 13 Mar 2024 22:09:07 +0000 Subject: [PATCH] devcontainer optimization --- .devcontainer/devcontainer.json | 88 +++++++++++++++++---------------- 1 file changed, 46 insertions(+), 42 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 6aca15c..e458640 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,46 +1,50 @@ // For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/rust { - "name": "Rust", - // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile - "image": "mcr.microsoft.com/devcontainers/rust:1-1-bookworm", - // Use 'mounts' to make the cargo cache persistent in a Docker Volume. - // "mounts": [ - // { - // "source": "devcontainer-cargo-cache-${devcontainerId}", - // "target": "/usr/local/cargo", - // "type": "volume" - // } - // ] - // Features to add to the dev container. More info: https://containers.dev/features. - "features": { - "ghcr.io/devcontainers-contrib/features/apt-get-packages:1": { - "packages": "git-flow, openocd, gdb-multiarch" - } - }, - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [], - // Use 'postCreateCommand' to run commands after the container is created. - // "postCreateCommand": "rustc --version", - "postCreateCommand": "rustup target install thumbv7m-none-eabi", - // Configure tool-specific properties. - "customizations": { - "vscode": { - "settings": { - "terminal.integrated.defaultProfile.linux": "zsh" - }, - "extensions": [ - "marus25.cortex-debug", - "mhutchie.git-graph" - ] - } - }, - // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. - // "remoteUser": "root" - "runArgs": [ - "--device-cgroup-rule=c 189:* rmw" - ], - "mounts": [ - "source=/dev/bus/usb,target=/dev/bus/usb,type=bind" - ] + "name": "Rust", + // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile + "image": "mcr.microsoft.com/devcontainers/rust:1-1-bookworm", + // Features to add to the dev container. More info: https://containers.dev/features. + "features": { + "ghcr.io/devcontainers-contrib/features/apt-get-packages:1": { + "packages": "git-flow, openocd, gdb-multiarch" + } + }, + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "rustc --version", + "postCreateCommand": "rustup target install thumbv7m-none-eabi", + // Configure tool-specific properties. + "customizations": { + "vscode": { + "settings": { + "terminal.integrated.defaultProfile.linux": "zsh" + }, + "extensions": [ + "marus25.cortex-debug", + "mhutchie.git-graph" + ] + } + }, + // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. + // "remoteUser": "root" + "mounts": [ + { + // make the cargo cache persistent in a volume + "source": "devcontainer-cargo-cache-${devcontainerId}", + "target": "/usr/local/cargo", + "type": "volume" + }, + { + // bind the USB bus + "source": "/dev/bus/usb", + "target": "/dev/bus/usb", + "type": "bind" + } + ], + "runArgs": [ + // allow access to "character devices" + "--device-cgroup-rule=c 189:* rmw" + ] } \ No newline at end of file