diff options
author | crupest <crupest@outlook.com> | 2024-08-14 00:28:12 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2024-08-14 22:58:21 +0800 |
commit | 61cd7dabdd2c5272a952edd40dffcbc368b596b1 (patch) | |
tree | 4141dbea334763699c16c95183fa49269e97e629 /docker/crupest-debian-dev | |
parent | fa5eb7f373ae37ba5e9838aeb75809e0c0884cea (diff) | |
download | crupest-61cd7dabdd2c5272a952edd40dffcbc368b596b1.tar.gz crupest-61cd7dabdd2c5272a952edd40dffcbc368b596b1.tar.bz2 crupest-61cd7dabdd2c5272a952edd40dffcbc368b596b1.zip |
feat(docker/debian-dev): support both 11 and 12 for apt source.
Diffstat (limited to 'docker/crupest-debian-dev')
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/11/get-domain.bash | 5 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/11/replace-domain.bash | 7 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/11/replace-http.bash | 7 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/12/get-domain.bash (renamed from docker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash) | 0 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/12/replace-domain.bash (renamed from docker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash) | 0 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/12/replace-http.bash (renamed from docker/crupest-debian-dev/bootstrap/apt-source/replace-http.bash) | 0 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/apt-source/setup.bash | 22 | ||||
-rwxr-xr-x | docker/crupest-debian-dev/bootstrap/get-debian-version.bash | 11 |
8 files changed, 49 insertions, 3 deletions
diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/11/get-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/11/get-domain.bash new file mode 100755 index 0000000..d44ea65 --- /dev/null +++ b/docker/crupest-debian-dev/bootstrap/apt-source/11/get-domain.bash @@ -0,0 +1,5 @@ +#! /usr/bin/env bash + +set -e + +sed "s|.*https\?://\([-_.a-zA-Z0-9]\+\)/.*|\\1|;q" /etc/apt/sources.list diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-domain.bash new file mode 100755 index 0000000..86e88dc --- /dev/null +++ b/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-domain.bash @@ -0,0 +1,7 @@ +#! /usr/bin/env bash + +set -e + +echo "Backup /etc/apt/sources.list to /etc/apt/sources.list.bak." +echo "Replace source domain in /etc/apt/sources.list to $1." +sed -i.bak "s|\(https\?://\)[-_.a-zA-Z0-9]\+/|\\1$1/|" /etc/apt/sources.list diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-http.bash b/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-http.bash new file mode 100755 index 0000000..fae082a --- /dev/null +++ b/docker/crupest-debian-dev/bootstrap/apt-source/11/replace-http.bash @@ -0,0 +1,7 @@ +#! /usr/bin/env bash + +set -e + +echo "Backup /etc/apt/sources.list to /etc/apt/sources.list.bak." +echo "Replace http to https in /etc/apt/sources.list." +sed -i.bak 's/https\?/https/' /etc/apt/sources.list diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/12/get-domain.bash index a24538c..a24538c 100755 --- a/docker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash +++ b/docker/crupest-debian-dev/bootstrap/apt-source/12/get-domain.bash diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/12/replace-domain.bash index d55307c..d55307c 100755 --- a/docker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash +++ b/docker/crupest-debian-dev/bootstrap/apt-source/12/replace-domain.bash diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/replace-http.bash b/docker/crupest-debian-dev/bootstrap/apt-source/12/replace-http.bash index ed4391d..ed4391d 100755 --- a/docker/crupest-debian-dev/bootstrap/apt-source/replace-http.bash +++ b/docker/crupest-debian-dev/bootstrap/apt-source/12/replace-http.bash diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash b/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash index 60583d4..6e504ef 100755 --- a/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash +++ b/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash @@ -2,16 +2,32 @@ set -e -dir=$(dirname "$0") +dir=/bootstrap/apt-source + +echo "Getting debian version..." +debian_version=$(bash "$dir/../get-debian-version.bash") + +if [[ -z $debian_version ]]; then + echo "Debian version not found." + exit 1 +else + echo "Debian version: $debian_version" +fi + +if [[ $debian_version -ge 12 ]]; then + setup_dir=$dir/12 +else + setup_dir=$dir/11 +fi echo "Setting up apt source..." if [[ -n $CRUPEST_DEBIAN_DEV_IN_CHINA ]]; then echo "In China, using China source..." - "$dir/replace-domain.bash" "$(cat "$dir/china-source.txt")" + "$setup_dir/replace-domain.bash" "$(cat "$dir/china-source.txt")" fi "$dir/install-apt-https.bash" -"$dir/replace-http.bash" +"$setup_dir/replace-http.bash" echo "Setting up apt source done." diff --git a/docker/crupest-debian-dev/bootstrap/get-debian-version.bash b/docker/crupest-debian-dev/bootstrap/get-debian-version.bash new file mode 100755 index 0000000..305e628 --- /dev/null +++ b/docker/crupest-debian-dev/bootstrap/get-debian-version.bash @@ -0,0 +1,11 @@ +#! /usr/bin/env bash + +if [ -f /etc/os-release ]; then + . /etc/os-release + if [ "$ID" = "debian" ]; then + echo "$VERSION_ID" + exit 0 + fi +else + +exit 1 |