Update t.sh

dependabot/github_actions/actions/checkout-3.1.0
fscarmen 4 years ago committed by GitHub
parent 0c662b0bbf
commit b7825e0150
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 36
      old/t.sh

@ -28,8 +28,8 @@ T[E9]="Please customize the WARP+ device name (Default is [WARP] if left blank):
T[C9]="请自定义 WARP+ 设备名 (如果不输入,默认为 [WARP]):"
T[E10]="Step 1/3: Install brew and wireguard-tools"
T[C10]="进度 1/3:安装 brew 和 wireguard-tools"
T[E11]="Step 2/3: Install WGCF and wireguard-go"
T[C11]="进度 2/3:安装 WGCF 和 wireguard-go"
T[E11]="Step 2/3: Install WGCF and BoringTun"
T[C11]="进度 2/3:安装 WGCF 和 BoringTun"
T[E12]="Step 3/3: Running WARP"
T[C12]="进度 3/3:运行 WARP"
T[E13]="Update WARP+ account..."
@ -141,6 +141,11 @@ check_operating_system(){
ARCHITECTURE=$(uname -m | sed s/x86_64/amd64/)
}
# 定义 BoringTun 的启动和关闭
up(){ sudo WG_QUICK_USERSPACE_IMPLEMENTATION=boringtun-cli WG_SUDO=1 wg-quick up wgcf >/dev/null 2>&1; }
down(){ sudo WG_QUICK_USERSPACE_IMPLEMENTATION=boringtun-cli WG_SUDO=1 wg-quick down wgcf >/dev/null 2>&1; }
# 检测 IPv4 IPv6 信息,WARP Ineterface 开启,普通还是 Plus账户 和 IP 信息
ip4_info(){
unset IP4 LAN4 COUNTRY4 ASNORG4 TRACE4 PLUS4 WARPSTATUS4
@ -174,20 +179,19 @@ net(){
[[ ! $(type -P wg-quick) || ! -e /etc/wireguard/wgcf.conf ]] && red " ${T[${L}23]} " && exit 1
i=1;j=5
yellow " $(eval echo "${T[${L}24]}")\n $(eval echo "${T[${L}25]}") "
sudo wg-quick up wgcf >/dev/null 2>&1
up
ip4_info; ip6_info
until [[ $TRACE4$TRACE6 =~ on|plus ]]
do (( i++ )) || true
yellow " $(eval echo "${T[${L}25]}") "
sudo wg-quick down wgcf >/dev/null 2>&1
sudo wg-quick up wgcf >/dev/null 2>&1
down; up
ip4_info; ip6_info
if [[ $i = "$j" ]]; then
if [[ $LICENSETYPE = 2 ]]; then
unset LICENSETYPE && i=0 && green " ${T[${L}129]} " &&
cp -f /etc/wireguard/wgcf-profile.conf /etc/wireguard/wgcf.conf
else
wg-quick down wgcf >/dev/null 2>&1
down
red " $(eval echo "${T[${L}13]}") " && exit 1
fi
fi
@ -201,7 +205,7 @@ net(){
# WARP 开关,先检查是否已安装,再根据当前状态转向相反状态
onoff(){
! type -p wg-quick >/dev/null 2>&1 && red " ${T[${L}21]} " && exit 1
[[ -n $(sudo wg 2>/dev/null) ]] && (wg-quick down wgcf >/dev/null 2>&1; green " ${T[${L}22]} ") || net
[[ -n $(sudo wg 2>/dev/null) ]] && (down; green " ${T[${L}22]} ") || net
}
# 同步脚本至最新版本
@ -216,9 +220,9 @@ ver(){
uninstall(){
unset IP4 IP6 WAN4 WAN6 COUNTRY4 COUNTRY6 ASNORG4 ASNORG6
# 卸载 WGCF
wg-quick down wgcf >/dev/null 2>&1
down
type -p wg >/dev/null 2>&1 && brew uninstall wireguard-tools
sudo rm -rf /usr/local/bin/wgcf /etc/wireguard /usr/local/bin/wireguard-go
sudo rm -rf /usr/local/bin/wgcf /etc/wireguard /usr/local/bin/boringtun
# 显示卸载结果
ip4_info; [[ $L = C && -n "$COUNTRY4" ]] && COUNTRY4=$(translate "$COUNTRY4")
ip6_info; [[ $L = C && -n "$COUNTRY6" ]] && COUNTRY6=$(translate "$COUNTRY6")
@ -228,7 +232,7 @@ uninstall(){
install(){
# 进入工作目录,先删除之前安装,可能导致失败的文件
cd /usr/local/bin || exit
sudo rm -rf wgcf wireguard-go wgcf-account.toml wgcf-profile.conf /etc/wireguard
sudo rm -rf wgcf boringtun wgcf-account.toml wgcf-profile.conf /etc/wireguard
sudo mkdir -p /etc/wireguard/ >/dev/null 2>&1
# 询问是否有 WARP+ 或 Teams 账户
@ -255,12 +259,11 @@ install(){
latest=${latest:-'2.2.13'}
[[ ! -e /usr/local/bin/wgcf ]] && curl -o /usr/local/bin/wgcf https://raw.githubusercontents.com/fscarmen/warp/main/wgcf/wgcf_"$latest"_darwin_"$ARCHITECTURE"
# 安装 wireguard-go
[[ ! -e /usr/local/bin/wireguard-go ]] && curl -o /usr/local/bin/wireguard-go_darwin_"$ARCHITECTURE".tar.gz https://raw.githubusercontents.com/fscarmen/warp/main/wireguard-go/wireguard-go_darwin_"$ARCHITECTURE".tar.gz &&
tar xzf /usr/local/bin/wireguard-go_darwin_"$ARCHITECTURE".tar.gz -C /usr/local/bin/ && rm -f /usr/local/bin/wireguard-go_darwin_"$ARCHITECTURE".tar.gz
# 安装 BoringTun
[[ ! -e /usr/local/bin/boringtun ]] && curl -o /usr/local/bin/boringtun https://raw.githubusercontents.com/fscarmen/test/main/boringtun
# 添加执行权限
sudo chmod +x /usr/local/bin/wireguard-go /usr/local/bin/wgcf
sudo chmod +x /usr/local/bin/boringtun /usr/local/bin/wgcf
# 注册 WARP 账户 (将生成 wgcf-account.toml 文件保存账户信息,为避免文件已存在导致出错,先尝试删掉原文件)
rm -f wgcf-account.toml
@ -367,15 +370,14 @@ update(){
wgcf update --name "$NAME" | sudo tee /etc/wireguard/info.log >/dev/null 2>&1 &&
(wgcf generate >/dev/null 2>&1
sudo sed -i '' "2s#.*#$(sed -ne 2p wgcf-profile.conf)#;3s#.*#$(sed -ne 3p wgcf-profile.conf)#;4s#.*#$(sed -ne 4p wgcf-profile.conf)#" wgcf.conf
wg-quick down wgcf >/dev/null 2>&1
net
down; net
[[ $(curl -ks4 https://www.cloudflare.com/cdn-cgi/trace | grep warp | sed "s/warp=//g") = plus || $(curl -ks6 https://www.cloudflare.com/cdn-cgi/trace | grep warp | sed "s/warp=//g") = plus ]] &&
green " ${T[${L}35]}\n ${T[${L}36]}$(grep 'Device name' /etc/wireguard/info.log | awk '{ print $NF }')\n ${T[${L}37]}$(grep Quota /etc/wireguard/info.log | awk '{ print $(NF-1), $NF }')" ) || red " ${T[${L}38]} ";;
2 ) input_url
[[ $CONFIRM = [Yy] ]] && (echo "$TEAMS" | sudo tee /etc/wireguard/info.log >/dev/null 2>&1
sudo sed -i '' "s#PrivateKey.*#PrivateKey = $PRIVATEKEY#g;s#Address.*32#Address = ${ADDRESS4}/32#g;s#Address.*128#Address = ${ADDRESS6}/128#g;s#PublicKey.*#PublicKey = $PUBLICKEY#g" /etc/wireguard/wgcf.conf
wg-quick down wgcf >/dev/null 2>&1; net
down; net
[[ $(curl -ks4 https://www.cloudflare.com/cdn-cgi/trace | grep warp | sed "s/warp=//g") = plus || $(curl -ks6 https://www.cloudflare.com/cdn-cgi/trace | grep warp | sed "s/warp=//g") = plus ]] && green " ${T[${L}39]} ");;
* ) red " ${T[${L}40]} [1-2] "; sleep 1; update

Loading…
Cancel
Save