Files
spark-store/extras/spark-store
T
shenmo7192 ad5562700f feat: 优化应用商店界面布局和交互体验
refactor(HomeView): 调整网格布局和卡片样式,增加欢迎页面
refactor(AppDetailModal): 重构应用详情弹窗布局,增加元数据展示和返回按钮
fix(spark-store): 添加dpkg命令检查逻辑
style: 统一调整部分间距和颜色样式
2026-03-29 15:22:55 +08:00

46 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# 基础参数,始终添加 --no-sandbox
ARGS="--no-sandbox"
# 检查是否在容器中运行
# 方法1: 检查 root 路径
ROOT_PATH=$(readlink -f /proc/self/root)
if [ "$ROOT_PATH" != "/" ]; then
echo "检测到容器环境 (root path: $ROOT_PATH)"
ARGS="$ARGS --no-apm"
fi
# 方法2: 检查 IS_ACE_ENV 环境变量
if [ "$IS_ACE_ENV" = "1" ]; then
echo "检测到 ACE 容器环境"
ARGS="$ARGS --no-apm"
fi
# 检查是否存在 dpkg 指令
if ! command -v dpkg >/dev/null 2>&1; then
echo "未检测到 dpkg 指令"
ARGS="$ARGS --no-spark"
fi
# 注意:已移除原先针对 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
exit $exit_code