# Minimal sway config for a headless Sunshine host. Installed by # omarchy-moonlight as ~/.config/sway/config-headless. Loaded by the # sway-headless.service systemd-user unit on Debian/Ubuntu installs. # # Goals: # - Boot sway with a single headless output named HEADLESS-1 so Sunshine's # wlr capture has a stable target. # - No keybindings, no bars, no animations. There's no human at the console. # - The sunshine-stream-do-sway.sh hook adjusts HEADLESS-1's mode per client # connect; this config is just the boot-time baseline. # Create the headless output at startup. Sway accepts `output HEADLESS-1 # enable` only after the output exists, so we issue create_output here. exec swaymsg create_output HEADLESS-1 # Default mode — overridden per-connect by the do-hook. output HEADLESS-1 mode 1920x1080@60Hz output HEADLESS-1 background #1a1a1a solid_color # No idle locking on a headless box; no XWayland (would just waste DRM resources). xwayland disable # Don't enable animations / focus-follow / etc — there's no user input here. focus_follows_mouse no default_border none default_floating_border none # A minimal placeholder so sway has something to display. The actual stream # content lives in whatever app the user launches via sunshine commands. exec --no-startup-id true