CR-2026-06-19: Rollback

Rollback Plan

Rollback restores the original monitor disable/enable lid switch bindings. Use this only if the brightnessctl approach introduces a new problem (e.g., battery drain from keeping the display pipe active with lid closed).

Restoring the original bindings will re-introduce the hyprlock lid-wake failure on Arrow Lake-S. The internal panel will not display hyprlock after lid close/open without an external monitor.

Step 1: Restore Original Bindings

Before
grep 'Lid Switch' ~/.config/hypr/hyprland.conf
Change — restore monitor disable/enable
sed -i '/switch:on:Lid Switch/s|exec, loginctl lock-session && brightnessctl -s set 0|exec, hyprctl keyword monitor "eDP-1, disable"|' ~/.config/hypr/hyprland.conf
sed -i '/switch:off:Lid Switch/s|exec, brightnessctl -r|exec, hyprctl keyword monitor "eDP-1, preferred, auto, 2"|' ~/.config/hypr/hyprland.conf
After
grep 'Lid Switch' ~/.config/hypr/hyprland.conf
Expected output (original bindings restored)
bindl = , switch:on:Lid Switch, exec, hyprctl keyword monitor "eDP-1, disable"
bindl = , switch:off:Lid Switch, exec, hyprctl keyword monitor "eDP-1, preferred, auto, 2"

Step 2: Restore Stow Source

sed -i '/switch:on:Lid Switch/s|exec, loginctl lock-session && brightnessctl -s set 0|exec, hyprctl keyword monitor "eDP-1, disable"|' ~/atelier/_projects/personal/dots-quantum/hyprland/.config/hypr/hyprland.conf
sed -i '/switch:off:Lid Switch/s|exec, brightnessctl -r|exec, hyprctl keyword monitor "eDP-1, preferred, auto, 2"|' ~/atelier/_projects/personal/dots-quantum/hyprland/.config/hypr/hyprland.conf

Step 3: Reload

hyprctl reload

Alternative: Use Config Backup

If the sed rollback does not produce clean output, restore from the backup taken in Phase 1:

# Find most recent backup
ls -t ~/.config/hypr/hyprland.conf.bak.* | head -1
# Restore from backup
cp ~/.config/hypr/hyprland.conf.bak.<timestamp> ~/.config/hypr/hyprland.conf
hyprctl reload

When to Remove This Fix

Monitor future Hyprland and kernel updates for i915 DRM improvements:

# Test if monitor disable/enable works on a future kernel
hyprctl keyword monitor "eDP-1, disable" && sleep 3 && hyprctl keyword monitor "eDP-1, preferred, auto, 2"

If eDP-1 re-initializes reliably, the original monitor disable bindings can be restored — they provide cleaner external monitor handling and lower power consumption with lid closed.