diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..45f95ad --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,4 @@ +FROM ghcr.io/xtruder/nix-devcontainer:v1 + +# cache /nix +VOLUME /nix diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..2c277c1 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,40 @@ +// For format details, see https://aka.ms/vscode-remote/devcontainer.json or the definition README at +// https://github.com/microsoft/vscode-dev-containers/tree/master/containers/docker-existing-dockerfile +{ + "name": "devcontainer-project", + "dockerFile": "Dockerfile", + "context": "${localWorkspaceFolder}", + + "build": { + "args": { + "USER_UID": "${localEnv:USER_UID}", + "USER_GID": "${localEnv:USER_GID}" + } + }, + + // run arguments passed to docker + "runArgs": [ + "--security-opt", "label=disable" + ], + + "containerEnv": { + // extensions to preload before other extensions + "PRELOAD_EXTENSIONS": "arrterian.nix-env-selector" + }, + + // disable command overriding and updating remote user ID + "overrideCommand": false, + "userEnvProbe": "loginShell", + "updateRemoteUserUID": false, + + // build development environment on creation, make sure you already have shell.nix + "onCreateCommand": "nix-shell", + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + "forwardPorts": [ + 3000 + ] + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "go version", +} \ No newline at end of file