#!/usr/bin/env bash # Sunshine systemd ExecStartPre hook. # # As of 2026-07-27 this is a thin wrapper around the HEADLESS-PRIMARY manager, # which is the single source of truth for the monitor/headless topology: # - ensures exactly one persistent HEADLESS output exists (Sunshine's capture # target) BEFORE Sunshine's startup encoder probe runs, # - sizes it and mirrors DP-1 onto it when the physical monitor is present, # - keeps sunshine.conf's output_name in sync with the live headless name. # # Non-fatal by design (the drop-in prefixes this with '-'): if Hyprland isn't # reachable yet, the manager logs and returns 0 so Sunshine still starts. exec "$(dirname "$0")/sunshine-headless-primary.sh" apply