TurboVNC / turbovnc

Main TurboVNC repository
https://TurboVNC.org
GNU General Public License v2.0
746 stars 136 forks source link

Browser and other applications missing on Virtual Desktop #408

Open Daraan opened 3 months ago

Daraan commented 3 months ago

I am using TurboVNC 3.1.1 on Ubuntu 22.04.

Before I used it on Debian and had all programs availiable in the taskbar and favorites. Now on Ubuntu certain programs are missing, e.g. I have not yet found a way to start the browser. The icon in the taskbar is missing and it is also not listed in applications.

Other programs are also not found in applications and I have to start them from the terminal.

How can I get these applications back for it be like the "normal" desktop environment and alike to the experience I had on Debian?

dcommander commented 3 months ago

Does the same thing happen when you start the "Ubuntu on Xorg" session from GDM? Since you are using a new operating system, it is possible that there is some issue with the installation. I need to eliminate that as a possibility before proceeding to diagnose this as a TurboVNC bug.

Daraan commented 3 months ago

Thank you for the fast response. Can you do an idiot walkthrough for me, what you need me to do?

dcommander commented 3 months ago

Assuming you have access to the local display on the machine, you should see a login screen. (That screen is provided by GDM, the "GNOME Display Manager.") Click on your user name (or click on "Not listed" and type in your user name.) Then, on the password screen, you'll see a gear icon in the lower right. Click on the gear icon and select "Ubuntu on Xorg" before entering your password. Once you log in, verify whether the browser and other applications are still missing.

Daraan commented 3 months ago

I was not at the machine, there is no "Ubunto on Xorg" option. The two options are

On the local desktop both give me the normal view with the browser and favorite applications.


I assume something is not configures like it should for TurboVNC?


Some more infos not sure how relevant:

dcommander commented 3 months ago

That's weird. My Ubuntu 22.04 installation shows two Ubuntu session options, "Ubuntu" and "Ubuntu on Xorg", when Wayland is enabled in GDM (which is the default.) I wonder if whatever is causing that difference is also causing the issue you observe with TurboVNC. (To be clear, I cannot reproduce that issue on my system, and I just ran apt upgrade to install the latest Ubuntu 22.04 updates and still can't reproduce the issue.)

Whether or not Wayland is enabled in GDM or Xorg is installed/using the GPU doesn't matter for TurboVNC, since TurboVNC is an independent virtual X server. It only mattered for the purpose of testing whether the issue was reproducible on the local display.

Can you do the following and post the output?

$ ls -l /usr/share/xsessions/ubuntu*
$ for file in /usr/share/xsessions/ubuntu*; do echo "*** $file"; cat $file; done

Also please post the output of env from a GNOME terminal inside the TurboVNC session and the same from a GNOME terminal inside the local Ubuntu/Xorg session. You can e-mail me the files if you don't want to post them here.

Daraan commented 3 months ago
$ ls -l /usr/share/xsessions/ubuntu*
-rw-r--r-- 1 root root 292 Apr  7  2022 /usr/share/xsessions/ubuntu.desktop
-rw-r--r-- 1 root root 300 Apr  7  2022 /usr/share/xsessions/ubuntu-xorg.desktop
$ for file in /usr/share/xsessions/ubuntu*; do echo "*** $file"; cat $file; done
*** /usr/share/xsessions/ubuntu.desktop
[Desktop Entry]
Name=Ubuntu
Comment=This session logs you into Ubuntu
Exec=env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
TryExec=/usr/bin/gnome-shell
Type=Application
DesktopNames=ubuntu:GNOME
X-GDM-SessionRegisters=true
X-Ubuntu-Gettext-Domain=gnome-session-42

*** /usr/share/xsessions/ubuntu-xorg.desktop
[Desktop Entry]
Name=Ubuntu on Xorg
Comment=This session logs you into Ubuntu
Exec=env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu
TryExec=/usr/bin/gnome-shell
Type=Application
DesktopNames=ubuntu:GNOME
X-GDM-SessionRegisters=true
X-Ubuntu-Gettext-Domain=gnome-session-42

env # local

HELL=/bin/bash
SESSION_MANAGER=local/<XXXX>:@/tmp/.ICE-unix/158280,unix/<XXXX>:/tmp/.ICE-unix/158280
QT_ACCESSIBILITY=1
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu-wayland:/etc/xdg
SSH_AGENT_LAUNCHER=gnome-keyring
XDG_MENU_PREFIX=gnome-
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
CONDA_EXE=<XXXX>/bin/conda
_CE_M=
LANGUAGE=en
LC_ADDRESS=de_DE.UTF-8
GNOME_SHELL_SESSION_MODE=ubuntu
LC_NAME=de_DE.UTF-8
SSH_AUTH_SOCK=/run/user/<XXXX>/keyring/ssh
XMODIFIERS=@im=ibus
DESKTOP_SESSION=ubuntu-wayland
LC_MONETARY=de_DE.UTF-8
GTK_MODULES=gail:atk-bridge
PWD=<XXXX>
LOGNAME=<XXXX>
XDG_SESSION_DESKTOP=ubuntu-wayland
XDG_SESSION_TYPE=wayland
CONDA_PREFIX=<XXXX>miniconda3
SYSTEMD_EXEC_PID=164569
XAUTHORITY=/run/user/<XXXX>/.mutter-Xwaylandauth.30ZLK2
IM_CONFIG_CHECK_ENV=1
HOME=/home/<XXXX>
USERNAME=<XXXX>
IM_CONFIG_PHASE=1
LC_PAPER=de_DE.UTF-8
LANG=en_US.UTF-8

