From 60501d4831b8039c8d812c60b3e0bf44aa1a5dab Mon Sep 17 00:00:00 2001 From: MengMengCode <227010654+MengMengCode@users.noreply.github.com> Date: Wed, 19 Aug 2026 21:42:07 +0800 Subject: [PATCH] FIX #51 FIX #60 --- README.md | 8 ++++++++ docs/README.zh-CN.md | 7 +++++++ scripts/install.sh | 10 +++++----- web/src/lib/i18n-en.ts | 2 ++ 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5147fd3..f1573bc 100644 --- a/README.md +++ b/README.md @@ -96,6 +96,14 @@ to install matching `ip-full`, `kmod-ipsec`, `kmod-ipsec4/6`, If matching kernel modules are unavailable, use a firmware that includes them; never force-install kmods built for a different kernel. +If your kernel cannot provide XFRM/IPsec and you only need non-VoWiFi features +such as cellular SMS or data, install with `--skip-vowifi-check`: + +```bash +curl -fsSL https://raw.githubusercontent.com/MengMengCode/VoCat/master/scripts/install.sh -o install.sh +sudo bash install.sh --skip-vowifi-check +``` + The installer: - detects `amd64`, `386`, `arm64`, `aarch64`, or `armv7`; diff --git a/docs/README.zh-CN.md b/docs/README.zh-CN.md index dc32caf..37f175a 100644 --- a/docs/README.zh-CN.md +++ b/docs/README.zh-CN.md @@ -92,6 +92,13 @@ sudo bash install.sh 0.0.2 VoWiFi IMS 必须使用 Linux XFRM/IPsec。OpenWrt/Kwrt 上安装脚本会从当前固件自己的软件源尝试安装严格匹配的 `ip-full`、`kmod-ipsec`、`kmod-ipsec4/6`、`kmod-crypto-authenc`、AES-CBC 和 SHA1 组件。若软件源没有与当前内核匹配的模块,必须更换包含这些组件的固件,禁止强装其他内核版本的 kmod。 +如果你的内核确实无法提供 XFRM/IPsec,且仅需要非 VoWiFi 功能(蜂窝短信、数据等),可在安装时加上 `--skip-vowifi-check`: + +```bash +curl -fsSL https://raw.githubusercontent.com/MengMengCode/VoCat/master/scripts/install.sh -o install.sh +sudo bash install.sh --skip-vowifi-check +``` + 安装程序会: - 检测 `amd64`、`386`、`arm64` 或 `armv7` 架构; diff --git a/scripts/install.sh b/scripts/install.sh index 407b1f7..f21645e 100644 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -3,9 +3,9 @@ # vocat install / update script for systemd and OpenWrt/procd deployments. # # Usage: -# bash install.sh [version] # run directly when already root -# sudo bash install.sh [version] # run through sudo as a normal user -# bash install.sh --check-env # check VoWiFi host prerequisites +# bash install.sh [--check-env] [--skip-vowifi-check] [version] # run directly when already root +# sudo bash install.sh [--check-env] [--skip-vowifi-check] [version] # run through sudo as a normal user +# bash install.sh --check-env # check VoWiFi host prerequisites # # Behavior: # - Prompts for script language (中文 / English) as soon as it runs. @@ -296,8 +296,8 @@ check_vowifi_environment() { "The OpenWrt/Kwrt kernel $(uname -r) lacks NETLINK_XFRM and its feed has no matching kmod-ipsec. Use a firmware built with matching kmod-ipsec, kmod-ipsec4/6, crypto-authenc, CBC, AES and SHA1 modules. Never force kmods from another kernel. Use --skip-vowifi-check only for non-VoWiFi operation." fi die \ - "当前 Linux 内核不支持 XFRM/IPsec,VoWiFi IMS 无法工作。请启用 CONFIG_XFRM、CONFIG_XFRM_USER、CONFIG_INET_ESP、CONFIG_INET6_ESP、AES-CBC 和 HMAC-SHA1。" \ - "This Linux kernel lacks XFRM/IPsec required by VoWiFi IMS. Enable CONFIG_XFRM, CONFIG_XFRM_USER, CONFIG_INET_ESP, CONFIG_INET6_ESP, AES-CBC and HMAC-SHA1." + "当前 Linux 内核不支持 XFRM/IPsec,VoWiFi IMS 无法工作。请启用 CONFIG_XFRM、CONFIG_XFRM_USER、CONFIG_INET_ESP、CONFIG_INET6_ESP、AES-CBC 和 HMAC-SHA1;若仅使用非 VoWiFi 功能(蜂窝短信/数据等),可重新运行安装脚本并加 --skip-vowifi-check。" \ + "This Linux kernel lacks XFRM/IPsec required by VoWiFi IMS. Enable CONFIG_XFRM, CONFIG_XFRM_USER, CONFIG_INET_ESP, CONFIG_INET6_ESP, AES-CBC and HMAC-SHA1; or re-run with --skip-vowifi-check if you only need non-VoWiFi features (cellular SMS/data)." } # --- Skip if already installed at the same version --------------------------- diff --git a/web/src/lib/i18n-en.ts b/web/src/lib/i18n-en.ts index d46dc45..7dcee34 100644 --- a/web/src/lib/i18n-en.ts +++ b/web/src/lib/i18n-en.ts @@ -820,6 +820,8 @@ export const EN_DICT: Record = { "匹配依据": "Profile Match", "方向": "Direction", "无法读取 IMEI(控制口可能挂死),暂不可添加。": "Cannot read the IMEI (the control port may be stuck); cannot add for now.", + "已发现该模组,但未找到 AT 串口:通常是 option 驱动未认该 PID 或模组处于 MBIM/RNDIS 组态。可 `echo 2c7c | sudo tee /sys/bus/usb-serial/drivers/option1/new_id` 后重扫,或用 AT+QCFG 切到 QMI+AT 组态。": + "The modem was discovered, but no AT serial port was found. This usually means the `option` driver does not recognize this PID, or the module is in an MBIM/RNDIS composition. Run `echo 2c7c | sudo tee /sys/bus/usb-serial/drivers/option1/new_id` then rescan, or use AT+QCFG to switch to a QMI+AT composition.", "未找到可用的 AT 端口(串口可能仍在枚举),系统会自动重试;也可点击重新扫描。": "No usable AT port was found (serial interfaces may still be enumerating). The system retries automatically; you can also rescan now.", "无法读取该设备 IMEI(可能控制口挂死),请执行 AT!RESET 或切换组态后重试": "Cannot read the device IMEI (the control port may be stuck); run AT!RESET or switch the USB composition and retry",