initial commit

This commit is contained in:
2026-03-18 03:29:25 +08:00
commit 146c2c5f35
37 changed files with 1445 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud Alpine Mirror Setup"
echo "================================="
if [[ ! -f /etc/alpine-release ]]; then
echo "This script only supports Alpine."
exit 1
fi
echo "[1/3] Backing up repositories..."
cp /etc/apk/repositories /etc/apk/repositories.bak
ALPINE_VERSION=$(cut -d'.' -f1,2 /etc/alpine-release)
echo "[2/3] Writing mirror..."
cat > /etc/apk/repositories <<EOF
https://mirror.arvancloud.ir/alpine/v${ALPINE_VERSION}/main
https://mirror.arvancloud.ir/alpine/v${ALPINE_VERSION}/community
EOF
echo "[3/3] Updating package index..."
apk update
echo "Alpine mirror configured."

View File

@@ -0,0 +1,26 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud Arch Mirror Setup"
echo "================================="
if [[ ! -f /etc/arch-release ]]; then
echo "This script only supports Arch."
exit 1
fi
echo "[1/3] Backing up mirrorlist..."
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
echo "[2/3] Commenting existing mirrors..."
sed -i 's/^Server/#Server/g' /etc/pacman.d/mirrorlist
echo "[3/3] Adding ArvanCloud mirror..."
echo "Server = https://mirror.arvancloud.ir/archlinux/\$repo/os/\$arch" \
>> /etc/pacman.d/mirrorlist
pacman -Syyu
echo "Arch mirror configured."

View File

@@ -0,0 +1,33 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud CentOS Mirror Setup"
echo "================================="
source /etc/os-release
echo "[1/3] Updating repo files..."
for f in /etc/yum.repos.d/*.repo; do
sed -i 's/^mirrorlist/#mirrorlist/g' "$f"
sed -i 's/^#baseurl/baseurl/g' "$f"
done
if [[ "$VERSION_ID" == "7" ]]; then
echo "[2/3] Setting ArvanCloud mirror for CentOS 7..."
sed -i 's|^baseurl=.*|baseurl=http://mirror.arvancloud.ir/centos/\$releasever/os/\$basearch/|' /etc/yum.repos.d/*.repo
elif [[ "$VERSION_ID" == "8" ]]; then
echo "[2/3] Setting ArvanCloud mirror for CentOS 8..."
sed -i 's|^baseurl=.*|baseurl=http://mirror.arvancloud.ir/\$contentdir/\$releasever/BaseOS/\$basearch/os/|' /etc/yum.repos.d/*.repo
echo "[3/3] Fixing releasever..."
echo "8-stream" > /etc/yum/vars/releasever
dnf update --allowerasing
fi
echo "CentOS mirror configured."

View File

@@ -0,0 +1,30 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud Debian Mirror Setup"
echo "================================="
source /etc/os-release
if [[ "$ID" != "debian" ]]; then
echo "This script only supports Debian."
exit 1
fi
CODENAME="$VERSION_CODENAME"
echo "[1/3] Backing up sources.list..."
cp /etc/apt/sources.list /etc/apt/sources.list.bak
echo "[2/3] Writing ArvanCloud mirror..."
cat > /etc/apt/sources.list <<EOF
deb http://mirror.arvancloud.ir/debian ${CODENAME} main
deb http://mirror.arvancloud.ir/debian-security ${CODENAME}-security main
EOF
echo "[3/3] Updating package index..."
apt update
echo "Debian mirror configured."

View File

@@ -0,0 +1,28 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud Manjaro Mirror Setup"
echo "================================="
source /etc/os-release
if [[ "$ID" != "manjaro" ]]; then
echo "This script only supports Manjaro."
exit 1
fi
echo "[1/3] Backing up mirrorlist..."
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
echo "[2/3] Commenting existing mirrors..."
sed -i 's/^Server/#Server/g' /etc/pacman.d/mirrorlist
echo "[3/3] Adding ArvanCloud mirror..."
echo "Server = https://mirror.arvancloud.ir/manjaro/stable/\$repo/\$arch" \
>> /etc/pacman.d/mirrorlist
pacman -Syyu
echo "Manjaro mirror configured."

View File

@@ -0,0 +1,32 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud OpenSUSE Mirror Setup"
echo "================================="
if ! command -v zypper &> /dev/null; then
echo "This script only supports OpenSUSE."
exit 1
fi
source /etc/os-release
VERSION="$VERSION_ID"
echo "[1/2] Adding ArvanCloud repositories..."
for i in \
"http://mirror.arvancloud.ir/opensuse/debug/distribution/leap/${VERSION}/repo/oss/ Arvancloud-Debug" \
"http://mirror.arvancloud.ir/opensuse/distribution/leap/${VERSION}/repo/non-oss/ Arvancloud-Non-Oss" \
"http://mirror.arvancloud.ir/opensuse/distribution/leap/${VERSION}/repo/oss/ Arvancloud-Oss" \
"http://mirror.arvancloud.ir/opensuse/source/distribution/leap/${VERSION}/repo/oss/ Arvancloud-Source" \
"http://mirror.arvancloud.ir/opensuse/update/leap/${VERSION}/oss Arvancloud-Update"
do
zypper addrepo --priority 1 -f $i
done
echo "[2/2] Refreshing repositories..."
zypper refresh
echo "OpenSUSE mirror configured."

View File

@@ -0,0 +1,29 @@
#!/usr/bin/env bash
set -e
echo "================================="
echo " ArvanCloud Ubuntu Mirror Setup"
echo "================================="
source /etc/os-release
if [[ "$ID" != "ubuntu" ]]; then
echo "This script only supports Ubuntu."
exit 1
fi
CODENAME="$VERSION_CODENAME"
echo "[1/3] Backing up sources.list..."
cp /etc/apt/sources.list /etc/apt/sources.list.bak
echo "[2/3] Writing ArvanCloud mirror..."
cat > /etc/apt/sources.list <<EOF
deb http://mirror.arvancloud.ir/ubuntu ${CODENAME} universe
EOF
echo "[3/3] Updating package index..."
apt update
echo "Ubuntu mirror configured."