diff --git a/bin/omarchy-provision-first-run b/bin/omarchy-provision-first-run index 66e735d8..ccb650b4 100755 --- a/bin/omarchy-provision-first-run +++ b/bin/omarchy-provision-first-run @@ -83,12 +83,12 @@ run_first_run_step "apply speaker tuning" \ bash "$OMARCHY_PATH/install/user/first-run/audio-tuning.sh" omarchy-notification-wait || log_first_run "Timed out waiting for notification service; continuing" -# Each send returns only once the server has taken the toast, so sending in -# order is enough to stack them newest-on-top. -run_first_run_step "show welcome notification" \ - bash "$OMARCHY_PATH/install/user/first-run/welcome.sh" run_first_run_step "show Wi-Fi/update notifications" \ bash "$OMARCHY_PATH/install/user/first-run/wifi.sh" +# Waits for the menu to be answered, so it goes last and leaves the toasts +# waiting underneath. +run_first_run_step "show keybindings" \ + bash "$OMARCHY_PATH/install/user/first-run/keybindings.sh" if (( first_run_failed == 0 )); then omarchy-done mark "$FIRST_RUN_DONE" diff --git a/docs/file-layout.md b/docs/file-layout.md index 5f161359..0acf54c9 100644 --- a/docs/file-layout.md +++ b/docs/file-layout.md @@ -237,9 +237,10 @@ systemd instance: - `install/user/first-run/gnome-theme.sh`, `install/user/first-run/gtk-primary-paste.sh` — GNOME/GTK settings that need the dconf daemon. -- `install/user/first-run/welcome.sh`, - `install/user/first-run/wifi.sh` — welcome and Wi-Fi/update toasts - (waits for a live notification server before firing). +- `install/user/first-run/wifi.sh` — Wi-Fi/update toasts (waits for a live + notification server before firing). +- `install/user/first-run/keybindings.sh` — opens the keybindings menu to + greet the first login; blocks until it is answered. The entire sequence has one idempotency marker: `~/.local/state/omarchy/done/first-run-user`, managed by `omarchy-done`. diff --git a/install/user/first-run/keybindings.sh b/install/user/first-run/keybindings.sh new file mode 100644 index 00000000..c20f1efb --- /dev/null +++ b/install/user/first-run/keybindings.sh @@ -0,0 +1,4 @@ +# Greet the first login with the cheatsheet itself rather than a toast +# pointing at it. The menu blocks until it is answered, and dismissing it +# exits non-zero, which is a normal way to close it. +omarchy-menu-keybindings || true diff --git a/install/user/first-run/welcome.sh b/install/user/first-run/welcome.sh deleted file mode 100644 index dfbc2e20..00000000 --- a/install/user/first-run/welcome.sh +++ /dev/null @@ -1,3 +0,0 @@ -omarchy-notification-send -u critical -g  "Learn Keybindings" \ - "Super + K for cheatsheet.\nSuper + Space for application launcher.\nSuper + Alt + Space for Omarchy Menu." \ - --exec omarchy-menu-keybindings