diff options
Diffstat (limited to '.devcontainer')
| -rw-r--r-- | .devcontainer/x86-64/Containerfile | 38 | ||||
| -rw-r--r-- | .devcontainer/x86-64/devcontainer.json | 26 |
2 files changed, 53 insertions, 11 deletions
diff --git a/.devcontainer/x86-64/Containerfile b/.devcontainer/x86-64/Containerfile new file mode 100644 index 0000000..eb03057 --- /dev/null +++ b/.devcontainer/x86-64/Containerfile @@ -0,0 +1,38 @@ +FROM registry.gitlab.ost.ch:45023/teachos/devcontainers/x86-64:16.1.0-3-py3.14 + +RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install --yes --no-install-recommends \ + acpica-tools \ + clangd-22 \ + clang-tidy-22 \ + cmake \ + g++-16 \ + gcc-16 \ + gdb \ + git \ + git-lfs \ + grub2-common \ + grub-pc \ + libcatch2-dev \ + locales \ + mtools \ + ninja-build \ + python3-poetry \ + qemu-system-x86 \ + ssh \ + wget \ + xorriso \ + && rm -rf /var/lib/apt/lists/* + +RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \ + dpkg-reconfigure --frontend=noninteractive locales && \ + update-locale LANG=en_US.UTF-8 + +RUN update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-16 100 && \ + update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-16 100 && \ + update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-16 100 && \ + update-alternatives --install /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-16 100 && \ + update-alternatives --install /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-16 100 && \ + update-alternatives --install /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-16 100 && \ + update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-16 100 && \ + update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-22 100 && \ + update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-22 100 diff --git a/.devcontainer/x86-64/devcontainer.json b/.devcontainer/x86-64/devcontainer.json index ec50ecb..dc70596 100644 --- a/.devcontainer/x86-64/devcontainer.json +++ b/.devcontainer/x86-64/devcontainer.json @@ -1,25 +1,29 @@ { "name": "TeachOS on x86-64", - "image": "registry.gitlab.ost.ch:45023/teachos/devcontainers/x86-64:15.2.0-2", - "features": { - "ghcr.io/devcontainers/features/git:1": {}, - "ghcr.io/devcontainers/features/git-lfs:1": {}, - "ghcr.io/devcontainers-extra/features/apt-packages:1": { - "packages": "cmake,grub2-common,grub-pc,mtools,ninja-build,qemu-system-x86,ssh,xorriso" - } + "build": { + "dockerfile": "Containerfile" }, + "remoteUser": "ubuntu", "customizations": { "vscode": { "extensions": [ "basdp.language-gas-x86", "gruntfuggly.todo-tree", "llvm-vs-code-extensions.vscode-clangd", + "matepek.vscode-catch2-test-adapter", "ms-vscode.cmake-tools", "KylinIdeTeam.cppdebug", - "zixuanwang.linkerscript" + "zixuanwang.linkerscript", + "ms-vscode.hexeditor" ] } }, - "remoteUser": "ubuntu", - "updateRemoteUserUID": true -} + "containerEnv": { + "DEBUGINFOD_URLS": "NOSUCHURL" + }, + "remoteEnv": { + "LANG": "en_US.UTF-8", + "LC_ALL": "en_US.UTF-8", + "TERM": "xterm-256color" + } +}
\ No newline at end of file |
