diff --git a/extras/spark-store b/extras/spark-store index d5bc45ae..5f8f52af 100755 --- a/extras/spark-store +++ b/extras/spark-store @@ -17,12 +17,23 @@ if [ "$IS_ACE_ENV" = "1" ]; then ARGS="$ARGS --no-apm" fi -# 检查是否为 arm64 且为 wayland session -ARCH=$(uname -m) -if [ "$ARCH" = "aarch64" ] && [ "$XDG_SESSION_TYPE" = "wayland" ]; then - echo "检测到 arm64 架构和 Wayland 会话" - ARGS="$ARGS --disable-gpu" +# 注意:已移除原先针对 arm64 + wayland 添加 --disable-gpu 的逻辑, +# 现在 arm64 设备无论是否使用 wayland 均不再添加此参数。 + +# 执行程序(不使用 exec,以便捕获退出状态) +/opt/spark-store/bin/spark-store $ARGS "$@" +exit_code=$? + +# 若程序退出码非0,使用 zenity 弹出友好提示 +if [ $exit_code -ne 0 ]; then + if command -v zenity >/dev/null 2>&1; then + zenity --warning --text="检测到您可能无法正确打开商店,可手动回退到旧版。\n在终端中执行 sudo aptss install spark-store-legacy -y 即可降级。\n您也可以尝试 APM 网页版商店 https://amber-pm.spark-app.store/" + else + # 降级方案:若 zenity 不可用,至少输出错误信息到终端 + echo "警告: 程序异常退出(退出码 $exit_code),但无法显示图形提示。您可以尝试手动降级:" >&2 + echo "sudo aptss install spark-store-legacy -y" >&2 + echo "或访问 APM 网页版商店: https://amber-pm.spark-app.store/" >&2 + fi fi -# 执行程序 -/opt/spark-store/bin/spark-store $ARGS "$@" \ No newline at end of file +exit $exit_code