diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000000..7b8c8debc6 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,15 @@ +FROM ubuntu:24.04 AS spython-base +RUN export DEBIAN_FRONTEND=noninteractive +RUN apt-get update +RUN apt-get install -y --no-install-recommends git +RUN apt-get install -y --no-install-recommends python3 +RUN apt-get install -y --no-install-recommends python3.12-venv python3-pip +RUN apt-get install -y --no-install-recommends build-essential +RUN apt-get install -y --no-install-recommends ruby ruby-dev +RUN apt-get install -y --no-install-recommends bundler +RUN apt-get install -y --no-install-recommends nodejs +RUN apt-get install -y --no-install-recommends npm +RUN apt-get install -y --no-install-recommends ditaa +RUN apt-get clean autoclean +RUN apt-get autoremove -y +RUN rm -rf /var/lib/{apt, dpkg, cache, log} diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000000..3023fe889f --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,37 @@ +{ + "name": "RISC-V UnifiedDB Dev", + "build": { "dockerfile": "Dockerfile" }, + "updateContentCommand": "${containerWorkspaceFolder}/.devcontainer/updateContentCommand.sh", + "onCreateCommand": "${containerWorkspaceFolder}/.devcontainer/onCreateCommand.sh", + "remoteEnv": { + "DISPLAY": ":0" + }, + // vscode extensions + "customizations": { + "vscode": { + "settings": { + "solargraph.bundlerPath": "bundle", + "solargraph.useBundler": true, + "files.exclude": { + "**/.home": true, + "**/.yardoc": true + }, + "files.watcherExclude": { + "**/.home": true + }, + "asciidoc.antora.showEnableAntoraPrompt": true + }, + "extensions": [ + "castwide.solargraph", + "redhat.vscode-yaml", + "asciidoctor.asciidoctor-vscode", + "zhwu95.riscv", + "tomoki1207.pdf", + "CraigMaslowski.erb" + ] + } + }, + "forwardPorts": [ + 8000, 8080 + ] +} diff --git a/.devcontainer/onCreateCommand.sh b/.devcontainer/onCreateCommand.sh new file mode 100755 index 0000000000..c51b5e23b1 --- /dev/null +++ b/.devcontainer/onCreateCommand.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +npm i +bundle install diff --git a/.devcontainer/updateContentCommand.sh b/.devcontainer/updateContentCommand.sh new file mode 100755 index 0000000000..cbf5fde72f --- /dev/null +++ b/.devcontainer/updateContentCommand.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +bundle diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 0880ee92c9..0000000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "solargraph.bundlerPath": "bin/bundle", - "solargraph.checkGemVersion": false, - "solargraph.useBundler": true, - "files.exclude": { - "**/.home": true, - "**/.yardoc": true - }, - "files.watcherExclude": { - "**/.home": true - }, - "asciidoc.antora.showEnableAntoraPrompt": true -} \ No newline at end of file