aboutsummaryrefslogtreecommitdiff
path: root/docker/debian-dev/bootstrap
diff options
context:
space:
mode:
Diffstat (limited to 'docker/debian-dev/bootstrap')
-rw-r--r--docker/debian-dev/bootstrap/bash-profile/auto-start-apt-cacher.bash2
-rw-r--r--docker/debian-dev/bootstrap/bash-profile/code-server.bash12
-rw-r--r--docker/debian-dev/bootstrap/bash-profile/dev.bash1
-rwxr-xr-xdocker/debian-dev/bootstrap/extra/setup-cmake.bash9
-rwxr-xr-xdocker/debian-dev/bootstrap/extra/setup-dotnet.bash10
-rwxr-xr-xdocker/debian-dev/bootstrap/extra/setup-llvm.bash16
-rw-r--r--docker/debian-dev/bootstrap/home-dot/sbuildrc25
-rwxr-xr-xdocker/debian-dev/bootstrap/sbuild/setup-amd64.bash7
-rwxr-xr-xdocker/debian-dev/bootstrap/sbuild/setup.bash25
-rwxr-xr-xdocker/debian-dev/bootstrap/setup-base.bash5
-rwxr-xr-xdocker/debian-dev/bootstrap/setup-code-server.bash14
-rwxr-xr-xdocker/debian-dev/bootstrap/setup-dev.bash3
-rwxr-xr-xdocker/debian-dev/bootstrap/setup.bash14
13 files changed, 72 insertions, 71 deletions
diff --git a/docker/debian-dev/bootstrap/bash-profile/auto-start-apt-cacher.bash b/docker/debian-dev/bootstrap/bash-profile/auto-start-apt-cacher.bash
deleted file mode 100644
index f230cb1..0000000
--- a/docker/debian-dev/bootstrap/bash-profile/auto-start-apt-cacher.bash
+++ /dev/null
@@ -1,2 +0,0 @@
-echo "Start apt-cacher-ng if it does not start..."
-pgrep apt-cacher-ng || apt-cacher-ng
diff --git a/docker/debian-dev/bootstrap/bash-profile/code-server.bash b/docker/debian-dev/bootstrap/bash-profile/code-server.bash
new file mode 100644
index 0000000..443eb0b
--- /dev/null
+++ b/docker/debian-dev/bootstrap/bash-profile/code-server.bash
@@ -0,0 +1,12 @@
+export CODE_SERVER_CONFIG="/data/code-server-config.yaml"
+
+CODE_SERVER_PROGRAM=code-server
+CODE_SERVER_PORT=8080
+
+if which "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
+ if ! pgrep -f "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
+ mkdir -p ~/.local/share/code-server
+ nohup "$CODE_SERVER_PROGRAM" "--bind-addr", "0.0.0.0:$CODE_SERVER_PORT" \
+ > ~/.local/share/code-server/log 2> ~/.local/share/code-server/error &
+ fi
+fi
diff --git a/docker/debian-dev/bootstrap/bash-profile/dev.bash b/docker/debian-dev/bootstrap/bash-profile/dev.bash
deleted file mode 100644
index c49dc35..0000000
--- a/docker/debian-dev/bootstrap/bash-profile/dev.bash
+++ /dev/null
@@ -1 +0,0 @@
-alias cp-no-git="rsync -a --exclude='**/.git'"
diff --git a/docker/debian-dev/bootstrap/extra/setup-cmake.bash b/docker/debian-dev/bootstrap/extra/setup-cmake.bash
new file mode 100755
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 100755
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 100755
index 0000000..5a55902
--- /dev/null
+++ b/docker/debian-dev/bootstrap/extra/setup-llvm.bash
@@ -0,0 +1,16 @@
+#! /usr/bin/env bash
+
+set -e
+
+LLVM_VERSION=18
+wget https://apt.llvm.org/llvm.sh
+chmod +x llvm.sh
+./llvm.sh $LLVM_VERSION all
+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
diff --git a/docker/debian-dev/bootstrap/home-dot/sbuildrc b/docker/debian-dev/bootstrap/home-dot/sbuildrc
deleted file mode 100644
index b04ff83..0000000
--- a/docker/debian-dev/bootstrap/home-dot/sbuildrc
+++ /dev/null
@@ -1,25 +0,0 @@
-##############################################################################
-# PACKAGE BUILD RELATED (additionally produce _source.changes)
-##############################################################################
-$distribution = 'bullseye';
-
-$build_source = 0;
-
-#$source_only_changes = 1;
-#$verbose = 1;
-#$ENV{'DEB_BUILD_OPTIONS'} = 'parallel=5';
-##############################################################################
-# POST-BUILD RELATED (turn off functionality by setting variables to 0)
-##############################################################################
-$run_lintian = 0;
-# $lintian_opts = ['-i', '-I'];
-$run_piuparts = 0;
-# $piuparts_opts = ['--schroot', '%r-%a-sbuild', '--no-eatmydata'];
-$run_autopkgtest = 0;
-# $autopkgtest_root_args = '';
-# $autopkgtest_opts = [ '--', 'schroot', '%r-%a-sbuild' ];
-
-##############################################################################
-# PERL MAGIC
-##############################################################################
-1;
diff --git a/docker/debian-dev/bootstrap/sbuild/setup-amd64.bash b/docker/debian-dev/bootstrap/sbuild/setup-amd64.bash
deleted file mode 100755
index 2c05e40..0000000
--- a/docker/debian-dev/bootstrap/sbuild/setup-amd64.bash
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /usr/bin/env bash
-
-set -e
-
-SBUILD_ARCH="amd64"
-
-sbuild-createchroot --include=eatmydata --command-prefix=eatmydata --arch=${SBUILD_ARCH} ${SBUILD_DIST} /srv/chroot/${SBUILD_DIST}-${SBUILD_ARCH}-sbuild "${SBUILD_MIRROR}"
diff --git a/docker/debian-dev/bootstrap/sbuild/setup.bash b/docker/debian-dev/bootstrap/sbuild/setup.bash
deleted file mode 100755
index 5180db6..0000000
--- a/docker/debian-dev/bootstrap/sbuild/setup.bash
+++ /dev/null
@@ -1,25 +0,0 @@
-#! /usr/bin/env bash
-
-set -e
-
-dir=$(dirname $0)
-
-. /bootstrap/func.bash
-
-apt-get install -y sbuild schroot debootstrap
-
-copy-home-dot-file sbuildrc
-
-# setup apt-cacher-ng
-apt-get install -y apt-cacher-ng
-append-bash-profile auto-start-apt-cacher.bash
-apt-cacher-ng
-export SBUILD_MIRROR="http://127.0.0.1:3142/$(/bootstrap/apt-source/get-domain.bash)/debian"
-
-export SBUILD_DIST="bullseye"
-
-"$dir/setup-amd64.bash"
-
-if [[ "$BUILD_FOR_ARCH" == "arm64" ]]; then
- "$dir/setup-arm64.bash"
-fi
diff --git a/docker/debian-dev/bootstrap/setup-base.bash b/docker/debian-dev/bootstrap/setup-base.bash
index dda9e42..68ebb55 100755
--- a/docker/debian-dev/bootstrap/setup-base.bash
+++ b/docker/debian-dev/bootstrap/setup-base.bash
@@ -4,7 +4,8 @@ set -e
. /bootstrap/func.bash
-apt-get update
-apt-get install -y vim less man curl bash-completion rsync
+apt-get install -y locales vim less man bash-completion rsync curl wget
+
+localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
append-bash-profile bash-completion.bash
diff --git a/docker/debian-dev/bootstrap/setup-code-server.bash b/docker/debian-dev/bootstrap/setup-code-server.bash
new file mode 100755
index 0000000..cb9a407
--- /dev/null
+++ b/docker/debian-dev/bootstrap/setup-code-server.bash
@@ -0,0 +1,14 @@
+#! /usr/bin/env bash
+
+set -e
+
+. /bootstrap/func.bash
+
+VERSION=$(curl -s https://api.github.com/repos/coder/code-server/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
+url="https://github.com/coder/code-server/releases/download/v${VERSION}/code-server_${VERSION}_amd64.deb"
+
+curl -sSfOL "$url"
+apt install "./code-server_${VERSION}_amd64.deb"
+rm "code-server_${VERSION}_amd64.deb"
+
+append-bash-profile code-server.bash
diff --git a/docker/debian-dev/bootstrap/setup-dev.bash b/docker/debian-dev/bootstrap/setup-dev.bash
index 2e69da7..a2f2f52 100755
--- a/docker/debian-dev/bootstrap/setup-dev.bash
+++ b/docker/debian-dev/bootstrap/setup-dev.bash
@@ -5,9 +5,8 @@ set -e
. /bootstrap/func.bash
apt-get install -y build-essential git devscripts debhelper quilt \
- cpio kmod bc python bison flex rsync libelf-dev libssl-dev libncurses-dev dwarves
+ cpio kmod bc python bison flex libelf-dev libssl-dev libncurses-dev dwarves
-append-bash-profile dev.bash
append-bash-profile dquilt.bash
copy-home-dot-file devscripts
copy-home-dot-file quiltrc-dpkg
diff --git a/docker/debian-dev/bootstrap/setup.bash b/docker/debian-dev/bootstrap/setup.bash
index c72db87..f00c60b 100755
--- a/docker/debian-dev/bootstrap/setup.bash
+++ b/docker/debian-dev/bootstrap/setup.bash
@@ -5,16 +5,16 @@ set -e
export DEBIAN_FRONTEND=noninteractive
/bootstrap/apt-source/setup.bash
+
+apt-get update
+
/bootstrap/setup-user.bash
/bootstrap/setup-base.bash
/bootstrap/setup-dev.bash
-. /bootstrap/func.bash
-
-if is_true "$SETUP_SBUILD"; then
- echo "Setup sbuild..."
- /bootstrap/sbuild/setup.bash
-else
- echo "Sbuild is disabled. Skipped."
+if is_true "$SETUP_CODE_SERVER"; then
+ /bootstrap/setup-code-server.bash
fi
+
+rm -rf /var/lib/apt/lists/*