shrupl/.devcontainer/devcontainer.json

62 lines
1.9 KiB
JSON

// 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": "debian:bookworm",
// Features to add to the dev container. More info: https://containers.dev/features.
"features": {
// "ghcr.io/devcontainers/features/git-lfs:1": {},
"ghcr.io/devcontainers/features/common-utils:2": {
"configureZshAsDefaultShell": "true"
},
"ghcr.io/devcontainers/features/rust:1": {
"targets": "x86_64-unknown-linux-gnu,x86_64-unknown-linux-musl"
},
"ghcr.io/lee-orr/rusty-dev-containers/cargo-binstall:0": {
"packages": "cargo-llvm-cov,cargo-edit"
},
"ghcr.io/devcontainers-extra/features/apt-get-packages:1": {
"packages": "git-flow,musl-tools"
}
},
"overrideFeatureInstallOrder": [
"ghcr.io/devcontainers/features/rust",
"ghcr.io/lee-orr/rusty-dev-containers/cargo-binstall"
],
// cargo cache persistence
"mounts": [
{
"source": "devcontainer-cargo-cache-${devcontainerId}",
"target": "/usr/local/cargo",
"type": "volume"
}
],
// 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": "sudo chown -R \"${USER}:rustlang\" \"${RUSTUP_HOME}\" \"${CARGO_HOME}\"",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "zsh"
},
"extensions": [
"mhutchie.git-graph",
"Gruntfuggly.todo-tree",
"ryanluker.vscode-coverage-gutters"
]
}
},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
"remoteUser": "vscode"
}