I'd like to be able to login to my remote Ubuntu 22.04 and see the Desktop as shown on that machine. (I know how to create a vncserver with a separate desktop instance). I have separate problems with the built-in Remote Desktop, so this is specifically about x11vnc and x0vncserver.
They have worked fine for me for years on 18.04 under Xfce.
Now on 22.04, they fail in similar ways, so I suspect this is really a Gnome or Xorg (or - is Compiz even a thing any more?) problem. This suspicion is made stronger by the fact that it works fine using gnome-session-flashback.
I have fiddled with many options for both x11vnc and x0vncserver, but my problem remains.
Short version: When I move a window, I see both the original window in its original position and the window in the new position. And perhaps a window or two in the path that the window was moved. E.g. here I started with a single terminal:
Then I moved the window:
Only the bottom-right one is interactive...
Now the trick... If I stop both the client and the vnc server, and start different client and vncservers, the move artifacts remain. Here is a reproduction recipe (here, "client" is the Debian machine running the vnc client, "server" is the Ubuntu 22.04 machine running a vnc server):
- Start with a freshly rebooted server.
- Connect the first time
- Start
x11vnc -usepw -display :0 -forever -rfbport 5901on the server - Connect with Remmina from the client
- In the vnc client:
- See one window (first screenshot above)
- Move the window
- See two or more windows (second screenshot above)
- Kill the Remmina client
- Kill the
x11vncserver process
- Start
- Connect a second time
- Start
x0vncserver -rfbport=5901 -PasswordFile=/home/peter/.vnc/passwd -display=:0 -fgon the server - Connect with
xtigervncviewerto the client - See two or more windows!!! The original already-moved window is still there. The "old position artifact" remains (but looks a little different notice that top-right is actually two overlapping windows):
- Start
So somehow the history of the original window position is stored on the server and survives an x11vnc/x0vncserver restart. Which leads me to believe that this really is a Gnome/Xorg/Compiz problem.
Edit: Additional data points
I tried installing
gnome-session-flashbackand when using a flashback sessionx11vncworks as I expect. But I don't actually want to rungnome-session-flashbackforever. I expect (but haven't tested) that e.g. XFCE will work fine too.I'm using the open source
amdgpudriver for myAdvanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] [1002:67ff] (rev ff)graphcis card. I tried installing and using the AMD proprietary drivers, and it made no difference.It also works fine in a VirtualBox virtual machine, that obviously doesn't use the AMD graphics drivers.
Has anybody seen something like this before? And knows how to fix it?


