A machine without a GPU, like most VMs, renders through llvmpipe on the CPU, where every animated frame and every translucent window costs. In a VM, opening and closing a terminal took ~5s of CPU; a panel ~3.4s. omarchy toggle animations (also under Toggle > Animations) places a Hyprland flag that turns off animations, blur and shadows and makes windows opaque. The shell follows Hyprland's animations:enabled, rereading it on every config reload: its one-shot animations run for Style.duration(ms), which is then 0, and its spinners, pulses and title marquee hold still. A new install in a VM starts with the flag in place. Measured in the ISO test VM (llvmpipe), CPU per interaction: terminal open+close 5000ms -> 481ms, workspace switch 1670ms -> 409ms, audio panel 3446ms -> 796ms, volume OSD 2324ms -> 584ms, menu 2028ms -> 1241ms. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
23 lines
767 B
Bash
Executable File
23 lines
767 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# omarchy:summary=Toggle animations, transparency and other effects that are slow without a GPU
|
|
# omarchy:args=[toggle|on|off]
|
|
# omarchy:examples=omarchy toggle animations | omarchy toggle animations off | omarchy toggle animations on
|
|
|
|
# The flag records animations being off, so on and off swap on the way through.
|
|
case ${1:-toggle} in
|
|
toggle) omarchy-hyprland-toggle no-animations toggle ;;
|
|
on) omarchy-hyprland-toggle no-animations off ;;
|
|
off) omarchy-hyprland-toggle no-animations on ;;
|
|
*)
|
|
echo "Usage: omarchy-toggle-animations [toggle|on|off]" >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
if omarchy-hyprland-toggle-enabled no-animations; then
|
|
omarchy-notification-send -g "Animations disabled"
|
|
else
|
|
omarchy-notification-send -g "Animations enabled"
|
|
fi
|