luci-app-clash: sync with upstream source
This commit is contained in:
parent
4b78488d23
commit
2425197229
@ -1,7 +1,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-clash
|
||||
PKG_VERSION:=1.4.9
|
||||
PKG_VERSION:=1.5.0
|
||||
PKG_MAINTAINER:=frainzy1477
|
||||
|
||||
|
||||
|
||||
@ -576,8 +576,10 @@ stop(){
|
||||
tun_mode=$(uci get clash.config.tun_mode 2>/dev/null)
|
||||
ipv6=$(uci get clash.config.ipv6 2>/dev/null)
|
||||
core=$(uci get clash.config.core 2>/dev/null)
|
||||
|
||||
|
||||
LIST="/usr/share/clash/server.list"
|
||||
|
||||
sed -i '/#START/,/#END/d' "$LIST" 2>/dev/null
|
||||
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo "Stopping Client..." >$REAL_LOG
|
||||
elif [ "${lang}" == "zh_cn" ];then
|
||||
@ -656,9 +658,6 @@ stop(){
|
||||
|
||||
rm -rf /etc/clash/*.yaml /etc/clash/*.yml >/dev/null 2>&1
|
||||
|
||||
mv /usr/share/clash/list.bak /usr/share/clash/server.list >/dev/null 2>&1
|
||||
|
||||
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo " $(date "+%Y-%m-%d %H:%M:%S") - CLIENT IS DISABLED " >> /tmp/clash.txt
|
||||
echo "Client is Disabled " >$REAL_LOG
|
||||
|
||||
@ -115,7 +115,7 @@ update(){
|
||||
elif [ $CORETYPE -eq 2 ];then
|
||||
wget --no-check-certificate https://github.com/frainzy1477/clashrdev/releases/download/v"$CLASHRVER"/clashr-"$MODELTYPE"-v"$CLASHRVER".gz -O 2>&1 >1 /tmp/clash.gz
|
||||
elif [ $CORETYPE -eq 3 ];then
|
||||
wget --no-check-certificate https://github.com/frainzy1477/clashtun/releases/download/v"$CLASHTUN"/clash-"$MODELTYPE".tar.gz -O 2>&1 >1 /tmp/clash.gz
|
||||
wget --no-check-certificate https://github.com/frainzy1477/clashtun/releases/download/v"$CLASHTUN"/clash-"$MODELTYPE".gz -O 2>&1 >1 /tmp/clash.gz
|
||||
fi
|
||||
|
||||
if [ "$?" -eq "0" ] && [ "$(ls -l /tmp/clash.gz |awk '{print int($5)}')" -ne 0 ]; then
|
||||
|
||||
@ -50,7 +50,7 @@ config_foreach yml_game_rule_get "game"
|
||||
if [ -f $GAME_RULE_FILE ];then
|
||||
|
||||
sed -i -e "\$a#*******GAME-RULE-END**********#" $GAME_RULE_FILE 2>/dev/null
|
||||
sed -i '#*******GAME-RULE-START**********#/,/#*******GAME-RULE-END**********#/d' "$CLASH_CONFIG" 2>/dev/null
|
||||
sed -i '/#*******GAME-RULE-START**********#/,/#*******GAME-RULE-END**********#/d' "$CLASH_CONFIG" 2>/dev/null
|
||||
|
||||
if [ ! -z "$(grep "^ \{0,\}- GEOIP" "/etc/clash/config.yaml")" ]; then
|
||||
sed -i '1,/^ \{0,\}- GEOIP,/{/^ \{0,\}- GEOIP,/s/^ \{0,\}- GEOIP,/#*******GAME-RULE-START**********#\n&/}' "$CLASH_CONFIG" 2>/dev/null
|
||||
@ -62,8 +62,9 @@ fi
|
||||
|
||||
sed -i '/GAME-RULE-START/r/tmp/yaml_game_rule_group.yaml' "$CLASH_CONFIG" 2>/dev/null
|
||||
fi
|
||||
|
||||
else
|
||||
sed -i '#*******GAME-RULE-START**********#/,/#*******GAME-RULE-END**********#/d' "$CLASH_CONFIG" 2>/dev/null
|
||||
sed -i '/#*******GAME-RULE-START**********#/,/#*******GAME-RULE-END**********#/d' "$CLASH_CONFIG" 2>/dev/null
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@ -2,41 +2,46 @@
|
||||
. /lib/functions.sh
|
||||
|
||||
dnsforwader=$(uci get clash.config.dnsforwader 2>/dev/null)
|
||||
cp /usr/share/clash/server.list /usr/share/clash/list.bak
|
||||
add_address(){
|
||||
servers_get()
|
||||
{
|
||||
local section="$1"
|
||||
config_get "server" "$section" "server" ""
|
||||
echo "$server" >>/tmp/server.conf
|
||||
}
|
||||
config_load clash
|
||||
config_foreach servers_get "servers"
|
||||
enable_list=$(uci get clash.config.cus_list 2>/dev/null)
|
||||
if [ $enable_list -eq 1 ];then
|
||||
|
||||
count=$(grep -c '' /tmp/server.conf)
|
||||
count_num=1
|
||||
while [[ $count_num -le $count ]]
|
||||
do
|
||||
line=$(sed -n "$count_num"p /tmp/server.conf)
|
||||
check_addr=$(grep -F "$line" "/usr/share/clash/server.list")
|
||||
if [ -z $check_addr ];then
|
||||
echo $line >>/usr/share/clashbackup/address.list
|
||||
fi
|
||||
count_num=$(( $count_num + 1))
|
||||
done
|
||||
cat /usr/share/clashbackup/address.list /usr/share/clash/server.list > /usr/share/clash/me.list
|
||||
rm -rf /usr/share/clash/server.list
|
||||
mv /usr/share/clash/me.list /usr/share/clash/server.list
|
||||
chmod 755 /usr/share/clash/server.list
|
||||
rm -rf /tmp/server.conf /usr/share/clashbackup/address.list >/dev/null 2>&1
|
||||
add_address(){
|
||||
servers_get()
|
||||
{
|
||||
local section="$1"
|
||||
config_get "server" "$section" "server" ""
|
||||
echo "$server" >>/tmp/server.conf
|
||||
}
|
||||
config_load clash
|
||||
config_foreach servers_get "servers"
|
||||
|
||||
count=$(grep -c '' /tmp/server.conf)
|
||||
count_num=1
|
||||
while [[ $count_num -le $count ]]
|
||||
do
|
||||
line=$(sed -n "$count_num"p /tmp/server.conf)
|
||||
check_addr=$(grep -F "$line" "/usr/share/clash/server.list")
|
||||
if [ -z $check_addr ];then
|
||||
echo $line >>/usr/share/clashbackup/address.list
|
||||
fi
|
||||
count_num=$(( $count_num + 1))
|
||||
done
|
||||
|
||||
sed -i "1i\#START" /usr/share/clashbackup/address.list 2>/dev/null
|
||||
sed -i -e "\$a#END" /usr/share/clashbackup/address.list 2>/dev/null
|
||||
|
||||
cat /usr/share/clashbackup/address.list /usr/share/clash/server.list > /usr/share/clash/me.list
|
||||
rm -rf /usr/share/clash/server.list
|
||||
mv /usr/share/clash/me.list /usr/share/clash/server.list
|
||||
chmod 755 /usr/share/clash/server.list
|
||||
rm -rf /tmp/server.conf /usr/share/clashbackup/address.list >/dev/null 2>&1
|
||||
}
|
||||
|
||||
|
||||
if [ "${dnsforwader}" -eq 1 ];then
|
||||
add_address >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
|
||||
enable_list=$(uci get clash.config.cus_list 2>/dev/null)
|
||||
if [ $enable_list -eq 1 ];then
|
||||
|
||||
if [ -d /tmp/dnsmasq.clash ];then
|
||||
rm -rf /tmp/dnsmasq.clash
|
||||
@ -60,3 +65,4 @@ awk '!/^$/&&!/^#/{printf("server=/%s/'"$cutom_dns"'\n",$0)}' /usr/share/clash/se
|
||||
ln -s /tmp/dnsmasq.clash/custom_list.conf /tmp/dnsmasq.d/custom_list.conf
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@ -1 +1 @@
|
||||
1.4.9
|
||||
1.5.0
|
||||
|
||||
Loading…
Reference in New Issue
Block a user