Summary: | Feature request: Wayland remote login sessions with Plasma, like xrdp | ||
---|---|---|---|
Product: | [Plasma] KRdp | Reporter: | Matthias Klumpp <matthias> |
Component: | general | Assignee: | Unassigned bugs <unassigned-bugs-null> |
Status: | CONFIRMED --- | ||
Severity: | wishlist | CC: | ahiemstra, alex, belzebu87, bugs.kde.org.facelift226, bugs.kde.org, dashonwwIII, glizda, jackyzy823, julien.dlq, kde.bugs, kde, klaus.kusche, kubry, matthias, michal, nate, nerumo, ngompa13, nicolas.fella, notmart, oded, oseker, serdarthtux, tagwerk19, unblended_icing552, wiagn233, yukicanis |
Priority: | NOR | Keywords: | wayland-only |
Version First Reported In: | 6.1.0 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Matthias Klumpp
2024-02-27 22:52:08 UTC
There's already the beginning steps toward this with KRdp: https://invent.kde.org/plasma/krdp There’s also this effort by Google: https://mail.kde.org/pipermail/kde-devel/2024-February/002476.html with https://gitlab.freedesktop.org/jadahl/xdg-specs/-/merge_requests/1 Yep, this is planned for Plasma 6.1, or maybe 6.2 if it slips. *** Bug 479500 has been marked as a duplicate of this bug. *** KRFB Desktop Sharing is an application that is part of the KDE software suite that shares the X11 or Wayland screen over VNC. It is mature and has worked well for me for a long time now. Maybe it will suite your needs as well - at least until KRDP is ready. Arch has packaged krdp and it is now apart of the system settings. Can this be closed now? No, krdp does not work at all like xrdp yet. The whole session management part is missing (unless that has changed extremely recently) and you basically need to have physical access to the remote computer to make krdp viable. Check out https://wiki.archlinux.org/title/xrdp and https://github.com/neutrinolabs/xrdp?tab=readme-ov-file#features Same here. At my university, I currently run a headless linux terminal server for our students. It currently uses xrdp to offer Xfce desktop sessions, but I'd like to move to KDE sooner or later. RDP (not VNC) is a requirement. Most important things needed: * Virtual sessions, i.e. sessions for which no physical screen exists on the server. * Multiple users at the same time, each user having his own independent desktop session, running with his permissions and his environment. * User login and authentification using PAM. * If a user disconnects, his session should be preserved (except for sessions where the user explicitely logs out). If a user logs in, he should be reconnected to his existing session if such a session exists. Otherwise, a new session and desktop should be created for him. Moreover, perhaps compression should be configurable: The server has a high-bandwidth connection (10 Gbit), but no or a very low-end graphics card (typical for servers). So compressing 20 or 30 simultaneously connected user sessions could seriously suffer from CPU limitations (I don't know what xrdp does, but it shows neither bandwidth nor CPU load problems). *** Bug 423577 has been marked as a duplicate of this bug. *** I have been looking for the same thing coming from the VNC camp, but I think this applies equally here as KRFB and KRDP have the same scoping limitation when it comes to supporting this feature (they are to be launched from inside an already-running session). What KRFB does have, though I have not examined it, is the `krfb-virtualmonitor` utility which adds an output to an existing session using KWin's virtual backend. I will make an assumption that KRDP could utilise this backend as well (if anyone knows this is incorrect, please speak up.) For either app to be able to do what we seek -- launch a session with a virtual display as its primary (sole) output -- work is needed on the `startplasma_wayland` (or presumably now this will simply be `startplasma`) script. I have a report for this here: https://bugs.kde.org/show_bug.cgi?id=492285 There may be a chicken-and-egg flaw in this line of thought as my comprehension of the technologies involved is limited. If so, any clarifications are welcome. (In reply to Robin Bankhead from comment #10) > I have been looking for the same thing coming from the VNC camp, but I think You might find the following blog posts by Arjen Hiemstra interesting (if you haven't already read them): https://quantumproductions.info/articles/2023-08/remote-desktop-using-rdp-protocol-plasma-wayland https://quantumproductions.info/articles/2024-06/krdp-plasma-61 I asked Arjen by email at ahiemstra [at] heimr.nl on June 27th if he could write another blog post about current status but with no answer so far. Btw, can anyone confirm if it's the right email address? Generally I have a feeling that KDE devs could be sharing more information with users on directions and work being done (No, "This week in KDE" is not enough as it just lists recent changes without showing broader picture or going in depth like above posts). Another requirement for full remote desktop usage, i.e. full xrdp replacement: Support at least remote clipboard sharing and remote sharing of the client drives (filesystems) with the Microsoft Windows RDP client. xrdp already does this for virtual X11 sessions, we successfully use it. (at least for me, the other sharings, like sound sharing, printer sharing or usb device sharing, are not required). (In reply to Klaus Kusche from comment #12) > Another requirement for full remote desktop usage, i.e. full xrdp > replacement: > Support at least remote clipboard sharing and remote sharing of the client > drives (filesystems) with the Microsoft Windows RDP client. > xrdp already does this for virtual X11 sessions, we successfully use it. > > (at least for me, the other sharings, like sound sharing, printer sharing or > usb device sharing, are not required). Something you might want to look into as a workaround: Weston has an RDP backend (uses FreeRDP)[1]. In theory you could run that (using the kiosk shell to be totally unobtrusive), and run the Plasma session nested inside that. The Plasma session did work nested in Weston's (default) DRM backend; I tried its VNC backend but could not get it to work at all; I did not try the RDP backend, but if it works at all it should work for this technique. (I did have success nesting Plasma inside Cage, and using WayVNC. The Plasma session works well, though Firefox causes some input dysfunction.) Not wishing to drag this offtopic but thought the info might be helpful. [1] https://man.archlinux.org/man/extra/weston/weston-rdp.7.en (In reply to Robin Bankhead from comment #13) > (In reply to Klaus Kusche from comment #12) > > Another requirement for full remote desktop usage, i.e. full xrdp > > replacement: > > Support at least remote clipboard sharing and remote sharing of the client > > drives (filesystems) with the Microsoft Windows RDP client. > > xrdp already does this for virtual X11 sessions, we successfully use it. > > > > (at least for me, the other sharings, like sound sharing, printer sharing or > > usb device sharing, are not required). > > Something you might want to look into as a workaround: Weston has an RDP > backend (uses FreeRDP)[1]. In theory you could run that (using the kiosk > shell to be totally unobtrusive), and run the Plasma session nested inside > that. Thank's for the hint. As far as I can tell from the documentation, weston-rdp seems to lack the same features as Krdp: - It does not provide any user and session management: It does not authenticate RDP logins using PAM and it does not switch session ownership to the RDP user. - It does not seem to provide persistent sessions. - I does not seem to provide clipboard and drive sharing with the client. (as far as I know from xrdp, the server side of drive sharing is quite complex, requiring a fuse filesystem implementation). Just some idea: Why not write another plugin for xrdp instead of reinventing the wheel? Xrdp handles the user authentication, it handles the session management, it handles most parts of the RDP protocol including compression, it handles most of the clipboard and local drive sharing, it handles audio redirection, ... It would just require a driver plugin similar to xorgxrdp to connect the xrdp server to the wayland compositor. ... and it seems to be work in (slow) progress, see https://github.com/neutrinolabs/xrdp/issues/2637 There has been some progress with KRdp gaining PAM support: https://invent.kde.org/plasma/krdp/-/merge_requests/123 We don't yet have things wired up to handle all the auth methods that FreeRDP+PAM support, I think. |