diff --git a/packages/omarchy-iso-cn.patch b/packages/omarchy-iso-cn.patch index 5aad0413..2247f3ac 100644 --- a/packages/omarchy-iso-cn.patch +++ b/packages/omarchy-iso-cn.patch @@ -12,10 +12,10 @@ index db8daa2..5e4ca44 100755 # The live ISO boots linux-t2 (see airootfs/etc/mkinitcpio.d/linux-t2.preset), so diff --git a/configs/airootfs/root/.automated_script.sh b/configs/airootfs/root/.automated_script.sh -index 16904f8..780ff6a 100644 +index 16904f8..f1ec36e 100644 --- a/configs/airootfs/root/.automated_script.sh +++ b/configs/airootfs/root/.automated_script.sh -@@ -10,7 +10,20 @@ +@@ -10,7 +10,29 @@ # - COLUMNS/LINES so gum picks up real terminal size set -euo pipefail @@ -28,11 +28,20 @@ index 16904f8..780ff6a 100644 + export XDG_RUNTIME_DIR=/run/omarchy-gui + mkdir -p "$XDG_RUNTIME_DIR" + chmod 700 "$XDG_RUNTIME_DIR" -+ if OMARCHY_CN_GUI=1 OMARCHY_INSTALL_LANG=zh WLR_RENDERER=pixman cage -- foot -F "$0"; then -+ exit 0 ++ rm -f "$XDG_RUNTIME_DIR/gui-started" ++ gui_status=0 ++ OMARCHY_CN_GUI=1 OMARCHY_INSTALL_LANG=zh WLR_RENDERER=pixman \ ++ cage -- foot -F "$0" || gui_status=$? ++ if [[ -f $XDG_RUNTIME_DIR/gui-started ]]; then ++ # GUI 已运行:退出码属于安装器,不再回退英文流程 ++ exit "$gui_status" + fi + echo "图形安装环境不可用,回退英文控制台 (falling back to the English VT installer)" + unset OMARCHY_INSTALL_LANG XDG_RUNTIME_DIR ++fi ++ ++if [[ -n ${OMARCHY_CN_GUI:-} ]]; then ++ touch "$XDG_RUNTIME_DIR/gui-started" +fi export OMARCHY_MIRROR="$(cat /root/omarchy_mirror)" @@ -578,7 +587,7 @@ index 4cd3db3..24a1bf8 100644 ;; esac diff --git a/configs/airootfs/usr/local/bin/omarchy-install-dashboard b/configs/airootfs/usr/local/bin/omarchy-install-dashboard -index 91e960b..2a615e2 100755 +index 91e960b..54d331d 100755 --- a/configs/airootfs/usr/local/bin/omarchy-install-dashboard +++ b/configs/airootfs/usr/local/bin/omarchy-install-dashboard @@ -53,6 +53,44 @@ export GUM_CONFIRM_UNSELECTED_BACKGROUND="${GUM_CONFIRM_UNSELECTED_BACKGROUND:-0 @@ -717,7 +726,7 @@ index 91e960b..2a615e2 100755 render_media_diagnosis "$media_diagnosis" -@@ -730,34 +785,34 @@ failure_menu() { +@@ -730,40 +785,40 @@ failure_menu() { if [[ -n $uploader ]]; then choice=$(gum choose \ --height 6 \ @@ -767,4 +776,12 @@ index 91e960b..2a615e2 100755 + "$L_C_REBOOT") reboot 2>/dev/null || systemctl reboot 2>/dev/null || true ;; - "Power off") +- "Power off") ++ "$L_C_POWEROFF") + poweroff 2>/dev/null || systemctl poweroff 2>/dev/null || true + ;; +- "Drop to shell"|"") ++ "$L_C_SHELL"|"") + return 0 + ;; + esac