Xpra-org / xpra

Persistent remote applications for X11; screen sharing for X11, MacOS and MSWindows.
https://xpra.org/
GNU General Public License v2.0
1.9k stars 164 forks source link

start-desktop does not work with cinnamon X11 session (black screen) #4328

Open Lanchon opened 4 weeks ago

Lanchon commented 4 weeks ago

Describe the bug start-desktop does not work with a cinnamon X11 session. client shows black screen, but sounds of the desktop starting can be heard on the client. happens for HW accelerated and 2D session types. happens with or without --opengl=off in the client command.

To Reproduce Steps to reproduce the behavior:

  1. server command: none
  2. client command:
    • xpra start-desktop --start=cinnamon-session ssh:server:100
    • xpra start-desktop --opengl=off --start=cinnamon-session ssh:server:100
    • xpra start-desktop --start=cinnamon-session --resize-display=1600x900 ssh:server:100
    • xpra start-desktop --opengl=off --start=cinnamon-session --resize-display=1600x900 ssh:server:100
    • xpra start-desktop --opengl=off --start=cinnamon-session-cinnamon --resize-display=1600x900 ssh:server:100
    • xpra start-desktop --opengl=off --start=cinnamon-session-cinnamon2d --resize-display=1600x900 ssh:server:100
  3. specific action to trigger the bug: none

System Information (please complete the following information):

Additional context on both sides: Desktop: Cinnamon v: 6.2.9 tk: GTK v: 3.24.41 wm: Muffin vt: 7 dm: LightDM v: 1.30.0 standard X11 session

note that although i'm reporting against mint 22 cinnamon, this already failed in mint 21 cinnamon. i didn't test on earlier versions.

totaam commented 4 weeks ago

happens with or without --opengl=off in the client command

This doesn't do anything server side, it only probes the opengl backend.

--start=cinnamon-session

Have you tried starting it from an xterm? Is there anything in your server log? Have you tried other desktops? Simple ones like fluxbox or openbox?

totaam commented 4 weeks ago

Works for me, as long as I am not logged in to X11 from the same user account. This looks like a "limitation" of cinnamon. I had it running simultaneously on two displays (main "physical" login on :0 and :10 I created via xpra start-desktop :10 --start=xterm) and when I clicked on some applications in the menu on :10, they showed up on :0!

Lanchon commented 4 weeks ago

Works for me, as long as I am not logged in to X11 from the same user account.

i am not either. in fact, X is not running, this server boots to the console. i need to type startx if i want the local DE.

when I clicked on some applications in the menu on :10, they showed up on :0!

interesting... i tried the above commands but changing :100 for :0 and there were no changes :(

Have you tried starting it from an xterm?

yes, no luck.

Is there anything in your server log?

i found nothing of value.

Have you tried other desktops? Simple ones like fluxbox or openbox?

no, i want to use cinnamon. im using it via XRDP without issues.

totaam commented 3 weeks ago

no, i want to use cinnamon

fluxbox is tiny to install and this gives you an important data point: is the problem with the window manager or with the xpra setup.

Also worth trying to install xpra from git master:

apt-get remove xpra
git clone https://github.com/Xpra-org/xpra
cd xpra
./setup.py dev-env
sudo ./setup.py install --prefix=/usr --install-layout=deb

ssh:server:100

BTW, this syntax has been deprecated for almost 10 years now - not sure where you got it from. Use ssh://HOST:PORT/DISPLAY

Lanchon commented 3 weeks ago

sorry this server is not critical, but it still is in production. i don't want to mess with it too much. i will wait for your next package release and test it and report here.

maybe this is related to the gstreamer freezing bug?

this syntax has been deprecated for almost 10 years now

lol am aware of the new syntax but i didn't know this one was deprecated. i just found it easier to type, as all my sshd are on port 22.

Lanchon commented 3 weeks ago

running xpra start-desktop --start=cinnamon-session --video-encoders=x264,vpx :100 on the server and then attaching to it results in black screen too.

totaam commented 3 weeks ago

do not work; you end up with a black screen too.

That's odd, in terms of behaviour, they're not so different from an xterm. What if you run them from the xterm?

I don't remember seeing any fixes that could explain this. I'll have to check with the proper 6.1.1 release, because there is something fundamentally wrong if fluxbox doesn't show up.


i just found it easier to type, as all my sshd are on port 22

You don't need to specify the port with the non-deprecated syntax either. For none of the transport protocols: https://github.com/Xpra-org/xpra/blob/80a3ba3116b3db37d612879639b097c73a300e53/xpra/net/common.py#L33-L41

Lanchon commented 3 weeks ago

What if you run them from the xterm?

i remember i ran cinnamon from xterm and it didn't work.

i'd suggest waiting for official 6.2 and then i'll re-test. if that doesn't fix it, you might want to install linux mint bare metal somewhere, preferably intel, to debug this. but keep in mind that i'm ok, i don't really need help because i'm using xrdp. my reason for posting issues is less that of my own convenience, but more me wanting to contribute to xpra, because i think it's a really cool project.

Lanchon commented 3 weeks ago

You don't need to specify the port with the non-deprecated syntax either.

lol i know! but not needing to specify ports made me not need the newer syntax, which although is definitely more rooted on established standards, is a little bit more verbose. that's all.