Comment 73 for bug 1951491

Revision history for this message
EML (eml1) wrote :

Another datapoint. Just upgraded a laptop from 20.04 to 22.04.

1 - the laptop itself has no problem running Chromium or Firefox. When run from a terminal, DBUS_SESSION_BUS_ADDRESS is 'unix:path=/run/user/1000/bus'

2 - When connecting over vnc, using the 'normal' xstartup (which must have been on the net for 15-odd years), I see exactly this problem, but for 'session-5.scope'. DBUS_SESSION_BUS_ADDRESS is 'unix:abstract=/tmp/dbus-joEHty7pAj,guid=64e54e1c9ccf659527b095906389fcc0'. This xstartup is shown as config (1) below

3 - I'm using tigervnc. If I don't have a ~/.vnc/xstartup it defaults to /etc/X11/Xtigervnc-session (see /etc/tigervnc/vncserver-config-defaults). This is shown as config (2) below. When using this default, Chromium and Firefox work Ok, with the 'correct' DBUS_SESSION_BUS_ADDRESS

Ergo this is just one more problem with vnc/remote desktop setup, which is almost entirely unsupported on Ubuntu, Debian, and RedHat. Clearly the people running on bare metal have a slightly different issue, but I bet it has the same root cause. With config (1), I also get a pop-up saying that 'The application IBus Preferences has closed unexpectedly'. Note also, while I'm complaining, that this is the second snap issue that I've had to deal with today to get 22.04 running (see https://github.com/snapcore/snapd-desktop-integration/issues/23#issuecomment-1335072721). I also do a server image for 22.04.1, which has snap completely removed (because it is, in more ways than one, a waste of space), but Canonical seem to be going out of their way to make this impossible on desktop (ironic, since snap was meant to be for servers).

Config 1:

#!/bin/sh
# Start up the standard system desktop
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS

#/usr/bin/startxfce4
/usr/bin/gnome-session

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
x-window-manager &

Config 2:

#! /bin/sh

test x"$SHELL" = x"" && SHELL=/bin/bash
test x"$1" = x"" && set -- default

if test -r /etc/default/keyboard &&
   test -x /usr/bin/setxkbmap; then
  . /etc/default/keyboard
  /usr/bin/setxkbmap \
    -model "${XKBMODEL}" \
    -layout "${XKBLAYOUT}" \
    -variant "${XKBVARIANT}" \
    "${XKBOPTIONS}"
fi

tigervncconfig -iconic &
"$SHELL" -l <<EOF
exec /etc/X11/Xsession "$@"
EOF
tigervncserver -kill $DISPLAY