Fix GUI fallback misfire and untranslated failure-menu case patterns
The cage wrapper treated the installer session exit code as cage availability, so an installer abort re-ran the English VT flow. A gui-started marker now separates the two. Dashboard failure-menu cases for shell/poweroff now match the localized choice strings. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QKxGW1raAWaqeU8WdHsMsp
This commit is contained in:
@@ -12,10 +12,10 @@ index db8daa2..5e4ca44 100755
|
|||||||
|
|
||||||
# The live ISO boots linux-t2 (see airootfs/etc/mkinitcpio.d/linux-t2.preset), so
|
# 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
|
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
|
--- a/configs/airootfs/root/.automated_script.sh
|
||||||
+++ b/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
|
# - COLUMNS/LINES so gum picks up real terminal size
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
@@ -28,11 +28,20 @@ index 16904f8..780ff6a 100644
|
|||||||
+ export XDG_RUNTIME_DIR=/run/omarchy-gui
|
+ export XDG_RUNTIME_DIR=/run/omarchy-gui
|
||||||
+ mkdir -p "$XDG_RUNTIME_DIR"
|
+ mkdir -p "$XDG_RUNTIME_DIR"
|
||||||
+ chmod 700 "$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
|
+ rm -f "$XDG_RUNTIME_DIR/gui-started"
|
||||||
+ exit 0
|
+ 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
|
+ fi
|
||||||
+ echo "图形安装环境不可用,回退英文控制台 (falling back to the English VT installer)"
|
+ echo "图形安装环境不可用,回退英文控制台 (falling back to the English VT installer)"
|
||||||
+ unset OMARCHY_INSTALL_LANG XDG_RUNTIME_DIR
|
+ unset OMARCHY_INSTALL_LANG XDG_RUNTIME_DIR
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [[ -n ${OMARCHY_CN_GUI:-} ]]; then
|
||||||
|
+ touch "$XDG_RUNTIME_DIR/gui-started"
|
||||||
+fi
|
+fi
|
||||||
|
|
||||||
export OMARCHY_MIRROR="$(cat /root/omarchy_mirror)"
|
export OMARCHY_MIRROR="$(cat /root/omarchy_mirror)"
|
||||||
@@ -578,7 +587,7 @@ index 4cd3db3..24a1bf8 100644
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
diff --git a/configs/airootfs/usr/local/bin/omarchy-install-dashboard b/configs/airootfs/usr/local/bin/omarchy-install-dashboard
|
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
|
--- a/configs/airootfs/usr/local/bin/omarchy-install-dashboard
|
||||||
+++ b/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
|
@@ -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"
|
render_media_diagnosis "$media_diagnosis"
|
||||||
|
|
||||||
@@ -730,34 +785,34 @@ failure_menu() {
|
@@ -730,40 +785,40 @@ failure_menu() {
|
||||||
if [[ -n $uploader ]]; then
|
if [[ -n $uploader ]]; then
|
||||||
choice=$(gum choose \
|
choice=$(gum choose \
|
||||||
--height 6 \
|
--height 6 \
|
||||||
@@ -767,4 +776,12 @@ index 91e960b..2a615e2 100755
|
|||||||
+ "$L_C_REBOOT")
|
+ "$L_C_REBOOT")
|
||||||
reboot 2>/dev/null || systemctl reboot 2>/dev/null || true
|
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
|
||||||
|
|||||||
Reference in New Issue
Block a user