diff options
author | Yuqian Yang <crupest@crupest.life> | 2025-02-22 18:11:35 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2025-02-23 01:36:11 +0800 |
commit | 34704b2090c48d9ab9e7458475fd701a38706ae7 (patch) | |
tree | 2aff2885ecfbef32095daf205bf2ebb32a7f2c34 /services/docker/debian-dev/bootstrap/setup-apt.bash | |
parent | 594691a66ceb00536e133ece321846f7ba49f881 (diff) | |
download | crupest-34704b2090c48d9ab9e7458475fd701a38706ae7.tar.gz crupest-34704b2090c48d9ab9e7458475fd701a38706ae7.tar.bz2 crupest-34704b2090c48d9ab9e7458475fd701a38706ae7.zip |
feat(services): refactor structure.
Diffstat (limited to 'services/docker/debian-dev/bootstrap/setup-apt.bash')
-rwxr-xr-x | services/docker/debian-dev/bootstrap/setup-apt.bash | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/services/docker/debian-dev/bootstrap/setup-apt.bash b/services/docker/debian-dev/bootstrap/setup-apt.bash new file mode 100755 index 0000000..38cba05 --- /dev/null +++ b/services/docker/debian-dev/bootstrap/setup-apt.bash @@ -0,0 +1,41 @@ +#! /usr/bin/env bash +# shellcheck disable=1090,1091 + +set -e + +if [[ $EUID -ne 0 ]]; then + die "This script must be run as root." +fi + +script_dir=$(dirname "$0") + +old_one="/etc/apt/sources.list" +new_one="/etc/apt/sources.list.d/debian.sources" + +echo "Setup apt sources ..." + +echo "Backup old ones to .bak ..." +if [[ -f "$old_one" ]]; then + mv "$old_one" "$old_one.bak" +fi + +if [[ -f "$new_one" ]]; then + mv "$new_one" "$new_one.bak" +fi + +echo "Copy the new one ..." +cp "$script_dir/official.sources" "$new_one" + +if [[ -n "$CRUPEST_DEBIAN_DEV_IN_CHINA" ]]; then + echo "Replace with China mirror ..." + china_mirror="mirrors.ustc.edu.cn" + sed -i "s|deb.debian.org|${china_mirror}|" "$new_one" +fi + +echo "Try to use https ..." +apt-get update +apt-get install -y apt-transport-https ca-certificates + +sed -i 's|http://|https://|' "$new_one" + +echo "APT source setup done!" |