#!/usr/bin/env fish # Turn off the phantom Studio Display leg (DP-4/5/6, varies per boot). # Its signature is a single 640x480 mode — connector name and EDID are unreliable. # ponytail: one-shot with retry at startup; doesn't handle mid-session hotplug — # switch to a `niri msg event-stream` watcher if that starts biting. for i in (seq 10) set -l phantoms (niri msg -j outputs 2>/dev/null | jq -r ' to_entries[] | select((.value.modes | length) == 1 and .value.modes[0].width == 640 and .value.modes[0].height == 480) | .key') if test -n "$phantoms" for out in $phantoms niri msg output $out off end exit 0 end sleep 1 end