Replies: 6 comments 3 replies
|
The library might be useful in general, but the enhanced use cases you might be imagining won't work for Sunshine simply because we don't run as a global service. How can a per-user Sunshine service run during a greeter login? Even if we force via enable-linger, Sunshine can't initialize when the system tray is enabled because there's no appropriate session to attach to. What happens if user X runs Sunshine but logs into user Y's session? I can imagine a lot of issues such as this. Aside from that, having a proper forked permission helper could enhance security compared to our drm worker, but I disagree with the notion that it's possible to make KMS capture a first-class citizen. KMS grab will always have the potential to cause conflict with compositors. Having said all that, libdrmtap might improve our KMS support, but I personally wouldn't be interested to implement this myself. |
|
Thank you for your response.
I thought sunshine had the option to run as a system service? That would fix the issues you mentioned right?
Could you briefly explain what are the possible issues here? |
Yeah, but my question is: running as a system service is not an option?
I don't use KDE, but i'm curious what causes such issues.
it's not just an annoyance, in a VM setup you risk locking yourself out completely. And even an unsafe shutdown or system crash corrupts the token and re-asks for permission, which is a deal breaker in such a setup. That's why i was focused on kms, because it provides an alternative path below the compositor. Thank you for your replies :) |
|
A global service is a non-starter, as it would be too insecure and circumvent the whole point of a drm worker thread or forked privileged helper as used by libdrmtap. The service model Sunshine uses simply doesn't work in the way you seem to want, where you can capture the greeter and all user sessions. Screencasting would depend on the compositor to be running in the per-user session, so even if we implemented a GNOME-specific screencast method, it wouldn't work on the login screen. All I can suggest is that you use autologin and always have a VNC or RDP connection available in case the Portal token becomes stale. |
|
Thanks for the suggestion, i had not thought about having another program as a fallback. |
Uh oh!
There was an error while loading. Please reload this page.
Select Topic Area
Feature Request
Body
Hi, i am curious to know if you are aware of this library
https://github.com/rustdesk-org/libdrmtap
what do you think of it?
could it be useful for sunshine? would it improve the kms backend?
is there any interest in adopting it?
i am currently struggling trying to setup a headless virtual machine with sunshine streaming.
kms capture would be the only proper way to stream the whole desktop. no getting locked out by permission prompt. no issues with login screens...
i know currently the kms backend is not recommended in favour of xdg, but are there really any drawbacks to using it? would this library make things easier sunshine-side, to make kms a first class citizen?
thank you in advance
All reactions