Raspberry PI Stuff

Headless issues, “Unable to display…” errors in VNC, etc:

Edit /boot/config.txt and uncomment or add settings for framebuffer geometry. Change the values to whatever works for you, ex: width=1280 and height=1024.

# uncomment to force a console size. By default it will be display’s size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

Use raspi-config to set a forced screen resolution. (Choose anything other than monitor default).

The reason is that by default (RPi4), if no screen is connected at boot then a display device is not created. Without a display device the GUI desktop does not start so any program that requires GUI will not start. Other RPi models did not have that issue because they would fall back to composite mode if no HDMI was connected. The RPi4 has composite mode disabled by default so no display device is created.
Setting a resolution mode with raspi-config or the GUI config tool or manual edits to config.txt as mentioned above, will force a display device on boot even without the HDMI connected as long as you don’t choose the monitor default setting.