macbook: aquamarine immediate legacy cursor moves (patch file)

This commit is contained in:
rope 2026-07-25 09:10:36 +01:00
parent 41cbc1dd6f
commit 93ec50fe9d
2 changed files with 29 additions and 9 deletions

View file

@ -54,17 +54,15 @@
# wait_prepare/wait_finish were removed from struct vb2_ops in Linux 6.8
nixpkgs.overlays = [
# Legacy DRM iface (AQ_NO_ATOMIC): every commit without cursor flags
# hits the else-branch and nulls the cursor plane → cursor vanishes
# whenever it isn't moving (vfr=false commits every frame). Only null
# it when the cursor is actually meant to be hidden. Bug present
# upstream as of aquamarine 0.11.0 / main (July 2026).
# Legacy DRM iface (AQ_NO_ATOMIC) cursor fixes, see patch:
# 1. moveCursor only scheduled a frame — cursor still waited for vblank.
# Issue the immediate drmModeMoveCursor ioctl like wlroots did.
# 2. Commits without cursor flags nulled the cursor plane → cursor
# vanished while idle. Only null when actually hidden.
# Both present upstream as of aquamarine 0.11.0 / main (July 2026).
(final: prev: {
aquamarine = prev.aquamarine.overrideAttrs (old: {
postPatch = (old.postPatch or "") + ''
sed -i 's|} else if (drmModeSetCursor(|} else if (!connector->output->cursorVisible \&\& drmModeSetCursor(|' \
src/backend/drm/impl/Legacy.cpp
'';
patches = (old.patches or [ ]) ++ [ ../../patches/aquamarine-legacy-cursor.patch ];
});
})
(final: prev: {