LS_COLORS=<I assume you do not need this>

XDG_CURRENT_DESKTOP=ubuntu:GNOME
VTE_VERSION=6800
WAYLAND_DISPLAY=wayland-0
CONDA_PROMPT_MODIFIER=(base) 
GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/c4b078fd_5e7b_406c_82c3_c4b50445cf74
GNOME_SETUP_DISPLAY=:2
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
PYTHONPATH=<XXXX>
TERM=xterm-256color
LC_IDENTIFICATION=de_DE.UTF-8
_CE_CONDA=
LESSOPEN=| /usr/bin/lesspipe %s
USER=<XXXX>
GNOME_TERMINAL_SERVICE=:1.228
CONDA_SHLVL=1
DISPLAY=:1
SHLVL=1
LC_TELEPHONE=de_DE.UTF-8
QT_IM_MODULE=ibus
LC_MEASUREMENT=de_DE.UTF-8
PAPERSIZE=a4
CLASSPATH=.:/usr/local/lib/antlr-4.10.1-complete.jar:
XDG_RUNTIME_DIR=/run/user/<XXXX>
CONDA_DEFAULT_ENV=base
LC_TIME=de_DE.UTF-8
XDG_DATA_DIRS=/usr/share/ubuntu-wayland:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
PATH=/home/<XXXX>/miniconda3/bin:/home/<XXXX>/miniconda3/condabin:/home/<XXXX>/.local/bin:/home/<XXXX>/.local/bin:/home/<XXXX>/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin
GDMSESSION=ubuntu-wayland
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/<XXXX>/bus
LC_NUMERIC=de_DE.UTF-8
_=/usr/bin/env
OLDPWD=<XXXX>

env #remote

SHELL=/bin/bash
SESSION_MANAGER=local/<xxxx>:@/tmp/.ICE-unix/230003,unix/<xxxx>:/tmp/.ICE-unix/230003
QT_ACCESSIBILITY=1
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
XDG_MENU_PREFIX=gnome-
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
GTK_IM_MODULE=ibus
CONDA_EXE=<xxxx>
_CE_M=
LANGUAGE=en
LC_ADDRESS=de_DE.UTF-8
GNOME_SHELL_SESSION_MODE=ubuntu
LC_NAME=de_DE.UTF-8
SSH_AUTH_SOCK=/tmp/ssh-XXXXXXvlcPGA/agent.230003
XMODIFIERS=@im=ibus
DESKTOP_SESSION=ubuntu
LC_MONETARY=de_DE.UTF-8
SSH_AGENT_PID=230085
GTK_MODULES=gail:atk-bridge
LOGNAME=<xxxx>
XDG_SESSION_DESKTOP=ubuntu
XDG_SESSION_TYPE=x11
CONDA_PREFIX=<xxxx>
GPG_AGENT_INFO=/run/user/<xxxx>/gnupg/S.gpg-agent:0:1
MOTD_SHOWN=pam
HOME=<xxxx>
LC_PAPER=de_DE.UTF-8
LANG=en_US.UTF-8
LS_COLORS=<shorted>
XDG_CURRENT_DESKTOP=ubuntu:GNOME
VNCDESKTOP=TurboVNC: <xxxx>:3 (<xxxx>)
VTE_VERSION=6800
CONDA_PROMPT_MODIFIER=(base) 
GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/<some hash>
SSH_CONNECTION=<local> <yyyy> <IP of remote> <xxxx>
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
VGL_COMPRESS=0
PYTHONPATH=<xxxx>
TERM=xterm-256color
LC_IDENTIFICATION=de_DE.UTF-8
_CE_CONDA=
LESSOPEN=| /usr/bin/lesspipe %s
USER=<xxxx>
GNOME_TERMINAL_SERVICE=:1.81
CONDA_SHLVL=1
DISPLAY=:3
SHLVL=1
LC_TELEPHONE=de_DE.UTF-8
QT_IM_MODULE=ibus
LC_MEASUREMENT=de_DE.UTF-8
PAPERSIZE=a4
CLASSPATH=.:/usr/local/lib/antlr-4.10.1-complete.jar:
CONDA_PYTHON_EXE=/home/<xxxx>/miniconda3/bin/python
XDG_RUNTIME_DIR=/run/user/<xxxx>
SSH_CLIENT=<local> <yyyy> <xxxx>
CONDA_DEFAULT_ENV=base
FONT_ENCODINGS_DIRECTORY=/usr/share/fonts/X11/encodings
LC_TIME=de_DE.UTF-8
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share/:/usr/share/
GDK_BACKEND=x11
PATH=/home/<xxxx>/miniconda3/bin:/home/<xxxx>/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
GDMSESSION=ubuntu
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-1afre3pxa9,guid=<do you need this?>
LC_NUMERIC=de_DE.UTF-8
VGL_PROBEGLX=0
_=/usr/bin/env
dcommander commented 3 months ago

