luci-app-clash: bump to 1.5.8
This commit is contained in:
parent
c21a0f61d7
commit
070ab35840
@ -34,7 +34,7 @@ add_cron(){
|
||||
config_type=$(uci get clash.config.config_type 2>/dev/null)
|
||||
#===========================================================================================================================
|
||||
sed -i '/clash.txt/d' $CRON_FILE
|
||||
|
||||
|
||||
clear=$(uci get clash.config.auto_clear_log 2>/dev/null)
|
||||
if [ "${clear}" -eq 1 ]; then
|
||||
[ -z "$(grep -w "/usr/share/clash/clash.txt" $CRON_FILE)" ] && echo "0 */$(uci get clash.config.clear_time 2>/dev/null) * * * echo '' >/usr/share/clash/clash.txt" >> $CRON_FILE
|
||||
@ -306,9 +306,12 @@ custom_list() {
|
||||
sh /usr/share/clash/list.sh >/dev/null 2>&1
|
||||
}
|
||||
|
||||
watchdog() {
|
||||
nohup /usr/share/clash/clash-watchdog.sh >/dev/null 2>&1
|
||||
restore() {
|
||||
sh /usr/share/clash/restore.sh >/dev/null 2>&1
|
||||
}
|
||||
|
||||
|
||||
|
||||
start(){
|
||||
#===========================================================================================================================
|
||||
lang=$(uci get luci.main.lang 2>/dev/null)
|
||||
@ -424,7 +427,7 @@ if [ -f $CONFIG_YAML ] && [ "$(ls -l $CONFIG_YAML|awk '{print int($5/1024)}')"
|
||||
|
||||
sleep 1
|
||||
|
||||
ip_rules >/dev/null 2>&1
|
||||
ip_rules >/dev/null 2>&1
|
||||
|
||||
if [ "${core}" -eq 1 ];then
|
||||
nohup $CLASH -d "$CLASH_CONFIG" > /usr/share/clash/clash.txt 2>&1 &
|
||||
@ -463,7 +466,7 @@ if [ -f $CONFIG_YAML ] && [ "$(ls -l $CONFIG_YAML|awk '{print int($5/1024)}')"
|
||||
fi
|
||||
ln -s /usr/share/clash/yacd /www/luci-static/yacd 2>/dev/null
|
||||
sleep 2
|
||||
|
||||
restore >/dev/null 2>&1
|
||||
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo "Setting Cron Job" >$REAL_LOG
|
||||
@ -471,7 +474,7 @@ if [ -f $CONFIG_YAML ] && [ "$(ls -l $CONFIG_YAML|awk '{print int($5/1024)}')"
|
||||
elif [ "${lang}" == "zh_cn" ];then
|
||||
echo "设置Cron" >$REAL_LOG
|
||||
add_cron
|
||||
|
||||
|
||||
fi
|
||||
|
||||
|
||||
@ -483,13 +486,13 @@ if [ -f $CONFIG_YAML ] && [ "$(ls -l $CONFIG_YAML|awk '{print int($5/1024)}')"
|
||||
echo "设置 Clash iptables" >$REAL_LOG
|
||||
fi
|
||||
|
||||
if [ "$(uci get firewall.@defaults[0].forward)" != "ACCEPT" ]; then
|
||||
if [ "$(uci get firewall.@defaults[0].forward)" != "ACCEPT" ]; then
|
||||
uci set firewall.@defaults[0].forward=ACCEPT >/dev/null 2>&1
|
||||
uci commit firewall >/dev/null 2>&1
|
||||
/etc/init.d/firewall restart >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
||||
sleep 2
|
||||
sleep 2
|
||||
rules >/dev/null 2>&1
|
||||
|
||||
custom_list >/dev/null 2>&1
|
||||
@ -517,7 +520,8 @@ if [ -f $CONFIG_YAML ] && [ "$(ls -l $CONFIG_YAML|awk '{print int($5/1024)}')"
|
||||
sleep 2
|
||||
echo "Clash for OpenWRT" >$REAL_LOG
|
||||
fi
|
||||
watchdog >/dev/null 2>&1
|
||||
|
||||
nohup /usr/share/clash/kill.sh >/dev/null 2>&1
|
||||
else
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo " $(date "+%Y-%m-%d %H:%M:%S") - problem with config.yaml, config.yaml is either empty or not found " >> /usr/share/clash/clash.txt
|
||||
@ -636,21 +640,19 @@ stop(){
|
||||
|
||||
|
||||
fake=$(iptables -nvL OUTPUT -t nat |sed 1,2d |sed -n '/198.18.0.0\/16/=' |sort -r)
|
||||
for fake in $fake; do
|
||||
iptables -t nat -D OUTPUT $fake >/dev/null 2>&1
|
||||
done
|
||||
for fake in $fake; do
|
||||
iptables -t nat -D OUTPUT $fake >/dev/null 2>&1
|
||||
done
|
||||
|
||||
fake2=$(iptables -nvL OUTPUT -t nat |sed 1,2d |sed -n '/198.18.0.1\/16/=' |sort -r)
|
||||
for fake2 in $fake2; do
|
||||
iptables -t nat -D OUTPUT $fake2 >/dev/null 2>&1
|
||||
done
|
||||
for fake2 in $fake2; do
|
||||
iptables -t nat -D OUTPUT $fake2 >/dev/null 2>&1
|
||||
done
|
||||
|
||||
remove_mark >/dev/null 2>&1
|
||||
|
||||
bash /usr/share/clash/backup.sh >/dev/null 2>&1
|
||||
|
||||
kill -9 $(ps | grep clash-watchdog.sh | grep -v grep | awk '{print $1}') >/dev/null 2>&1
|
||||
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo "Clash Core Stoped Successfully " >$REAL_LOG
|
||||
elif [ "${lang}" == "zh_cn" ];then
|
||||
@ -660,7 +662,7 @@ stop(){
|
||||
kill -9 `pidof clash|sed "s/$//g"` 2>/dev/null
|
||||
rm -rf /www/luci-static/yacd 2>/dev/null
|
||||
sleep 1
|
||||
|
||||
|
||||
if [ ! -z "${delandns}" ];then
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo "Removing Custom lan dns server " >$REAL_LOG
|
||||
@ -677,7 +679,7 @@ stop(){
|
||||
fi
|
||||
|
||||
del_cron >/dev/null 2>&1
|
||||
sleep 1
|
||||
sleep 1
|
||||
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo "Restarting Dnsmasq " >$REAL_LOG
|
||||
@ -686,14 +688,12 @@ stop(){
|
||||
fi
|
||||
|
||||
revert_dns >/dev/null 2>&1
|
||||
sleep 1
|
||||
sleep 1
|
||||
|
||||
echo "" >/usr/share/clash/clash.txt >/dev/null 2>&1
|
||||
|
||||
echo "0" > /usr/share/clash/logstatus_check >/dev/null 2>&1
|
||||
|
||||
|
||||
|
||||
sh /usr/share/clash/kill.sh
|
||||
if [ "${lang}" == "en" ] || [ $lang == "auto" ];then
|
||||
echo " $(date "+%Y-%m-%d %H:%M:%S") - CLIENT IS DISABLED " >> /usr/share/clash/clash.txt
|
||||
echo "Client is Disabled " >$REAL_LOG
|
||||
@ -704,7 +704,9 @@ stop(){
|
||||
echo "客户端被禁用 " >$REAL_LOG
|
||||
sleep 2
|
||||
echo "Clash for OpenWRT" >$REAL_LOG
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if pidof clash >/dev/null; then
|
||||
kill $(pidof clash) >/dev/null 2>&1 || kill -9 $(ps | grep clash | grep -v grep | awk '{print $1}') >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
33
package/ntlf9t/luci-app-clash/root/usr/share/clash/kill.sh
Executable file
33
package/ntlf9t/luci-app-clash/root/usr/share/clash/kill.sh
Executable file
@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
|
||||
enable=$(uci get clash.config.enable 2>/dev/null)
|
||||
if [ "${enable}" -eq 1 ];then
|
||||
|
||||
while [ $enable -eq 1 ];
|
||||
do
|
||||
if ! pidof clash>/dev/null; then
|
||||
/etc/init.d/clash restart 2>&1 &
|
||||
fi
|
||||
|
||||
sleep 60
|
||||
continue
|
||||
done
|
||||
|
||||
elif [ "${enable}" -eq 0 ];then
|
||||
|
||||
if [ -f /tmp/watchlist ];then
|
||||
rm -rf /tmp/watchlist
|
||||
fi
|
||||
line=$(ps | grep -n '/usr/share/clash/kill.sh'|awk -F ':' '{print $2}' |awk -F ' ' '{print $1}'>/tmp/watchlist)
|
||||
line_no=$(grep -n '' /tmp/watchlist|awk -F ':' '{print $1}')
|
||||
num=$(grep -c '' /tmp/watchlist| awk '{print $1}')
|
||||
nums=1
|
||||
while [[ $nums -le $num ]]
|
||||
do
|
||||
kill -9 $(sed -n "$nums"p /tmp/watchlist| awk '{print $1}') >/dev/null 2>&1
|
||||
nums=$(( $nums + 1))
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@ -1,8 +1,5 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
|
||||
sleeptime=150
|
||||
enable=$(uci get clash.config.enable 2>/dev/null)
|
||||
|
||||
if [ -f /usr/share/clashbackup/history ];then
|
||||
|
||||
HISTORY_PATH="/usr/share/clashbackup/history"
|
||||
@ -22,15 +19,3 @@ do
|
||||
done >/dev/null 2>&1
|
||||
|
||||
fi
|
||||
|
||||
while [ $enable -eq 1 ];
|
||||
do
|
||||
if ! pidof clash>/dev/null; then
|
||||
/etc/init.d/clash restart 2>&1 &
|
||||
fi
|
||||
|
||||
sleep ${sleeptime}
|
||||
continue
|
||||
done
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user