容器化的无污染DNS服务
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

81 lines
2.4 KiB

get_github_latest_version() {
VERSION=$(curl --silent "https://api.github.com/repos/$1/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/');
}
get_architecture() {
case "$(uname -m)" in
'i386' | 'i686')
MACHINE='i386'
;;
'amd64' | 'x86_64')
MACHINE='amd64'
;;
'armv7' | 'armv7l')
MACHINE='arm'
;;
'armv8' | 'aarch64')
MACHINE='arm64'
;;
*)
echo "The architecture is not supported."
exit 1
;;
esac
}
ASSET_DIR="/tmp/asset"
PKG_DIR="$ASSET_DIR/pkg"
mkdir -p $PKG_DIR
get_architecture
case "$MACHINE" in
'i386')
AGH_PKG_NAME="AdGuardHome_linux_386.tar.gz"
OVERTURE_FILE_NAME="overture-linux-386"
OVERTURE_PKG_NAME="$OVERTURE_FILE_NAME.zip"
DNSPROXY_FOLDER_NAME="linux-386"
DNSPROXY_PKG_PREFIX="dnsproxy-$DNSPROXY_FOLDER_NAME-"
;;
'amd64')
AGH_PKG_NAME="AdGuardHome_linux_amd64.tar.gz"
OVERTURE_FILE_NAME="overture-linux-amd64"
OVERTURE_PKG_NAME="$OVERTURE_FILE_NAME.zip"
DNSPROXY_FOLDER_NAME="linux-amd64"
DNSPROXY_PKG_PREFIX="dnsproxy-$DNSPROXY_FOLDER_NAME-"
;;
'arm')
AGH_PKG_NAME="AdGuardHome_linux_armv7.tar.gz"
OVERTURE_FILE_NAME="overture-linux-arm"
OVERTURE_PKG_NAME="$OVERTURE_FILE_NAME.zip"
DNSPROXY_FOLDER_NAME="linux-arm6"
DNSPROXY_PKG_PREFIX="dnsproxy-$DNSPROXY_FOLDER_NAME-"
;;
'arm64')
AGH_PKG_NAME="AdGuardHome_linux_arm64.tar.gz"
OVERTURE_FILE_NAME="overture-linux-arm64"
OVERTURE_PKG_NAME="$OVERTURE_FILE_NAME.zip"
DNSPROXY_FOLDER_NAME="linux-arm64"
DNSPROXY_PKG_PREFIX="dnsproxy-$DNSPROXY_FOLDER_NAME-"
;;
*)
exit 1
;;
esac
get_github_latest_version "AdguardTeam/AdGuardHome"
wget -P $PKG_DIR "https://github.com/AdguardTeam/AdGuardHome/releases/download/$VERSION/$AGH_PKG_NAME"
tar xf $PKG_DIR/$AGH_PKG_NAME -C $PKG_DIR
mv $PKG_DIR/AdGuardHome/AdGuardHome $ASSET_DIR/
get_github_latest_version "shawn1m/overture"
wget -P $PKG_DIR "https://github.com/shawn1m/overture/releases/download/$VERSION/$OVERTURE_PKG_NAME"
unzip $PKG_DIR/$OVERTURE_PKG_NAME -d $PKG_DIR
mv $PKG_DIR/$OVERTURE_FILE_NAME $ASSET_DIR/overture
get_github_latest_version "AdguardTeam/dnsproxy"
DNSPROXY_PKG_NAME="$DNSPROXY_PKG_PREFIX$VERSION.tar.gz"
wget -P $PKG_DIR "https://github.com/AdguardTeam/dnsproxy/releases/download/$VERSION/$DNSPROXY_PKG_NAME"
tar xf $PKG_DIR/$DNSPROXY_PKG_NAME -C $PKG_DIR
mv $PKG_DIR/$DNSPROXY_FOLDER_NAME/dnsproxy $ASSET_DIR
rm -rf $PKG_DIR