I'd give up on tigervnc completely, and look at TurboVNC.For a long time they have been talking about vncserver going away and I've found in a test upgrade to Fedora 39 that it broke things, so finally looked at the TurboVNC.There are some difference, since it installs in /opt/TurboVNCAfter install have to enable and start service.systemctl status tvncserver.service· tvncserver.service - LSB: Starts and stops the TurboVNC ServerUses /etc/sysconfig/tvncserver to cofigure itadd lines like these without # and it will start sessions.# VNCSERVERS="1:myusername"# VNCSERVERARGS[1]=""for VNCSERVERARGS[] I use "-wm xfce -geometry 1600x845"had tighervnc use xfce with Fedora 38, but after upgrade to 39, it was using gnome even though the xfce was still stated in xstartup file?The vncvierer is in /opt/TurboVNC/bin so either have to specify it, or put a link in bin directory to have it work.So rather than trying the systemd setup that tigervnc seems to want to force users with, the TurboVNC seems a better option.Worth a look at. Been using vnc going back to Redhat 9, and all the Fedora versions up to 39.Hope that at least gives an option. Tigervnc seems to be change to what we want rather than what works.
You don't even need to go to that trouble. TurboVNC 3.0 and
later includes a session manager, so you can start, stop, and
manage TurboVNC sessions remotely from the TurboVNC Viewer via
SSH. (The session manager is also secure by default, since it
tunnels the RFB connection through SSH and uses one-time
passwords, also sent through SSH, for authentication.) But we
also still support using the vncserver script or the tvncserver
service to manually start/stop TurboVNC sessions.
The TigerVNC developers decided to do things in the manner that
is officially sanctioned by systemd and GNOME, which (to the best
of my understanding) limits TigerVNC to a single session per user,
prevents you from having a simultaneous TigerVNC session and local
session, and requires that sessions be started by root and
statically assigned a display number. It also prevents TigerVNC
from running on non-systemd platforms, including FreeBSD. I have
instead decided to retain the vncserver/multi-session approach and
work around systemd, but that requires me to comprehensively test
popular O/S distributions and window managers
(https://turbovnc.org/Documentation/Compatibility30) to ensure
that they work properly with the TurboVNC Server. This highlights
a basic philosophical difference between TigerVNC and TurboVNC
that has existed all along. TigerVNC is intended to be a
system-supplied VNC implementation, so the integration and
compatibility issues are at least partly delegated to O/S
distributors. TurboVNC is intended to be a
cross-platform/cross-distribution VNC implementation (which is why
it is installed under /opt/TurboVNC), so I have to deal with
integration and compatibility issues myself. There is no
guarantee that systemd or GNOME won't screw me in the long term,
since I am not doing things in the sanctioned way. To the best of
my understanding, there isn't an officially sanctioned way of
running multiple simultaneous instances of GNOME or other WMs
(KDE?) that are tied to systemd at the hip. TurboVNC is able to
do so by creating a separate D-Bus instance for each TurboVNC
session, but that may work more out of luck than by design.
However, Xfce and MATE and other window managers that aren't tied
to systemd at the hip should continue to work with vncserver
regardless. I track Fedora and other bleeding-edge distros, so I
can hopefully discover and react to WM compatibility issues before
they affect enterprise/LTS distros (which are used by most
large-scale TurboVNC deployments.) My philosophy is that it works
because I verified that it works, regardless of whether it's
supposed to work. If GNOME or other WMs stop working with the
vncserver/multi-session approach, then I may have to adopt
TigerVNC's approach for those window managers, but I also intend
to keep supporting the vncserver/multi-session approach for all
WMs that it continues to work with.