It should not matter what desktop you use since ~/.vnc/xstartup just calls whichever desktop you have designated. I run Tigertvncserver on a headless RPi4 running a full 64bit Debian (not Raspberry Pi OS).

Steps:

ssh User@DebianBox

sudo apt install tigervncserver

vncpasswd [password]

sudo nano /etc/tigervnc/vncserver.users

[password]

[add the following]

:1 User

[save & exit]

sudo nano /etc/tigervnc/vncserver-config-defaults

[password]

[add the following if you trust your network :-)]

$localhost = "no";

$SecurityTypes = "VncAuth,Plain";

[make sure you end each line with a semi-colon ";"]

[save & exit]

touch ~/.vnc/xstartup

nano ~/.vnc/xstartup

[add this to file]

#!/bin/bash
xrdb "$HOME/.Xresources"
xsetroot -solid grey
export XKL_XMODMAP_DISABLE=1
/etc/X11/Xsession
startxfce4 &

[save & exit]

[This will bypass any login and immediately open the desktop (in my case XFCE)]

sudo systemctl start tigervncserver@:1.service

[password]

sudo systemctl status tigervncserver@:1.service

[password]

[if it all works then]

sudo systemctl enable tigervncserver@:1.service

[password]

sudo systemctl enable tigervncserver@:1.service

Thank you so much for taking time to write all this! i got it working, only extra step i had to take was running vncserver manually and it asked for password. after that it starting working great

Thanks a lot for this writeup! I've wasted hours trying to make it work but this way helped me out greatly!

I used your instructions on my brand new Debian 12.4 installation with XFCE but the service shuts down immediately. The only difference was that I had to use:

sudo apt install tigervnc-standalone-server

because apt couldn't find package tigervncserver.

When I check the status it looks like this:

$ sudo systemctl status tigervncserver@:1.service

tigervncserver@:1.service - Remote desktop service (VNC)
     Loaded: loaded (/lib/systemd/system/[email protected]; enabled; preset: enabled)
     Active: inactive (dead) since Sun 2023-12-31 21:36:16 CST; 1min 51s ago
   Duration: 70ms
    Process: 12803 ExecStart=/usr/libexec/tigervncsession-start :1 (code=exited, status=0/SUCCESS)
   Main PID: 12810 (code=exited, status=0/SUCCESS)
        CPU: 16ms

Dec 31 21:36:16 eq systemd[1]: Starting tigervncserver@:1.service - Remote desktop service (VNC)...
Dec 31 21:36:16 eq tigervncsession[12810]: pam_unix(tigervnc:session): session opened for user zzzz(uid=1000) by (uid=0)
Dec 31 21:36:16 eq systemd[1]: Started tigervncserver@:1.service - Remote desktop service (VNC).
Dec 31 21:36:16 eq tigervncsession[12810]: tigervncsession: tigervncserver exited with status=1
Dec 31 21:36:16 eq tigervncsession[12810]: pam_unix(tigervnc:session): session closed for user zzzz
Dec 31 21:36:16 eq systemd[1]: tigervncserver@:1.service: Deactivated successfully.

Any thoughts on how I can find the problem from here?

So i installed the app. Im able to almost connect, asks for password but doesnt go through to actually connect. I also setup unattended access but that password didnt work.

My end goals is to have this running in the background on boot so i can connect. It seems like this requires you to open the app first.