aboutsummaryrefslogtreecommitdiff
path: root/docker/crupest-debian-dev/bootstrap/apt-source
diff options
context:
space:
mode:
Diffstat (limited to 'docker/crupest-debian-dev/bootstrap/apt-source')
-rw-r--r--docker/crupest-debian-dev/bootstrap/apt-source/china-source.txt1
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash5
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/apt-source/install-apt-https.bash7
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash7
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/apt-source/replace-http.bash7
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/apt-source/setup.bash12
6 files changed, 39 insertions, 0 deletions
diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/china-source.txt b/docker/crupest-debian-dev/bootstrap/apt-source/china-source.txt
new file mode 100644
index 0000000..3821ffc
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/china-source.txt
@@ -0,0 +1 @@
+mirrors.ustc.edu.cn
diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/get-domain.bash
new file mode 100755
index 0000000..d44ea65
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/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/install-apt-https.bash b/docker/crupest-debian-dev/bootstrap/apt-source/install-apt-https.bash
new file mode 100755
index 0000000..05d372b
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/install-apt-https.bash
@@ -0,0 +1,7 @@
+#! /usr/bin/env bash
+
+set -e
+
+echo "Install apt https transport."
+apt-get update
+apt-get install -y apt-transport-https ca-certificates
diff --git a/docker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash b/docker/crupest-debian-dev/bootstrap/apt-source/replace-domain.bash
new file mode 100755
index 0000000..86e88dc
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/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/replace-http.bash b/docker/crupest-debian-dev/bootstrap/apt-source/replace-http.bash
new file mode 100755
index 0000000..fae082a
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/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/setup.bash b/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash
new file mode 100755
index 0000000..60e635b
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/apt-source/setup.bash
@@ -0,0 +1,12 @@
+#! /usr/bin/env bash
+
+set -e
+
+dir=$(dirname "$0")
+
+if [[ -n $IN_CHINA ]]; then
+ "$dir/replace-domain.bash" "$(cat "$dir/china-source.txt")"
+fi
+
+"$dir/install-apt-https.bash"
+"$dir/replace-http.bash"