SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Rep:
tigervnc desktop sharing with wayland?
hi all, I can run tigervnc (from extra) on the host (running current) and connect to virtual desktops just fine, but I want to connect to the real physical desktop (for local support on my lan, so I'm not worried about external security).
I can use x0vncserver ~/.vnc/passwd
then connect from another pc running vnc (tightvnc viewer), but I just get a black screen. On the actual controlled pc the mouse dissappears but one gets the impression is is moved by the remote viewer.
I suspect this viewing issue is because I'm running wayland (startkwayland) rather than x11 on the host, but as that is the default for sddm, I suspect that others with have the same problem.
anyone any ideas.?
On Wayland/Plasma5 we need also the xdg-desktop-portal for any Wayland-based remote desktop solution to work.
This means everything starting with desktop sharing on Firefox or Chromium, ending with FreeRDP, the various VNC solutions or even TeamViewer or AnyDesk.
BUT, first of all, you need a functional PipeWire daemons setup, because it's used by Wayland/Plasma5 (any other Wayland-based DE) for capturing streams of windows or entire desktop, for example to give you the taskbar thumbnails or desktop sharing.
However, on Wayland you will need a Wayland based VNC server - things like x0vncserver will certainly not work.
Regarding TigerVNC and its zero support for Wayland, see there:
I for one, I would recommend you to read the posts form the following blog, where are many details about how screen/desktop sharing works on Wayland/Gnome (and Wayland/Plasma5)
So, out of curiosity I've tested (again) right now and the desktop sharing works on Wayland/Plasma5 of Slackware 15.0 RC1 latest updated, via KRDC server and client, IF it's added the xdg-desktop-portal.
The single additional package is xdg-desktop-portal-1.10.1, built by myself with a modified SBo script, and of course, the PipeWire daemons running.
The protocol used is VNC on the KRDC client (then probably other VNC clients will work too), and on the KRDC server the "screen capture" method is set to "pw" aka PipeWire.
Is not exactly what you imagined, but it works as in attached screenshot.
And how KRDC server permits to setup an "unattended access" you can probably use this to get a "VNC server" for Wayland/Plasma5.
In my humble opinion, it's sad that Mr. Volkerding does not add this really small xdg-desktop-portal package to Slackware, to have a fully functional desktop sharing on Wayland/Plasma5 .
That's is its size: 437K and probably nothing else than Wayland/Plasma5 interacts with it - I for one, I seen no adverse effects generated by its presence, and I have it installed since Plasma5 was in KTown.
Last edited by LuckyCyborg; 09-24-2021 at 10:10 AM.
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Original Poster
Rep:
Thanks for that info. I did look at the tigervnc issues wayland post mentioned earlier, so wondered how to do it.
LuckyCyborg, do you have the mods for that slackbuild you could share and I'll give it a go.?
Also, have you put in a request in the "requests for current" thread. as far as I know, Patrick does look at that.
I agree, since sddm defaults to wayland, tigervnc is no use for desktop sharing in that case. I'll look up the pipewire posts as well to see what I need to do there.
For my initial use case, I might just force using startx instead of wayland, but for all other cases it would be good to have a working method to do remote graphical assistance via sharing the desktop on a slack 15 system.
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Original Poster
Rep:
I just checked, and I did have xdg-desktop-portal in my system. I've done the config for pipewire as per https://www.linuxquestions.org/quest...0/#post6243016
and made sure pipewire was running, but although I enabled "unattended logging in" in krfb and set a password; when trying to connect from windows10 with tightvnc it causes the client to hang (and show nothing but the top window decoration with no "display" window below it).!
In krb, for the prefered frame buffer, the only one that did not error was qt. xcb and pw gave an error on the host.
On this particular device I changed from running startkwayland to startx and x0vncserver works just fine, so I have a work-around, but I'm not sure what I did wrong.(why it didn't work with wayland)
It would be nice to get it working with wayland, if anyone has more suggestions or troubleshooting pointers for me to try.
Well, I did another experiment with KRFB and KRDC on Wayland/Plasma5, of course with PipeWire daemons up and running.
First screenshot is after restarting the KRFB - after configuring "screen capture" to "pw" aka PipeWire, which is the single one working on Wayland/Plasma5 .
Please note the confirmation dialog for sharing the screen and input devices - this is NOT the KRFB, but the xdg-desktop-portal and confirming with "share" is a must.
The second screenshot is the target computer asking for accepting the incoming VNC connection.
The third screenshot is the KRDC started on the master computer (running also Slackware 15.0 RC1) doing a standard VNC session to Wayland/Plasma5 on target computer.
The fourth screenshot is the KRC started on the same master computer doing an unattended VNC session to Wayland/Plasma5 on target computer.
I for one, I believe that the "desktop sharing" works now as supposed on Wayland/Plasma5 , at least as Slackware to/from Slackware.
How this could be used to simulate a VNC server behavior of TigerVNC's alike is a theme of research for those interested. I think that the most laborious trick is to bypass the resources sharing dialog of xdg-desktop-portal or storing somehow the choice.
Also, probably would be interesting to find which thirdly party VNC clients are compatible with this design...
Last edited by LuckyCyborg; 09-27-2021 at 02:52 PM.
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Original Poster
Rep:
thanks for the response. When I try to run with pw set for "screen capture", I get an error from krfb saying "Failed to start the krfb server. Try setting another port in the settings and restart krfb". I've checked that vncserver (tigervnc) wasn't accidentally running, and that there was nothing already listening on 5900 with netstat. I've tried changing the port to 5901 and 5902, but still no joy. If i change back to "screen capture" being qt, krfb runs and I can connect, but although I can send keyboard input and mouse input to the host, the client can't see the host screen contents, but just sees a black screen.
I tried switching from pw to qt and back to pw to get the xdg-desktop-portal popup you showed in the screenshot, but it doesn't pop up. I had a go at running the xdg-desktop-portal binary manually, but that didn't help, and there isn't a man page for it.
do you know of a way to get the xdg-desktop-portal confirmation popup so that I can verify the settings are ok.?
thanks
Last edited by timsoft; 09-29-2021 at 11:48 AM.
Reason: correct error message
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Original Poster
Rep:
an update: I tried running krfb from a konsole, so I could see the terminal error messages when I get the "failed to start the krfb server ....." gui message.
Code:
krfb.framebuffer.pipewire: Failed to open drm render node: no such file or directory
Initializing D-Bus connectivity with XDG Desktop Portal
krfb.framebuffer.pipewire: Unsupported XDG Portal screencast interface version: 0
QObject::connect(Framebuffer, RfbServerManager): invalid nullptr parameter
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 699, resourece id: 2092717, major code: 40 (TranslateCoords), minor code: 0
(the last line is shown after I close the qui error message)
Distribution: slackware 15.0 64bit, 14.2 64 and 32bit and arm, ubuntu and rasbian
Posts: 495
Original Poster
Rep:
on further investigation it looks like krfb will not run using pipewire without drm which will not run on fbuff display, especially with nomodeset, so anyone without modesetting is out of luck/has to manually run x instead of wayland if they want to remote share the desktop.
I'll mark this closed for now. if anyone has a work-around to get pipewire running without modesetting/drm, please add to this thread.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.