Two bugs caused fresh users to land without branding files / AI skill symlinks / nautilus extensions / xdg dirs / etc.: 1. install/first-run/gdk-scale.sh sed-edited ~/.config/hypr/monitors.conf, but the lua-based config flow uses ~/.config/hypr/monitors.lua. sed -i on the missing .conf returned non-zero, set -e fired, omarchy-first-run aborted mid-block AFTER deleting ~/.local/state/omarchy/first-run.mode. omarchy-setup-user (called at the bottom of the script, outside the if-block) never ran, so setup-user.done never got written and the per-user defaults (~/.config/omarchy/branding/*, ~/.agents/skills/omarchy, xdg dirs, etc.) never got created. Replace the .conf sed with a call to omarchy-hyprland-monitor-scaling which already knows how to persist into monitors.lua. 2. Move 'omarchy-setup-user || true' to the TOP of omarchy-first-run, before the privileged first-run block. setup-user is idempotent and gated on its own marker, so running it first is safe and means a failure in any of the privileged steps can't prevent user setup from completing.
9 lines
509 B
Bash
9 lines
509 B
Bash
# Persist the detected monitor scale (and matching GDK_SCALE) into
|
|
# ~/.config/hypr/monitors.lua. omarchy-hyprland-monitor-scaling with no args
|
|
# returns the closest preset to whatever Hyprland chose at startup; passing
|
|
# that value back in updates both `omarchy_monitor_scale` and
|
|
# `omarchy_gdk_scale` in the lua config so the choice survives a reboot.
|
|
scale=$(omarchy-hyprland-monitor-scaling 2>/dev/null || true)
|
|
[[ -n $scale ]] || exit 0
|
|
omarchy-hyprland-monitor-scaling "$scale" >/dev/null 2>&1 || true
|