aboutsummaryrefslogtreecommitdiff
path: root/docker/debian-dev/bootstrap/extra
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2024-11-11 01:12:29 +0800
committerYuqian Yang <crupest@crupest.life>2024-12-19 21:42:01 +0800
commitf9aa02ec1a4c24e80a206857d4f68198bb027bb4 (patch)
tree5994f0a62733b13f9f330e3515260ae20dc4a0bd /docker/debian-dev/bootstrap/extra
parent7b4d49e4bbdff6ddf1f8f7e937130e700024d5e9 (diff)
downloadcrupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.tar.gz
crupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.tar.bz2
crupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.zip
HALF WORK: 2024.12.19
Re-organize file structure.
Diffstat (limited to 'docker/debian-dev/bootstrap/extra')
-rw-r--r--docker/debian-dev/bootstrap/extra/setup-cmake.bash9
-rw-r--r--docker/debian-dev/bootstrap/extra/setup-dotnet.bash10
-rw-r--r--docker/debian-dev/bootstrap/extra/setup-llvm.bash26
3 files changed, 45 insertions, 0 deletions
diff --git a/docker/debian-dev/bootstrap/extra/setup-cmake.bash b/docker/debian-dev/bootstrap/extra/setup-cmake.bash
new file mode 100644
index 0000000..76c1ae4
--- /dev/null
+++ b/docker/debian-dev/bootstrap/extra/setup-cmake.bash
@@ -0,0 +1,9 @@
+#! /usr/bin/env bash
+
+set -e
+
+CMAKE_VERSION=$(curl -s https://api.github.com/repos/Kitware/CMake/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
+wget -O cmake-installer.sh https://github.com/Kitware/CMake/releases/download/v"$CMAKE_VERSION"/cmake-"$CMAKE_VERSION"-linux-x86_64.sh
+chmod +x cmake-installer.sh
+./cmake-installer.sh --skip-license --prefix=/usr
+rm cmake-installer.sh
diff --git a/docker/debian-dev/bootstrap/extra/setup-dotnet.bash b/docker/debian-dev/bootstrap/extra/setup-dotnet.bash
new file mode 100644
index 0000000..0ef7743
--- /dev/null
+++ b/docker/debian-dev/bootstrap/extra/setup-dotnet.bash
@@ -0,0 +1,10 @@
+#! /usr/bin/env bash
+
+set -e
+
+wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
+dpkg -i packages-microsoft-prod.deb
+rm packages-microsoft-prod.deb
+
+apt-get update
+apt-get install -y dotnet-sdk-7.0
diff --git a/docker/debian-dev/bootstrap/extra/setup-llvm.bash b/docker/debian-dev/bootstrap/extra/setup-llvm.bash
new file mode 100644
index 0000000..48dde86
--- /dev/null
+++ b/docker/debian-dev/bootstrap/extra/setup-llvm.bash
@@ -0,0 +1,26 @@
+#! /usr/bin/env bash
+
+set -e
+
+LLVM_VERSION=18
+
+. /bootstrap/func.bash
+
+if is_true "$CRUPEST_DEBIAN_DEV_IN_CHINA"; then
+ base_url=https://mirrors.tuna.tsinghua.edu.cn/llvm-apt
+else
+ base_url=https://apt.llvm.org
+fi
+
+wget "$base_url/llvm.sh"
+chmod +x llvm.sh
+./llvm.sh $LLVM_VERSION all -m "$base_url"
+rm llvm.sh
+
+update-alternatives --install /usr/bin/clang clang /usr/bin/clang-$LLVM_VERSION 100 \
+ --slave /usr/bin/clang++ clang++ /usr/bin/clang++-$LLVM_VERSION \
+ --slave /usr/bin/clangd clangd /usr/bin/clangd-$LLVM_VERSION \
+ --slave /usr/bin/clang-format clang-format /usr/bin/clang-format-$LLVM_VERSION \
+ --slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-$LLVM_VERSION \
+ --slave /usr/bin/lldb lldb /usr/bin/lldb-$LLVM_VERSION \
+ --slave /usr/bin/lld lld /usr/bin/lld-$LLVM_VERSION