Skip to content

Instantly share code, notes, and snippets.

@fszf
Last active July 21, 2025 12:54
Show Gist options
  • Save fszf/b3e30b902f5b18f92f470804ea667197 to your computer and use it in GitHub Desktop.
Save fszf/b3e30b902f5b18f92f470804ea667197 to your computer and use it in GitHub Desktop.

I see a few people sharing incorrect details in the comments so I figured I'd echo some details.

'hyprctl output create headless'

This creates a headless monitor. You can verify this with:

'hyprctl monitors'

You will see something akin to the following (please do know I have 2 other monitors, internal (eDP-1), and an external (DP-1):

Monitor HEADLESS-2 (ID 2):

	[email protected] at 3840x0
	description: 
	make: 
	model: 
	serial: 
	active workspace: 3 (3)
	special workspace: 0 ()
	reserved: 0 54 0 0
	scale: 2.00
	transform: 0
	focused: no
	dpmsStatus: 1
	vrr: false
	solitary: 0
	activelyTearing: false
	directScanoutTo: 0
	disabled: false
	currentFormat: XRGB8888
	mirrorOf: none
	availableModes: [email protected] 

For switching to the various monitors (eDP-1, DP-1, HEADLESS-2) I either script or bind some keyboard combinations to switch back and forth.

My host is an Archlinux on Hyprland using Wayvnc. My client is on my work laptop W11 using RealVNC. In terminal to switch I run:

'wayvncctl output-set {Monitor Name}'

For example:

'wayvncctl output-set HEADLESS-2'

This switches me to the headless monitor that does not display on my internal or external monitor. In hyprland.conf if you prefer to bind things, you can do something similar to the following config lines:

 # switch monitors via wayvnc/realvnc
 bind = SUPER, COMMA , exec, sh -c "wayvncctl output-set eDP-1"
 bind = SUPER, PERIOD , exec, sh -c "wayvncctl output-set DP-1"
 bind = SUPER, SLASH , exec, sh -c "wayvncctl output-set HEADLESS-2"

This allows me to easily use mod+, or mod+. to go back and forth between internal and external and then mod+/ for headless.

At the time of this writing, here is my package detail for hyprland:

→ pacman -Qi hyprland
Name            : hyprland
Version         : 0.47.2-2
Description     : a highly customizable dynamic tiling Wayland compositor
Architecture    : x86_64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment