Giter VIP home page Giter VIP logo

Comments (10)

dcommander avatar dcommander commented on July 4, 2024

If you are trying to start the TurboVNC session from within a local GNOME/Wayland session, that will not work. TurboVNC 3.1.1 now warns about that situation and also fixes other interference issues between instances of GNOME running in the TurboVNC session and the local session. Upgrade to TurboVNC 3.1.1, then start the TurboVNC session from SSH, and it should work.

from turbovnc.

Heng-Zhou avatar Heng-Zhou commented on July 4, 2024
  1. By "within a local GNOME", do you mean run TurboVNC in a GNOME desktop? If this is what you mean, I'm not running TurboVNC within a local GNOME. I'm running it on pure command line (the same effect as SSH). So, there is no local session of GNOME interfering with GNOME sessions running in TurboVNC.

  2. The version of TurboVNC I am using is strictly 3.1, not 3.1.1.

So, can you please re-open the ticket and help me with this issue?

from turbovnc.

dcommander avatar dcommander commented on July 4, 2024

Please upgrade to TurboVNC v3.1.1, as I instructed. Attempting to start GNOME in a TurboVNC 3.1 session will not work if there is a local GNOME/Wayland session running, regardless of how the TurboVNC session was started. (More specifically, GTK applications try to display to a GNOME/Wayland session by default, if a GNOME/Wayland session is running. TurboVNC v3.1.1 now sets GDK_BACKEND=x11 to force those applications, including the GNOME window manager, to display to the TurboVNC session.) After upgrading to v3.1.1, you will still need to start the TurboVNC session from outside of the GNOME/Wayland session (as opposed to from a GNOME terminal inside of the GNOME/Wayland session.) I don't know what you mean by "pure command line", but if you mean a text console (accessed by pressing Ctrl+Alt+{function key}), then that's fine.

from turbovnc.

Heng-Zhou avatar Heng-Zhou commented on July 4, 2024

I upgraded to TurboVNC v3.1.1, but the errors are all the same.

The screenshot below shows that I am really using TurboVNC v3.1.1:
image

There is a <my_hostname>:2.pid file in ~/.vnc but vncserver -list does not return this session:
image

If I run vncserver -kill :2, this pid file is gone.

Below is the log file if I run vncserver to set up password:
image

If I next run /usr/local/bin/vncserver -verbose -rfbport 5001 -xstartup /usr/local/bin/xstartup.turbovnc -geometry 1680x1050 -SecurityTypes None -fg, the output is:
image

There is no .pid file this time, and the log file is the same as my original question.
image

This is what I mean by "pure command line". There is NO "local GNOME/Wayland session" running.
image

Any idea to solve the issue?

from turbovnc.

dcommander avatar dcommander commented on July 4, 2024

No idea. I tried to exactly reproduce your setup, by doing sudo systemctl set-default multi-user.target, rebooting the system, logging into the text console, building TurboVNC from source, installing TurboVNC under /usr/local, and starting TurboVNC using the exact arguments you are using. (Note that specifying -xstartup /usr/local/bin/xstartup.turbovnc is unnecessary, because xstartup.turbovnc is the default X startup script, but that didn't make a difference.) It works fine for me. I would suggest the following:

  1. Install the official TurboVNC 3.1.1 .deb package, because that may highlight some package dependencies that you are missing. (Run apt install -f after installing the .deb in order to resolve the dependencies.) Also, if the issue still exists with the official package, then at least we know that the issue is not with your build.
  2. Since the crash appears to be occurring in GNOME, not in TurboVNC, I would suggest starting GDM and then trying to log in locally using the "Ubuntu on Xorg" window manager. If that fails as well, then the issue is likely that there are missing dependencies that Ubuntu on Xorg requires. Since TurboVNC is an X server, it needs to use Ubuntu on Xorg rather than Ubuntu on Wayland. (Perhaps the ubuntu-gnome-desktop meta-package doesn't install everything needed for Ubuntu on Xorg. I don't know. We only test default Ubuntu installations, which include GNOME already. We don't test custom or stripped-down installations.)

from turbovnc.

Heng-Zhou avatar Heng-Zhou commented on July 4, 2024

Thank you for the suggestions, dcommander.

For 1., I did install TurboVNC 3.1.1 from turbovnc_3.1.1_amd64.deb downloaded from this github repository. I did not run apt install -f, so I run it this time. To sum up, the commands I used to install TurboVNC 3.1.1 are as follows:

wget https://github.com/TurboVNC/turbovnc/releases/download/3.1.1/turbovnc_3.1.1_amd64.deb -O turbovnc_3.1.1_amd64.deb
apt install -y -q ./turbovnc_3.1.1_amd64.deb
apt install -f
rm ./turbovnc_3.1.1_amd64.deb
ln -s /opt/TurboVNC/bin/* /usr/local/bin/
systemctl set-default multi-user.target

For 2., I tried apt install ubuntu-desktop gnome command instead to install GNOME. After all these changes, I tested it but the error remains the same.

The Ubuntu machine is a remote server. Ubuntu has two variants for download: Ubuntu Desktop and Ubuntu Server. I am using the server distro which does not contain GNOME by default. I think VNC software is intended and targeted for such a using scenario, for, what sense does it make to VNC a local GUI desktop? I have limited permission to run some sudo commands like installing some package or edit some configuration file in the system, but I can't do big things like reinstall Ubuntu Desktop.

Since the issue is not solved, can you please re-open this ticket so that perhaps other people encountered the same problem before and knows how to fix it. Maybe the solution is only installing a missing package, editing a line of a configuration file, or exporting an environment variable. Thanks.

from turbovnc.

dcommander avatar dcommander commented on July 4, 2024

Did you try to start Ubuntu on Xorg from GDM, as I instructed? This issue is undoubtedly with the window manager, and the general strategy is to ensure that the window manager works without TurboVNC before you try to use it with TurboVNC.

If you have to add all of the desktop components to Ubuntu Server in order to make TurboVNC work, then why wouldn't you just use Ubuntu Desktop? That is, in fact, what most other TurboVNC users do. (Actually, all large-scale TurboVNC deployments of which I'm aware use RHEL. You may very well be the first person to have ever tested TurboVNC with Ubuntu Server.) I test a variety of popular window manager and operating system configurations (https://turbovnc.org/Documentation/Compatibility30), but I can't be expected to test every single possible Linux configuration. If you want to use Ubuntu Server, that's fine, but the window manager is a separate component from TurboVNC. You need to ensure that it works on the system before you expect it to work in TurboVNC. I instructed you to do exactly that. GNOME isn't a necessary component for TurboVNC. You can use TurboVNC with MATE or Xfce or other WMs if you want. I claim that TurboVNC works with the O/S and WM configurations I have tested, if the window manager works properly outside of TurboVNC. I strongly suspect that, in your case, it doesn't.

Also, stop freaking out about the issue being closed. That doesn't mean I'm ignoring you. This is a single-developer project. No one else is going to support TurboVNC except me. If anyone else had experienced this issue, I would have heard about it by now. I closed the issue because it's not a bug in TurboVNC. It is an issue with your custom Linux configuration. If you want to customize everything, that's your right, but you can't expect me to spend my unpaid labor diagnosing why your customizations broke a system component that is external to TurboVNC. I gave you a diagnostic strategy, but you don't appear to have followed it. I do not have time to install Ubuntu Server and attempt to replicate your configuration myself. You need to perform the diagnostic steps I requested. If you can make Ubuntu on Xorg work locally but not in TurboVNC, then I will reopen this as a TurboVNC bug report.

from turbovnc.

Heng-Zhou avatar Heng-Zhou commented on July 4, 2024

Did you try to start Ubuntu on Xorg from GDM, as I instructed?

It's server, as I explained clearly in my reply.

If you have to add all of the desktop components to Ubuntu Server in order to make TurboVNC work, then why wouldn't you just use Ubuntu Desktop?

Again, because it's server, as I explained clearly in my reply. PS, If everyone can use Ubuntu Desktop so easily, why would you develop VNC at all?

I did not read the following because I think that would simply be a waste of time.

from turbovnc.

dcommander avatar dcommander commented on July 4, 2024

Did you try to start Ubuntu on Xorg from GDM, as I instructed?

It's server, as I explained clearly in my reply.

I don't understand what you mean. If you have no way of verifying that GNOME/Xorg even works on the machine, then how can you expect GNOME/Xorg to work in TurboVNC?

If you have to add all of the desktop components to Ubuntu Server in order to make TurboVNC work, then why wouldn't you just use Ubuntu Desktop?

Again, because it's server, as I explained clearly in my reply. PS, If everyone can use Ubuntu Desktop so easily, why would you develop VNC at all?

My paying customers, meaning the organizations that have sponsored features in TurboVNC or that provide general sponsorship to fund the maintenance of the project, use either RHEL or Ubuntu Desktop (sometimes in containers these days.) I don't know if anyone has ever tested TurboVNC on Ubuntu Server. Since the window manager is an external component, the TurboVNC host has to have enough desktop components to run that window manager. I have no personal experience with Ubuntu Server. I am trying to help you, but Ubuntu Server is not one of the operating systems I test, because no one in the community has ever even asked about it until now. I do not have time to install Ubuntu Server, so short of that, what do you expect me to do?

from turbovnc.

dcommander avatar dcommander commented on July 4, 2024

The Ubuntu machine is a remote server. Ubuntu has two variants for download: Ubuntu Desktop and Ubuntu Server. I am using the server distro which does not contain GNOME by default. I think VNC software is intended and targeted for such a using scenario, for, what sense does it make to VNC a local GUI desktop? I have limited permission to run some sudo commands like installing some package or edit some configuration file in the system, but I can't do big things like reinstall Ubuntu Desktop.

To be clear, I was never asking you to install Ubuntu Desktop. I was just saying that that's the configuration that has been tested by the TurboVNC community. If the core of your complaint is that Ubuntu Server cannot run a full desktop environment, then that is something you need to take up with Ubuntu. TurboVNC is just an X server wrapped with a VNC server. It relies upon distribution-supplied infrastructure in order to run a window manager in that X server, and that distribution-supplied infrastructure is out of our control. I can only assume that it is possible to configure Ubuntu Server to run a full GNOME desktop environment, but there is no way to know that without attempting to run the desktop locally. I would have assumed that installing the ubuntu-gnome-desktop meta-package was enough, but apparently not. You don't have to literally convert your server into a desktop. You just need to install GDM and temporarily enable the graphical systemd target in order to verify whether Ubuntu on Xorg works. That is merely a diagnostic tool to help you understand which packages may be missing. It is not a requirement for you to convert your Ubuntu Server installation to an Ubuntu Desktop installation.

You might also try looking in ~/.xsession-errors to see if there are any obvious error messages during GNOME startup. But something in that execution chain is core dumping, which means that the window manager may not have been able to write an error message before aborting.

from turbovnc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.