diff options
| author | fgsfds <4870330+fgsfds@users.noreply.github.com> | 2025-11-07 21:26:43 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-07 21:26:43 +0300 |
| commit | cf38226b5d9f2ae0328340c309f1ad8a60cdf6c1 (patch) | |
| tree | 37d510295a9f45dff42964c1029928c4fdf86726 | |
| parent | 575ee854c8c2421ac9e4df74da53b44753995a50 (diff) | |
Add update-all-geofiles key to x-ui.sh (#3586)
* added update-all-geofiles key to x-ui.sh that updated all geofiles
* fix
* text fixes
* typo fix
* cleanup
| -rw-r--r-- | install.sh | 2 | ||||
| -rwxr-xr-x | update.sh | 2 | ||||
| -rw-r--r-- | x-ui.sh | 94 |
3 files changed, 54 insertions, 44 deletions
@@ -248,7 +248,7 @@ install_x-ui() { │ ${blue}x-ui log${plain} - Check logs │ │ ${blue}x-ui banlog${plain} - Check Fail2ban ban logs │ │ ${blue}x-ui update${plain} - Update │ -│ ${blue}x-ui legacy${plain} - legacy version │ +│ ${blue}x-ui legacy${plain} - Legacy version │ │ ${blue}x-ui install${plain} - Install │ │ ${blue}x-ui uninstall${plain} - Uninstall │ └───────────────────────────────────────────────────────┘" @@ -247,7 +247,7 @@ update_x-ui() { │ ${blue}x-ui log${plain} - Check logs │ │ ${blue}x-ui banlog${plain} - Check Fail2ban ban logs │ │ ${blue}x-ui update${plain} - Update │ -│ ${blue}x-ui legacy${plain} - legacy version │ +│ ${blue}x-ui legacy${plain} - Legacy version │ │ ${blue}x-ui install${plain} - Install │ │ ${blue}x-ui uninstall${plain} - Uninstall │ └───────────────────────────────────────────────────────┘" @@ -863,10 +863,32 @@ delete_ports() { fi } +update_all_geofiles() { + update_main_geofiles + update_ir_geofiles + update_ru_geofiles +} + +update_main_geofiles() { + wget -O geoip.dat https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat + wget -O geosite.dat https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat +} + +update_ir_geofiles() { + wget -O geoip_IR.dat https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat + wget -O geosite_IR.dat https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat +} + +update_ru_geofiles() { + wget -O geoip_RU.dat https://github.com/runetfreedom/russia-v2ray-rules-dat/releases/latest/download/geoip.dat + wget -O geosite_RU.dat https://github.com/runetfreedom/russia-v2ray-rules-dat/releases/latest/download/geosite.dat +} + update_geo() { echo -e "${green}\t1.${plain} Loyalsoldier (geoip.dat, geosite.dat)" echo -e "${green}\t2.${plain} chocolate4u (geoip_IR.dat, geosite_IR.dat)" echo -e "${green}\t3.${plain} runetfreedom (geoip_RU.dat, geosite_RU.dat)" + echo -e "${green}\t4.${plain} All" echo -e "${green}\t0.${plain} Back to Main Menu" read -rp "Choose an option: " choice @@ -877,41 +899,25 @@ update_geo() { show_menu ;; 1) - if [[ $release == "alpine" ]]; then - rc-service x-ui stop - else - systemctl stop x-ui - fi - rm -f geoip.dat geosite.dat - wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat - wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat + update_main_geofiles echo -e "${green}Loyalsoldier datasets have been updated successfully!${plain}" restart ;; 2) - if [[ $release == "alpine" ]]; then - rc-service x-ui stop - else - systemctl stop x-ui - fi - rm -f geoip_IR.dat geosite_IR.dat - wget -O geoip_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat - wget -O geosite_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat + update_ir_geofiles echo -e "${green}chocolate4u datasets have been updated successfully!${plain}" restart ;; 3) - if [[ $release == "alpine" ]]; then - rc-service x-ui stop - else - systemctl stop x-ui - fi - rm -f geoip_RU.dat geosite_RU.dat - wget -O geoip_RU.dat -N https://github.com/runetfreedom/russia-v2ray-rules-dat/releases/latest/download/geoip.dat - wget -O geosite_RU.dat -N https://github.com/runetfreedom/russia-v2ray-rules-dat/releases/latest/download/geosite.dat + update_ru_geofiles echo -e "${green}runetfreedom datasets have been updated successfully!${plain}" restart ;; + 4) + update_all_geofiles + echo -e "${green}All geo files have been updated successfully!${plain}" + restart + ;; *) echo -e "${red}Invalid option. Please select a valid number.${plain}\n" update_geo @@ -1869,24 +1875,25 @@ SSH_port_forwarding() { } show_usage() { - echo -e "┌───────────────────────────────────────────────────────┐ -│ ${blue}x-ui control menu usages (subcommands):${plain} │ -│ │ -│ ${blue}x-ui${plain} - Admin Management Script │ -│ ${blue}x-ui start${plain} - Start │ -│ ${blue}x-ui stop${plain} - Stop │ -│ ${blue}x-ui restart${plain} - Restart │ -│ ${blue}x-ui status${plain} - Current Status │ -│ ${blue}x-ui settings${plain} - Current Settings │ -│ ${blue}x-ui enable${plain} - Enable Autostart on OS Startup │ -│ ${blue}x-ui disable${plain} - Disable Autostart on OS Startup │ -│ ${blue}x-ui log${plain} - Check logs │ -│ ${blue}x-ui banlog${plain} - Check Fail2ban ban logs │ -│ ${blue}x-ui update${plain} - Update │ -│ ${blue}x-ui legacy${plain} - legacy version │ -│ ${blue}x-ui install${plain} - Install │ -│ ${blue}x-ui uninstall${plain} - Uninstall │ -└───────────────────────────────────────────────────────┘" + echo -e "┌────────────────────────────────────────────────────────────────┐ +│ ${blue}x-ui control menu usages (subcommands):${plain} │ +│ │ +│ ${blue}x-ui${plain} - Admin Management Script │ +│ ${blue}x-ui start${plain} - Start │ +│ ${blue}x-ui stop${plain} - Stop │ +│ ${blue}x-ui restart${plain} - Restart │ +│ ${blue}x-ui status${plain} - Current Status │ +│ ${blue}x-ui settings${plain} - Current Settings │ +│ ${blue}x-ui enable${plain} - Enable Autostart on OS Startup │ +│ ${blue}x-ui disable${plain} - Disable Autostart on OS Startup │ +│ ${blue}x-ui log${plain} - Check logs │ +│ ${blue}x-ui banlog${plain} - Check Fail2ban ban logs │ +│ ${blue}x-ui update${plain} - Update │ +│ ${blue}x-ui update-all-geofiles${plain} - Update all geo files │ +│ ${blue}x-ui legacy${plain} - Legacy version │ +│ ${blue}x-ui install${plain} - Install │ +│ ${blue}x-ui uninstall${plain} - Uninstall │ +└────────────────────────────────────────────────────────────────┘" } show_menu() { @@ -2056,6 +2063,9 @@ if [[ $# > 0 ]]; then "uninstall") check_install 0 && uninstall 0 ;; + "update-all-geofiles") + check_install 0 && update_all_geofiles 0 && restart 0 + ;; *) show_usage ;; esac else |
