The double-rotate on every Hyprland start existed to fix monitor scale getting corrupted by rotation. Verified live (Hyprland 0.55.4): scale stays exactly pinned across a transform change as long as it's set explicitly (monitors.lua already does scale=1.0, not "auto"), so the workaround is no longer needed upstream. It was also a source of a real race: unified-rotate.sh reads current transform via `hyprctl monitors -j`, and the fixed 0.3s gap between the two invocations isn't guaranteed long enough for the first rotate to commit before the second reads state — especially with a dozen other autostart commands firing concurrently in the same block. A lost race leaves the monitor (and touchscreen, which unified-rotate.sh also retargets) transform mismatched after boot. Root-caused this while investigating why a QEMU test VM's monitor stayed stuck at transform:1 after every fresh boot. unified-rotate.sh itself is untouched — still used by the manual rotate buttons on the touch bar. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TLz6HWsXCwzQ97LrLt2em6 |
||
|---|---|---|
| .. | ||
| autostart.lua | ||
| binds.lua | ||
| envvars.lua | ||
| input-device-exceptions.lua | ||
| input.lua | ||
| mk-device-block.sh | ||
| mk-device-exception.sh | ||
| monitors.lua | ||
| wallpaper.conf | ||
| windowrules.conf.old | ||
| windowrules.lua | ||