You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

68 lines
1.8 KiB

{
"name": "MeshCore",
"image": "mcr.microsoft.com/devcontainers/python:3-bookworm",
"features": {
"ghcr.io/devcontainers/features/node:1": {},
"ghcr.io/rocker-org/devcontainer-features/apt-packages:1": {
"packages": [
"sudo",
// Zephyr / nRF Connect SDK host build dependencies
"git",
"cmake",
"ninja-build",
"gperf",
"ccache",
"dfu-util",
"device-tree-compiler",
"wget",
"xz-utils",
"file",
"make",
"libsdl2-dev",
"libmagic1",
"python3-venv",
"python3-dev"
]
}
},
"runArgs": [
"--privileged",
"--network=host",
"--device=/dev/bus/usb",
// arch linux tty* is owned by uucp (986)
"--group-add=986",
// debian tty* is owned by dialout (20)
"--group-add=20"
],
"postCreateCommand": {
"platformio": "pipx install platformio",
"opencode": "curl -fsSL https://opencode.ai/install | bash",
// HEAVY (multi-GB, slow first run). Comment this out and run the script
// manually (`bash .devcontainer/setup-zephyr.sh`) if you'd rather not pay
// the cost on every container (re)create. Non-fatal: PlatformIO still works
// even if this fails.
"zephyr": "bash .devcontainer/setup-zephyr.sh || echo 'Zephyr setup skipped/failed; run .devcontainer/setup-zephyr.sh manually'"
},
"customizations": {
"vscode": {
"settings": {
"platformio-ide.disablePIOHomeStartup": true,
"editor.formatOnSave": false,
"workbench.colorCustomizations": {
"titleBar.activeBackground": "#0d1a2b",
"titleBar.activeForeground": "#ffffff",
"titleBar.inactiveBackground": "#0d1a2b99",
"titleBar.inactiveForeground": "#ffffff99"
}
},
"extensions": [
"platformio.platformio-ide",
"github.vscode-github-actions",
"GitHub.vscode-pull-request-github"
],
"unwantedRecommendations": [
"ms-vscode.cpptools-extension-pack"
]
}
}
}