TigerVNC / tigervnc

High performance, multi-platform VNC client and server
https://tigervnc.org
GNU General Public License v2.0
5.26k stars 957 forks source link

vncserver doesn't start on Ubuntu if TigerVNC isn't active alternative #1800

Open CendioOssman opened 4 months ago

CendioOssman commented 4 months ago

Describe the bug Debian/Ubuntu packages put TigerVNC under the "alternatives" system, as there are multiple projects that want to lay claim to names such as vncviewer or Xvnc.

If the currently active "alternative" isn't TigerVNC, then starting the vncserver service will fail. The reason is that it uses the normal names, which will at that point be some other implementation. E.g. RealVNC.

To Reproduce Steps to reproduce the behavior:

  1. Install RealVNC (TightVNC probably also works)
  2. Install TigerVNC
  3. sudo systemctl start vncserver@:#.service
  4. Service fails to stay alive

Expected behavior Service works even if TigerVNC doesn't own the generic names.

Client (please complete the following information): N/A

Server (please complete the following information):

Additional context Normally, this would be a Debian/Ubuntu issue. But since we also ship Ubuntu packages, we should at least fix those.

CendioOssman commented 4 months ago

Similar issue with the viewer. The desktop menu entry will start the currently active alternative, which might not be TigerVNC.

CendioOssman commented 3 months ago

The alternative system seems to have a bunch of bugs. Installing the server gives me these errors:

update-alternatives: warning: skip creation of /usr/share/man/man8/vncsession.8.gz because associated file
 /usr/share/man/man8/tigervncsession.8.gz (of link group vncsession) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man8/vncserver.8.gz because associated file 
/usr/share/man/man8/tigervncserver.8.gz (of link group vncsession) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/Xvnc.1.gz because associated file /usr/
share/man/man1/Xtigervnc.1.gz (of link group Xvnc) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/x0vncserver.1.gz because associated fil
e /usr/share/man/man1/x0tigervncserver.1.gz (of link group x0vncserver) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/vncpasswd.1.gz because associated file 
/usr/share/man/man1/tigervncpasswd.1.gz (of link group vncpasswd) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/vncconfig.1.gz because associated file 
/usr/share/man/man1/tigervncconfig.1.gz (of link group vncconfig) doesn't exist
CendioOssman commented 3 months ago

Probably worth looking at how Debian packages TigerVNC:

https://salsa.debian.org/debian-remote-team/tigervnc/-/tree/master/debian?ref_type=heads

Not sure what the origin is for our packages, and why they differ from Debian and Ubuntu.

james7x1 commented 3 months ago

I agree, I had this issue, so I use turboVNC for my server, but I don't have admin priv. on my client, so I use tigerVNC for client.