mirror of
https://github.com/home-assistant/supervisor.git
synced 2026-04-02 00:07:16 +01:00
Update devcontainer.json settings to work with the new systemd-based devcontainer image (v4). - Bump image tag to 4-supervisor to get the systemd-enabled image - Set overrideCommand to false so the image's CMD (/sbin/init) runs as PID 1 instead of being replaced by VS Code's default sleep command - Set remoteUser to vscode to preserve the non-root shell experience (required when overrideCommand is false, since VS Code no longer injects its own user-switching wrapper) - Add /var/lib/containerd volume mount because modern Docker uses the containerd snapshotter, which stores layer data outside /var/lib/docker - Add tmpfs on /tmp to match typical systemd expectations and avoid leftover state across container restarts
56 lines
1.8 KiB
JSON
56 lines
1.8 KiB
JSON
{
|
|
"name": "Supervisor dev",
|
|
"image": "ghcr.io/home-assistant/devcontainer:4-supervisor",
|
|
"overrideCommand": false,
|
|
"remoteUser": "vscode",
|
|
"containerEnv": {
|
|
"WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}"
|
|
},
|
|
"remoteEnv": {
|
|
"PATH": "${containerEnv:VIRTUAL_ENV}/bin:${containerEnv:PATH}"
|
|
},
|
|
"appPort": ["9123:8123", "7357:4357"],
|
|
"postCreateCommand": "bash devcontainer_setup",
|
|
"postStartCommand": "bash devcontainer_bootstrap",
|
|
"runArgs": ["-e", "GIT_EDITOR=code --wait", "--privileged"],
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
"charliermarsh.ruff",
|
|
"ms-python.pylint",
|
|
"ms-python.vscode-pylance",
|
|
"visualstudioexptteam.vscodeintellicode",
|
|
"redhat.vscode-yaml",
|
|
"esbenp.prettier-vscode",
|
|
"GitHub.vscode-pull-request-github"
|
|
],
|
|
"settings": {
|
|
"python.defaultInterpreterPath": "/home/vscode/.local/ha-venv/bin/python",
|
|
"python.pythonPath": "/home/vscode/.local/ha-venv/bin/python",
|
|
"python.terminal.activateEnvInCurrentTerminal": true,
|
|
"python.testing.pytestArgs": ["--no-cov"],
|
|
"pylint.importStrategy": "fromEnvironment",
|
|
"editor.formatOnPaste": false,
|
|
"editor.formatOnSave": true,
|
|
"editor.formatOnType": true,
|
|
"files.trimTrailingWhitespace": true,
|
|
"terminal.integrated.profiles.linux": {
|
|
"zsh": {
|
|
"path": "/usr/bin/zsh"
|
|
}
|
|
},
|
|
"terminal.integrated.defaultProfile.linux": "zsh",
|
|
"[python]": {
|
|
"editor.defaultFormatter": "charliermarsh.ruff"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"mounts": [
|
|
"type=volume,target=/var/lib/docker",
|
|
"type=volume,target=/var/lib/containerd",
|
|
"type=volume,target=/mnt/supervisor",
|
|
"type=tmpfs,target=/tmp"
|
|
]
|
|
}
|