mihomo: sync upstream

last commit: 8e3c588d62
This commit is contained in:
gitea-action 2024-11-24 11:30:25 +08:00
parent 1c40da848f
commit 91a859a128
2 changed files with 24 additions and 6 deletions

View File

@ -57,7 +57,7 @@ config mixin 'mixin'
option 'tcp_keep_alive_idle' '600' option 'tcp_keep_alive_idle' '600'
option 'tcp_keep_alive_interval' '15' option 'tcp_keep_alive_interval' '15'
option 'ui_name' 'metacubexd' option 'ui_name' 'metacubexd'
option 'ui_url' 'https://mirror.ghproxy.com/https://github.com/MetaCubeX/metacubexd/archive/refs/heads/gh-pages.zip' option 'ui_url' 'https://ghp.ci/https://github.com/MetaCubeX/metacubexd/archive/refs/heads/gh-pages.zip'
option 'api_port' '9090' option 'api_port' '9090'
option 'api_secret' '' option 'api_secret' ''
option 'selection_cache' '1' option 'selection_cache' '1'
@ -90,10 +90,10 @@ config mixin 'mixin'
option 'dns_nameserver_policy' '0' option 'dns_nameserver_policy' '0'
option 'geoip_format' 'dat' option 'geoip_format' 'dat'
option 'geodata_loader' 'memconservative' option 'geodata_loader' 'memconservative'
option 'geosite_url' 'https://mirror.ghproxy.com/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.dat' option 'geosite_url' 'https://ghp.ci/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.dat'
option 'geoip_mmdb_url' 'https://mirror.ghproxy.com/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip-lite.metadb' option 'geoip_mmdb_url' 'https://ghp.ci/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip-lite.metadb'
option 'geoip_dat_url' 'https://mirror.ghproxy.com/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip-lite.dat' option 'geoip_dat_url' 'https://ghp.ci/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip-lite.dat'
option 'geoip_asn_url' 'https://mirror.ghproxy.com/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/GeoLite2-ASN.mmdb' option 'geoip_asn_url' 'https://ghp.ci/https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/GeoLite2-ASN.mmdb'
option 'geox_auto_update' '0' option 'geox_auto_update' '0'
option 'geox_update_interval' '24' option 'geox_update_interval' '24'
option 'mixin_file_content' '0' option 'mixin_file_content' '0'

View File

@ -623,11 +623,23 @@ update_subscription() {
if [ -z "$subscription_section" ]; then if [ -z "$subscription_section" ]; then
return return
fi fi
# load config
config_load mihomo config_load mihomo
# get subscription config
local subscription_name subscription_url subscription_user_agent local subscription_name subscription_url subscription_user_agent
config_get subscription_name "$subscription_section" "name" config_get subscription_name "$subscription_section" "name"
config_get subscription_url "$subscription_section" "url" config_get subscription_url "$subscription_section" "url"
config_get subscription_user_agent "$subscription_section" "user_agent" config_get subscription_user_agent "$subscription_section" "user_agent"
# reset subscription info
uci_remove "mihomo" "$subscription_section" "expire"
uci_remove "mihomo" "$subscription_section" "upload"
uci_remove "mihomo" "$subscription_section" "download"
uci_remove "mihomo" "$subscription_section" "total"
uci_remove "mihomo" "$subscription_section" "used"
uci_remove "mihomo" "$subscription_section" "avaliable"
uci_remove "mihomo" "$subscription_section" "update"
uci_remove "mihomo" "$subscription_section" "success"
# update subscription
log "Update Subscription: $subscription_name." log "Update Subscription: $subscription_name."
local subscription_header_tmpfile; subscription_header_tmpfile="/tmp/$subscription_section.header" local subscription_header_tmpfile; subscription_header_tmpfile="/tmp/$subscription_section.header"
local subscription_tmpfile; subscription_tmpfile="/tmp/$subscription_section.yaml" local subscription_tmpfile; subscription_tmpfile="/tmp/$subscription_section.yaml"
@ -645,6 +657,7 @@ update_subscription() {
subscription_avaliable=$((subscription_total - subscription_upload - subscription_download)) subscription_avaliable=$((subscription_total - subscription_upload - subscription_download))
fi fi
fi fi
# update subscription info
if [ -n "$subscription_expire" ]; then if [ -n "$subscription_expire" ]; then
uci_set "mihomo" "$subscription_section" "expire" "$(date "+%Y-%m-%d %H:%M:%S" -d @$subscription_expire)" uci_set "mihomo" "$subscription_section" "expire" "$(date "+%Y-%m-%d %H:%M:%S" -d @$subscription_expire)"
fi fi
@ -664,12 +677,17 @@ update_subscription() {
uci_set "mihomo" "$subscription_section" "avaliable" "$(format_filesize $subscription_avaliable)" uci_set "mihomo" "$subscription_section" "avaliable" "$(format_filesize $subscription_avaliable)"
fi fi
uci_set "mihomo" "$subscription_section" "update" "$(date "+%Y-%m-%d %H:%M:%S")" uci_set "mihomo" "$subscription_section" "update" "$(date "+%Y-%m-%d %H:%M:%S")"
uci_commit "mihomo" uci_set "mihomo" "$subscription_section" "success" "1"
# update subscription file
rm -f "$subscription_header_tmpfile" rm -f "$subscription_header_tmpfile"
mv -f "$subscription_tmpfile" "$subscription_file" mv -f "$subscription_tmpfile" "$subscription_file"
else else
log "Subscription update failed." log "Subscription update failed."
# update subscription info
uci_set "mihomo" "$subscription_section" "success" "0"
# remove tmpfile
rm -f "$subscription_header_tmpfile" rm -f "$subscription_header_tmpfile"
rm -f "$subscription_tmpfile" rm -f "$subscription_tmpfile"
fi fi
uci_commit "mihomo"
} }