Can you re-post the local environment variables from an Xorg session instead of a Wayland session? Thanks.

Daraan commented 3 months ago

Yah sure. Thank you too

I marked the lines that are different with # <--

SHELL=/bin/bash
SESSION_MANAGER=local/<XXXX>:@/tmp/.ICE-unix/3118,unix/<XXXX>:/tmp/.ICE-unix/3118 # <--
QT_ACCESSIBILITY=1
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg # <--
SSH_AGENT_LAUNCHER=gnome-keyring
XDG_MENU_PREFIX=gnome-
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
GTK_IM_MODULE=ibus # <--new
CONDA_EXE=<XXXX>/bin/conda
_CE_M=
LANGUAGE=en
LC_ADDRESS=de_DE.UTF-8
GNOME_SHELL_SESSION_MODE=ubuntu
LC_NAME=de_DE.UTF-8
SSH_AUTH_SOCK=/run/user/<XXXX>/keyring/ssh
XMODIFIERS=@im=ibus
DESKTOP_SESSION=ubuntu # <--
LC_MONETARY=de_DE.UTF-8
GTK_MODULES=gail:atk-bridge
PWD=<XXXX>
LOGNAME=<XXXX>
XDG_SESSION_DESKTOP=ubuntu # <--
XDG_SESSION_TYPE=x11 # <--
CONDA_PREFIX=<XXXX>miniconda3
GPG_AGENT_INFO=/run/user/<XXXX>/gnupg/S.gpg-agent:0:1 # <--new
SYSTEMD_EXEC_PID=3138 # <--
XAUTHORITY=/run/user/<XXXX>/gdm/Xauthority # <--
WINDOWPATH=2 # <--new
HOME=/home/<XXXX>
USERNAME=<XXXX>
IM_CONFIG_PHASE=1
LC_PAPER=de_DE.UTF-8
LANG=en_US.UTF-8

LS_COLORS=<I assume you do not need this>

XDG_CURRENT_DESKTOP=ubuntu:GNOME
VTE_VERSION=6800
CONDA_PROMPT_MODIFIER=(base) 
GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/<some hash>
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
PYTHONPATH=<XXXX>
TERM=xterm-256color
LC_IDENTIFICATION=de_DE.UTF-8
_CE_CONDA=
LESSOPEN=| /usr/bin/lesspipe %s
USER=<XXXX>
GNOME_TERMINAL_SERVICE=:1.90 # <--
CONDA_SHLVL=1
DISPLAY=:2 # <--
SHLVL=1
LC_TELEPHONE=de_DE.UTF-8
QT_IM_MODULE=ibus
LC_MEASUREMENT=de_DE.UTF-8
PAPERSIZE=a4
CLASSPATH=.:/usr/local/lib/antlr-4.10.1-complete.jar:
XDG_RUNTIME_DIR=/run/user/<xxxx>
CONDA_DEFAULT_ENV=base
LC_TIME=de_DE.UTF-8
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop # <--
PATH=/home/<XXXX>/miniconda3/bin:/home/<XXXX>/miniconda3/condabin:/home/<XXXX>/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/snap/bin
GDMSESSION=ubuntu # <--
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/<XXXX>/bus
LC_NUMERIC=de_DE.UTF-8
_=/usr/bin/env

I assume the display changed to 2 because I logged in via TurboVNC before login in after reboot. Ubuntu and "Ubuntu with Wayland" are still the only options in the login screen.

A apt upgrade was also done; not fixing the problem.

dcommander commented 3 months ago

I'll compare these to the results from my system when I get a chance, but at the moment I don't see any obvious explanation for the issue.

dcommander commented 2 months ago

This is just a hunch, but can you confirm that the gnome-session-common package is installed? The reason I ask is that the only seemingly relevant differences between your environment and mine are in the XDG_DATA_DIRS variable, and those differences could be explained by missing scripts under /etc/X11/Xsession.d that are normally installed with the gnome-session-common package. Otherwise, I'm afraid that I have no clue.

Daraan commented 1 month ago

Thank you for the reply. It seems to be installed: this is the output I get

$ dpkg -s gnome-session-common
Package: gnome-session-common
Status: install ok installed
Priority: optional
Section: gnome
Installed-Size: 232
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: all
Source: gnome-session
Version: 42.0-1ubuntu2
Replaces: gnome-session-bin (<< 3.37.0-2~)
Breaks: eog (<< 3.36.0), evince (<< 3.30), evolution (<< 3.30.0), gnome-session-bin (<< 3.37.0-2~)
Conffiles:
 /etc/X11/Xsession.d/55gnome-session_gnomerc 211b4a42640e9fe878403ce5da1befd1
 /etc/profile.d/gnome-session_gnomerc.sh cc2555f1c2afe873590cf3f80f76d349
 /etc/profile.d/xdg_dirs_desktop_session.sh 0c6c51063a48fdbf436e8ebab8776e0f

How does your variable/ paths look like?