@@ -52,20 +52,36 @@ install_packages() {
5252
5353install_packages
5454# Download and install Xray if not already installed
55- if ! [ -x " $PREFIX /bin/xray" ]; then
56- wget https://github.com/XTLS/Xray-core/releases/download/v25.6.8/Xray-android-arm64-v8a.zip
57- unzip Xray-android-arm64-v8a.zip
58- mv xray $PREFIX /bin
59- rm README.md geoip.dat geosite.dat LICENSE Xray-android-arm64-v8a.zip
55+ latest_version=$( curl -s https://api.github.com/repos/XTLS/Xray-core/releases/latest | jq -r .tag_name | sed ' s/^v//' )
56+
57+ installed_version=" "
58+ if [ -x " $PREFIX /bin/xray" ]; then
59+ installed_version=$( $PREFIX /bin/xray -version | grep -oE ' Xray [^ ]+' | awk ' {print $2}' )
60+ fi
61+
62+ if [ " $installed_version " != " $latest_version " ]; then
63+ echo -e " ${yellow} Installing or upgrading Xray to version $latest_version ...${rest} "
64+
65+ rm -f $PREFIX /bin/xray geoip.dat geosite.dat
66+ file_name=" Xray-android-arm64-v8a.zip"
67+ url=" https://github.com/XTLS/Xray-core/releases/download/v$latest_version /$file_name "
68+
69+ wget " $url " -O " $file_name " || { echo -e " ${red} Download failed.${rest} " ; exit 1; }
70+ unzip -o " $file_name " || { echo -e " ${red} Unzip failed.${rest} " ; exit 1; }
71+
72+ mv xray " $PREFIX /bin/"
73+ chmod +x " $PREFIX /bin/xray"
74+
75+ rm -f README.md LICENSE " $file_name "
6076
6177 if [ -x " $PREFIX /bin/xray" ]; then
62- echo -e " ${green} Xray installed successfully.${rest} "
78+ echo -e " ${green} Xray $latest_version installed successfully.${rest} "
6379 else
6480 echo -e " ${red} Xray installation failed.${rest} "
6581 exit 1
6682 fi
6783else
68- echo -e " ${yellow } Xray is already installed .${rest} "
84+ echo -e " ${green } Xray is already up to date (version $installed_version ) .${rest} "
6985fi
7086
7187# Fragment Scanner
0 commit comments