Wayland support #45

Closed
opened 2026-02-20 22:21:00 -05:00 by deekerman · 134 comments
Owner

Originally created by @botiapa on GitHub (Jun 4, 2021).

I wanted to try out this application, as it seems very promising, however as I understand it doesn't currently support wayland. What would be needed for wayland support? Screen capture support, GUI, or something else?

Originally created by @botiapa on GitHub (Jun 4, 2021). I wanted to try out this application, as it seems very promising, however as I understand it doesn't currently support wayland. What would be needed for wayland support? Screen capture support, GUI, or something else?
Author
Owner

@rustdesk commented on GitHub (Jun 4, 2021):

screen capture and mouse/keyboard control

@rustdesk commented on GitHub (Jun 4, 2021): screen capture and mouse/keyboard control
Author
Owner

@rustdesk commented on GitHub (Jun 4, 2021):

for mouse/keyboard, https://github.com/ReimuNotMoe/ydotool or https://github.com/atx/wtype can help u

@rustdesk commented on GitHub (Jun 4, 2021): for mouse/keyboard, https://github.com/ReimuNotMoe/ydotool or https://github.com/atx/wtype can help u
Author
Owner

@botiapa commented on GitHub (Jun 4, 2021):

Screen capture is a bit trickier though, since gnome uses a whole different protocol than wlroots based compositors.

@botiapa commented on GitHub (Jun 4, 2021): Screen capture is a bit trickier though, since gnome uses a whole different protocol than wlroots based compositors.
Author
Owner

@rustdesk commented on GitHub (Jun 4, 2021):

Not sure if https://github.com/emersion/grim helps

@rustdesk commented on GitHub (Jun 4, 2021): Not sure if https://github.com/emersion/grim helps
Author
Owner

@botiapa commented on GitHub (Jun 4, 2021):

I think that's for screenshots only (maybe not fast enough for streaming). I know wf-recorder works on wlroots based compositors.

@botiapa commented on GitHub (Jun 4, 2021): I think that's for screenshots only (maybe not fast enough for streaming). I know wf-recorder works on wlroots based compositors.
Author
Owner

@rustdesk commented on GitHub (Jun 4, 2021):

maybe not fast

The bottleneck is the codec.

@rustdesk commented on GitHub (Jun 4, 2021): > maybe not fast The bottleneck is the codec.
Author
Owner

@botiapa commented on GitHub (Jun 4, 2021):

What are you using for encoding and decoding?

@botiapa commented on GitHub (Jun 4, 2021): What are you using for encoding and decoding?
Author
Owner

@rustdesk commented on GitHub (Jun 4, 2021):

vp9

@rustdesk commented on GitHub (Jun 4, 2021): vp9
Author
Owner

@h33p commented on GitHub (Jun 15, 2021):

So it appears scrap would need to support wayland screen capture for this to work fully, but it doesn't seem to be a very active repo. Pipewire appears to be the way to go with screen capture there, it would most likely block until the user selects the screen to share, but it would end up being efficient. I know zoom takes screenshots for wayland capture, and it's awful. I could give a look at building pipewire into a scrap fork, but I've never done it so no promises.

@h33p commented on GitHub (Jun 15, 2021): So it appears scrap would need to support wayland screen capture for this to work fully, but it doesn't seem to be a very active repo. Pipewire appears to be the way to go with screen capture there, it would most likely block until the user selects the screen to share, but it would end up being efficient. I know zoom takes screenshots for wayland capture, and it's awful. I could give a look at building pipewire into a scrap fork, but I've never done it so no promises.
Author
Owner

@rustdesk commented on GitHub (Jun 15, 2021):

I could give a look at building pipewire into a scrap fork

Looking forward to your scrap fork.

@rustdesk commented on GitHub (Jun 15, 2021): > I could give a look at building pipewire into a scrap fork Looking forward to your scrap fork.
Author
Owner

@rustdesk commented on GitHub (Jun 17, 2021):

clipboard etc:https://drewdevault.com/2019/02/10/Wayland-misconceptions-debunked.html

@rustdesk commented on GitHub (Jun 17, 2021): clipboard etc:https://drewdevault.com/2019/02/10/Wayland-misconceptions-debunked.html
Author
Owner

@rustdesk commented on GitHub (Jun 17, 2021):

KDE (krfb) and Gnome (gnome-remote-desktop)

@rustdesk commented on GitHub (Jun 17, 2021): KDE (krfb) and Gnome (gnome-remote-desktop)
Author
Owner

@rustdesk commented on GitHub (Jun 17, 2021):

nomachine wayland support limitations: https://knowledgebase.nomachine.com/AR02P00969

@rustdesk commented on GitHub (Jun 17, 2021): nomachine wayland support limitations: https://knowledgebase.nomachine.com/AR02P00969
Author
Owner

@rustdesk commented on GitHub (Jun 17, 2021):

I'm guessing they mean the ScreenCast component of xdg-desktop-portal, which AFAIK is supported by all three major players. Plasma, Sway, GNOME. You could probably take obs-xdg-desktop-portal or WayRec as examples on how to implement it.

@rustdesk commented on GitHub (Jun 17, 2021): > I'm guessing they mean the ScreenCast component of xdg-desktop-portal, which AFAIK is supported by all three major players. Plasma, Sway, GNOME. You could probably take obs-xdg-desktop-portal or WayRec as examples on how to implement it.
Author
Owner

@xeechou commented on GitHub (Jun 17, 2021):

Hi, I am the author of a Wayland compositor, so I can provide a little bit idea here, for it to work with Wayland, you basically need a server (for example VNC) as a Wayland client doing the screen capture (read the compositor) then send it over to your application over network.

It's a bit hustle as there is no standard protocol for screen capture, fortunately the new effort of xdg-desktop-portal (a dbus front service) for providing what you neeed.

@xeechou commented on GitHub (Jun 17, 2021): Hi, I am the author of a Wayland compositor, so I can provide a little bit idea here, for it to work with Wayland, you basically need a server (for example VNC) as a Wayland client doing the screen capture (read the compositor) then send it over to your application over network. It's a bit hustle as there is no standard protocol for screen capture, fortunately the new effort of xdg-desktop-portal (a dbus front service) for providing what you neeed.
Author
Owner

@H-M-H commented on GitHub (Jun 17, 2021):

I'd recommend looking into pipewire, if you use the gstreamer plugin it is not that bad to implement, you may want to have a look at my implementation here: https://github.com/H-M-H/Weylus/blob/master/src/capturable/pipewire.rs. Pipewire is supported by gnome, kde and wlroots based compositors, so there are already quite some compositors supporting it. You may hit some bugs though, I have documented that here: https://github.com/H-M-H/Weylus/issues/3#issuecomment-808940593

As for input, for my project I use uinput, it requires some meddling with the write permission of /dev/uinput though, so I am not sure if it is suitable for this project. There also is https://flatpak.github.io/xdg-desktop-portal/portal-docs.html#gdbus-org.freedesktop.portal.RemoteDesktop but I do not know the implementation status of that among desktops.

@H-M-H commented on GitHub (Jun 17, 2021): I'd recommend looking into pipewire, if you use the gstreamer plugin it is not that bad to implement, you may want to have a look at my implementation here: https://github.com/H-M-H/Weylus/blob/master/src/capturable/pipewire.rs. Pipewire is supported by gnome, kde and wlroots based compositors, so there are already quite some compositors supporting it. You may hit some bugs though, I have documented that here: https://github.com/H-M-H/Weylus/issues/3#issuecomment-808940593 As for input, for my project I use [uinput](https://www.kernel.org/doc/html/latest/input/uinput.html), it requires some meddling with the write permission of /dev/uinput though, so I am not sure if it is suitable for this project. There also is https://flatpak.github.io/xdg-desktop-portal/portal-docs.html#gdbus-org.freedesktop.portal.RemoteDesktop but I do not know the implementation status of that among desktops.
Author
Owner

@rustdesk commented on GitHub (Jun 18, 2021):

H-M-H/Weylus

Great job, Thank you so much.

@rustdesk commented on GitHub (Jun 18, 2021): > [H-M-H/Weylus](https://github.com/H-M-H/Weylus/issues/3#issuecomment-808940593) Great job, Thank you so much.
Author
Owner

@rustdesk commented on GitHub (Jun 18, 2021):

@H-M-H
Advertise your project, HAHA

@rustdesk commented on GitHub (Jun 18, 2021): @H-M-H [Advertise your project](https://www.reddit.com/r/linux/comments/o1nbqu/rustdeskrustdesk_yet_another_remote_desktop/h26e04j?utm_source=share&utm_medium=web2x&context=3), HAHA
Author
Owner

@rustdesk commented on GitHub (Jun 30, 2021):

@RustDesk You know, Waypipe could be wrapped and provide a Parsec like experience for Linux to Linux https://gitlab.freedesktop.org/mstoeckl/waypipe

@rustdesk commented on GitHub (Jun 30, 2021): > @RustDesk You know, Waypipe could be wrapped and provide a Parsec like experience for Linux to Linux https://gitlab.freedesktop.org/mstoeckl/waypipe
Author
Owner

@rustdesk commented on GitHub (Jul 17, 2021):

@H-M-H can I use your pipewire code in this project?

@rustdesk commented on GitHub (Jul 17, 2021): @H-M-H can I use your pipewire code in this project?
Author
Owner

@H-M-H commented on GitHub (Jul 19, 2021):

Weylus is licensed under the AGPL but I am fine if you use my code for pipewire (github.com/H-M-H/Weylus@4679d5220e/src/capturable/pipewire.rs and github.com/H-M-H/Weylus@4679d5220e/src/capturable/pipewire_dbus.rs) under the GPL-3.

@H-M-H commented on GitHub (Jul 19, 2021): Weylus is licensed under the AGPL but I am fine if you use my code for pipewire (https://github.com/H-M-H/Weylus/blob/4679d5220ebfe0ecd79f33368f04353d658b0491/src/capturable/pipewire.rs and https://github.com/H-M-H/Weylus/blob/4679d5220ebfe0ecd79f33368f04353d658b0491/src/capturable/pipewire_dbus.rs) under the GPL-3.
Author
Owner

@rustdesk commented on GitHub (Jul 21, 2021):

The org.freedesktop.portal.ScreenCast inferface is missing in the version shipped with Ubuntu 20.04 / 20.10.
https://bugs.launchpad.net/ubuntu/+source/xdg-desktop-portal/+bug/1879580

systemctl --user status xdg-desktop-portal-gtk.service
https://phabricator.kde.org/D20402?id=55800
https://gitlab.gnome.org/feaneron/obs-xdg-portal
https://flatpak.github.io/xdg-desktop-portal/portal-docs.html#gdbus-method-org-freedesktop-portal-ScreenCast.SelectSources
https://www.gitmemory.com/issue/flatpak/xdg-desktop-portal-gtk/296/837475656
dbus-monitor path=/org/freedesktop/portal/desktop

@rustdesk commented on GitHub (Jul 21, 2021): The `org.freedesktop.portal.ScreenCast` inferface is missing in the version shipped with Ubuntu 20.04 / 20.10. https://bugs.launchpad.net/ubuntu/+source/xdg-desktop-portal/+bug/1879580 > systemctl --user status xdg-desktop-portal-gtk.service https://phabricator.kde.org/D20402?id=55800 https://gitlab.gnome.org/feaneron/obs-xdg-portal https://flatpak.github.io/xdg-desktop-portal/portal-docs.html#gdbus-method-org-freedesktop-portal-ScreenCast.SelectSources https://www.gitmemory.com/issue/flatpak/xdg-desktop-portal-gtk/296/837475656 dbus-monitor path=/org/freedesktop/portal/desktop
Author
Owner

@rustdesk commented on GitHub (Jul 22, 2021):

@H-M-H do you know how to avoid "showing a privileged screenshot dialog every time you make a request"?
https://www.reddit.com/r/rust/comments/o99rtb/seeking_for_a_cross_platform_screencapture_crate/

@rustdesk commented on GitHub (Jul 22, 2021): @H-M-H do you know how to avoid "showing a privileged screenshot dialog every time you make a request"? https://www.reddit.com/r/rust/comments/o99rtb/seeking_for_a_cross_platform_screencapture_crate/
Author
Owner

@H-M-H commented on GitHub (Jul 23, 2021):

I do not know a way around this except using compositor specific APIs (https://github.com/H-M-H/Weylus/issues/3#issuecomment-652670480), which is not exactly desirable.

@H-M-H commented on GitHub (Jul 23, 2021): I do not know a way around this except using compositor specific APIs (https://github.com/H-M-H/Weylus/issues/3#issuecomment-652670480), which is not exactly desirable.
Author
Owner

@rustdesk commented on GitHub (Jul 23, 2021):

I do not know a way around this except using compositor specific APIs (H-M-H/Weylus#3 (comment)), which is not exactly desirable.

I see OBS does not have dialog poped up, but its screen/display capture does not work(black screen, but cursor captured), window capture works fine.

@rustdesk commented on GitHub (Jul 23, 2021): > I do not know a way around this except using compositor specific APIs ([H-M-H/Weylus#3 (comment)](https://github.com/H-M-H/Weylus/issues/3#issuecomment-652670480)), which is not exactly desirable. I see OBS does not have dialog poped up, but its screen/display capture does not work(black screen, but cursor captured), window capture works fine.
Author
Owner

@H-M-H commented on GitHub (Jul 23, 2021):

No dialog and a black screen except for the cursor sounds very much like XWayland, are you sure pipewire is used?

@H-M-H commented on GitHub (Jul 23, 2021): No dialog and a black screen except for the cursor sounds very much like XWayland, are you sure pipewire is used?
Author
Owner

@rustdesk commented on GitHub (Jul 23, 2021):

XWayland

Yes, it is xwayland

@rustdesk commented on GitHub (Jul 23, 2021): > XWayland Yes, it is xwayland
Author
Owner

@rustdesk commented on GitHub (Jul 23, 2021):

https://github.com/obsproject/obs-studio/pull/4287 also has system dialog pops up

@rustdesk commented on GitHub (Jul 23, 2021): https://github.com/obsproject/obs-studio/pull/4287 also has system dialog pops up
Author
Owner

@rustdesk commented on GitHub (Jul 23, 2021):

first commit github.com/rustdesk/rustdesk@c15c44788c

@rustdesk commented on GitHub (Jul 23, 2021): first commit https://github.com/rustdesk/rustdesk/commit/c15c44788c1171820abb64de6e58a2c586d09b66
Author
Owner

@rustdesk commented on GitHub (Aug 11, 2021):

https://github.com/obv-mikhail/InputBot but have to run in root

@rustdesk commented on GitHub (Aug 11, 2021): https://github.com/obv-mikhail/InputBot but have to run in root
Author
Owner

@damnkrat commented on GitHub (Jan 15, 2022):

What about looking through obs-studio code? It can stream video on the wayland

@damnkrat commented on GitHub (Jan 15, 2022): What about looking through obs-studio code? It can stream video on the wayland
Author
Owner

@macpijan commented on GitHub (Feb 15, 2022):

I'm not sure if it fits here, but I've used the backend-vnc for Wayland in one of the projects (https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/362) and it worked quite well.

EDIT:

Actually, I probably should have said that the backend-vnc is for weston compositor.
It uses https://github.com/any1/neatvnc library.

The same library is also used in the wayvnc, which is VNC server for wlroots-based compositors https://github.com/any1/wayvnc

The problem might be that e.g. GNOME uses neither of these (it uses mutter AFAIK). I'm not sure what KDE uses.

@macpijan commented on GitHub (Feb 15, 2022): I'm not sure if it fits here, but I've used the backend-vnc for Wayland in one of the projects (https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/362) and it worked quite well. EDIT: Actually, I probably should have said that the backend-vnc is for weston compositor. It uses https://github.com/any1/neatvnc library. The same library is also used in the wayvnc, which is VNC server for wlroots-based compositors https://github.com/any1/wayvnc The problem might be that e.g. GNOME uses neither of these (it uses mutter AFAIK). I'm not sure what KDE uses.
Author
Owner

@ThatOneCalculator commented on GitHub (May 17, 2022):

Any update on Wayland support?

@ThatOneCalculator commented on GitHub (May 17, 2022): Any update on Wayland support?
Author
Owner

@rustdesk commented on GitHub (May 17, 2022):

Any update on Wayland support?

hope some one can help

@rustdesk commented on GitHub (May 17, 2022): > Any update on Wayland support? hope some one can help
Author
Owner

@bt90 commented on GitHub (May 19, 2022):

Teamviewer also went with the xdg-desktop-portal solution. This seems like the best approach to add compositor independent wayland support.

https://community.teamviewer.com/English/discussion/122410/teamviewer-support-on-wayland-experimental-state-%F0%9F%A7%AA

@bt90 commented on GitHub (May 19, 2022): Teamviewer also went with the `xdg-desktop-portal` solution. This seems like the best approach to add compositor independent wayland support. https://community.teamviewer.com/English/discussion/122410/teamviewer-support-on-wayland-experimental-state-%F0%9F%A7%AA
Author
Owner

@rustdesk commented on GitHub (May 19, 2022):

Teamviewer also went with the xdg-desktop-portal solution.

Thanks.

@rustdesk commented on GitHub (May 19, 2022): > Teamviewer also went with the `xdg-desktop-portal` solution. Thanks.
Author
Owner

@R030t1 commented on GitHub (May 22, 2022):

Just to temper everyone's expectations here, this project (or any similar project) will likely never support Wayland, by design. Wayland does not want to allow you to do the things that this project needs to do, end of story, you're wrong per the Wayland developers, don't ask for support.

You can target a desktop environment/window manager if the manager provides an API for accessing those things as X11 currently does. So, putting two and two together, either we need to wait for each WM/DE to implement its own access/automation/accessibility API and then cater to each one or just continue to use X11 (nested in Wayland), or longer term, an X11-like shim layer may be made for Wayland.

@R030t1 commented on GitHub (May 22, 2022): Just to temper everyone's expectations here, this project (or any similar project) will likely never support Wayland, by design. Wayland does not want to allow you to do the things that this project needs to do, end of story, you're wrong per the Wayland developers, don't ask for support. You can target a desktop environment/window manager if the manager provides an API for accessing those things as X11 currently does. So, putting two and two together, either we need to wait for each WM/DE to implement its own access/automation/accessibility API and then cater to each one or just continue to use X11 (nested in Wayland), or longer term, an X11-like shim layer may be made for Wayland.
Author
Owner

@rustdesk commented on GitHub (May 22, 2022):

expectations

You are right, but normal users do not know and want to accept the fact. We are working on starting X when users are using Wayland.

@rustdesk commented on GitHub (May 22, 2022): > expectations You are right, but normal users do not know and want to accept the fact. We are working on starting X when users are using Wayland.
Author
Owner

@bt90 commented on GitHub (May 22, 2022):

@R030t1 i'd agree for unattended access.Everything else is covered by xdg-desktop-portal.

@bt90 commented on GitHub (May 22, 2022): @R030t1 i'd agree for **unattended** access.Everything else is covered by xdg-desktop-portal.
Author
Owner

@rustdesk commented on GitHub (May 22, 2022):

unattended access

Who will use a remote desktop application without unattended access?

@rustdesk commented on GitHub (May 22, 2022): > **unattended** access Who will use a remote desktop application without unattended access?
Author
Owner

@bt90 commented on GitHub (May 22, 2022):

At least my typical usecase is remote support for other people. Telling them to click "allow" in order for me to connect isn't a dealbreaker.

It's also possible that xdg-desktop-portal might add a mechanism which allows to setup secure unattended access in the future. You should probably open an issue and discuss this with their devs.

@bt90 commented on GitHub (May 22, 2022): At least my typical usecase is remote support for other people. Telling them to click "allow" in order for me to connect isn't a dealbreaker. It's also possible that xdg-desktop-portal might add a mechanism which allows to setup secure unattended access in the future. You should probably open an issue and discuss this with their devs.
Author
Owner

@maverick74 commented on GitHub (May 22, 2022):

I have to say that I have never needed unattended access.
while I do imagine it maybe useful in some cases, until now, like @bt90, I've just been using it to support (friends, coworkers, etc). Now I'm permanently using windows quick assist... But there's a problem: I can't do it from my Linux machine.

So, in my case, I don't need unattended access... (that's also a great way to stop me from working when I shouldn't!!! Ahah)

@maverick74 commented on GitHub (May 22, 2022): I have to say that I have never needed unattended access. while I do imagine it maybe useful in some cases, until now, like @bt90, I've just been using it to support (friends, coworkers, etc). Now I'm permanently using windows quick assist... But there's a problem: I can't do it from my Linux machine. So, in my case, I don't need unattended access... (that's also a great way to stop me from working when I shouldn't!!! Ahah)
Author
Owner

@daegalus commented on GitHub (May 22, 2022):

I will say that it's a shame to read unattended access is not possible atm. But I rather have Wayland support drop without it.

There is a huge lack of remote desktop solutions for Wayland.

  1. Most are built for wlroots, so only stuff like sway are supported.
  2. Krfb, the KDE remote desktop has a bad big where it doesn't send keyboard and mouse events, making it useless. Bug has been open for over a year.
  3. Gnome has a built in one built on RDP that works 50% of the time.
  4. Anydesk and TeamViewer don't support it.
  5. NX says they support it, but it doesn't work.

So I'm hoping Rustdesk can fill the void. I read XDG Portal is the right way to implement it, along with pipewire for the actual video/audio data. Hopefully XDG Portal gets unattended access eventually.

Unattended access is important to me as I use remote desktop to access my own computers easily.

@daegalus commented on GitHub (May 22, 2022): I will say that it's a shame to read unattended access is not possible atm. But I rather have Wayland support drop without it. There is a huge lack of remote desktop solutions for Wayland. 1. Most are built for wlroots, so only stuff like sway are supported. 2. Krfb, the KDE remote desktop has a bad big where it doesn't send keyboard and mouse events, making it useless. Bug has been open for over a year. 3. Gnome has a built in one built on RDP that works 50% of the time. 4. Anydesk and TeamViewer don't support it. 5. NX says they support it, but it doesn't work. So I'm hoping Rustdesk can fill the void. I read XDG Portal is the right way to implement it, along with pipewire for the actual video/audio data. Hopefully XDG Portal gets unattended access eventually. Unattended access is important to me as I use remote desktop to access my own computers easily.
Author
Owner

@rustdesk commented on GitHub (May 22, 2022):

Unattended

can you accept we start a new X(xfce) for unattended access?

@rustdesk commented on GitHub (May 22, 2022): > Unattended can you accept we start a new X(xfce) for unattended access?
Author
Owner

@daegalus commented on GitHub (May 22, 2022):

Unattended

can you accept we start a new X(xfce) for unattended access?

Will that create a new "desktop" or stream the existing desktop.

A lot of the things I do, I need to pull up existing windows, and leave windows open for when I sit down in front of that computer again?

Though I can accept a new X for unattended as a temporary solution. I can make that work as needed.

I appreciate you taking the time and even considering this feature. You are filling a huge void and i understand you can only do so much with the apis provided.

@daegalus commented on GitHub (May 22, 2022): > > Unattended > > can you accept we start a new X(xfce) for unattended access? Will that create a new "desktop" or stream the existing desktop. A lot of the things I do, I need to pull up existing windows, and leave windows open for when I sit down in front of that computer again? Though I can accept a new X for unattended as a temporary solution. I can make that work as needed. I appreciate you taking the time and even considering this feature. You are filling a huge void and i understand you can only do so much with the apis provided.
Author
Owner

@rustdesk commented on GitHub (May 22, 2022):

a new "desktop"

no way for unattended access existing desktop.

@rustdesk commented on GitHub (May 22, 2022): > a new "desktop" no way for unattended access existing desktop.
Author
Owner

@daegalus commented on GitHub (May 22, 2022):

a new "desktop"

no way for unattended access existing desktop.

Understood, i think this is better than nothing, until XDG Portal changes.

@daegalus commented on GitHub (May 22, 2022): > > a new "desktop" > > no way for unattended access existing desktop. Understood, i think this is better than nothing, until XDG Portal changes.
Author
Owner

@daegalus commented on GitHub (May 24, 2022):

Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: https://github.com/flatpak/xdg-desktop-portal/issues/324

@daegalus commented on GitHub (May 24, 2022): Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: https://github.com/flatpak/xdg-desktop-portal/issues/324
Author
Owner

@rustdesk commented on GitHub (May 24, 2022):

@Daegalus Thank you very much

@rustdesk commented on GitHub (May 24, 2022): @Daegalus Thank you very much
Author
Owner

@maverick74 commented on GitHub (May 25, 2022):

Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: flatpak/xdg-desktop-portal#324

KDE, apparently, has already implemented the fix as well (since 2022-04-07)!
See Implement screencast session restore

@maverick74 commented on GitHub (May 25, 2022): > Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: [flatpak/xdg-desktop-portal#324](https://github.com/flatpak/xdg-desktop-portal/issues/324) KDE, apparently, has already implemented the fix as well (since 2022-04-07)! See [Implement screencast session restore ](https://bugs.kde.org/show_bug.cgi?id=445875)
Author
Owner

@fufesou commented on GitHub (Jun 7, 2022):

Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: flatpak/xdg-desktop-portal#324

KDE, apparently, has already implemented the fix as well (since 2022-04-07)! See Implement screencast session restore

A simple summary here.

Unattended access can be implemented, but xdg-desktop-portal minimun version is requered.

xdg-desktop-portal has added restore_token since version 4.
Although the token can only be used once.
It is possible to stoe and set restore_token the value returned by last org.freedesktop.portal.ScreenCast.Start. org.freedesktop.portal.ScreenCast.Start will store the token every time on start_done if the backend support restore_data.

The minimun version is 1.12.0 since 21-12-2021.

The backends are not well supported for now.
xdg-desktop-portal-gnome and xdg-desktop-portal-kde support restore_data.
xdg-desktop-portal-gtk and xdg-desktop-portal-wlr do not support restore_data.

@fufesou commented on GitHub (Jun 7, 2022): > > Just for tracking purposes, I think I found an XDG Portal issue that we can track for support for unattended access. The last comment has links to the variosu implementation status, looks like Gnome already has it implemented: [flatpak/xdg-desktop-portal#324](https://github.com/flatpak/xdg-desktop-portal/issues/324) > > KDE, apparently, has already implemented the fix as well (since 2022-04-07)! See [Implement screencast session restore ](https://bugs.kde.org/show_bug.cgi?id=445875) A simple summary here. Unattended access can be implemented, but [xdg-desktop-portal](https://flatpak.github.io/xdg-desktop-portal) minimun version is requered. [xdg-desktop-portal](https://flatpak.github.io/xdg-desktop-portal) has added [restore_token](https://flatpak.github.io/xdg-desktop-portal/#gdbus-method-org-freedesktop-portal-ScreenCast.SelectSources:~:text=of%20this%20interface.-,restore_token,-s) since version 4. Although the token can only be used once. It is possible to stoe and set `restore_token` the value returned by last [org.freedesktop.portal.ScreenCast](https://flatpak.github.io/xdg-desktop-portal/#gdbus-interface-org-freedesktop-portal-ScreenCast.top_of_page).Start. [org.freedesktop.portal.ScreenCast](https://flatpak.github.io/xdg-desktop-portal/#gdbus-interface-org-freedesktop-portal-ScreenCast.top_of_page).Start will [store](https://github.com/flatpak/xdg-desktop-portal/blob/067306d2bca38d7e733ed8b06b0408ae4fdd49b1/src/screen-cast.c#L983) the token every time on [start_done](https://github.com/flatpak/xdg-desktop-portal/blob/067306d2bca38d7e733ed8b06b0408ae4fdd49b1/src/screen-cast.c#L1072) if the backend support [restore_data](https://flatpak.github.io/xdg-desktop-portal/#gdbus-org.freedesktop.impl.portal.ScreenCast:~:text=Default%20is%20no.-,restore_data,-(suv)). The minimun version is [1.12.0](https://github.com/flatpak/xdg-desktop-portal/releases?q=restore&expanded=true#:~:text=screncast%3A%20Allow%20restoring%20previous%20sessions) since 21-12-2021. The backends are not well supported for now. [xdg-desktop-portal-gnome](https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/) and [xdg-desktop-portal-kde](https://github.com/KDE/xdg-desktop-portal-kde) support `restore_data`. [xdg-desktop-portal-gtk](http://github.com/flatpak/xdg-desktop-portal-gtk) and [xdg-desktop-portal-wlr](https://github.com/emersion/xdg-desktop-portal-wlr) do not support `restore_data`.
Author
Owner

@maverick74 commented on GitHub (Jun 7, 2022):

@fufesou so this means it would work well on gnome and kde (if the distro ships version > 1.12.0) but not on the rest?

@maverick74 commented on GitHub (Jun 7, 2022): @fufesou so this means it would work well on gnome and kde (if the distro ships version > 1.12.0) but not on the rest?
Author
Owner

@fufesou commented on GitHub (Jun 7, 2022):

@fufesou so this means it would work well on gnome and kde (if the distro ships version > 1.12.0) but not on the rest?

The version is for xdg-desktop-portal.
gnome and kde have their own backend implmentations for xdg-desktop-portal intefaces.
Their own implemtations must also support restore_data.

@fufesou commented on GitHub (Jun 7, 2022): > @fufesou so this means it would work well on gnome and kde (if the distro ships version > 1.12.0) but not on the rest? The version is for [xdg-desktop-portal](https://flatpak.github.io/xdg-desktop-portal). gnome and kde have their own backend implmentations for `xdg-desktop-portal` intefaces. Their own implemtations must also support [restore_data](https://flatpak.github.io/xdg-desktop-portal/#gdbus-org.freedesktop.impl.portal.ScreenCast:~:text=Default%20is%20no.-,restore_data,-(suv)).
Author
Owner

@rustdesk commented on GitHub (Jun 13, 2022):

uinput

@H-M-H have you ever tried wtype https://github.com/atx/wtype?

@rustdesk commented on GitHub (Jun 13, 2022): > [uinput](https://www.kernel.org/doc/html/latest/input/uinput.html) @H-M-H have you ever tried wtype https://github.com/atx/wtype?
Author
Owner

@Ashark commented on GitHub (Jul 13, 2022):

I wanted to mention the netstick utility https://github.com/moslevin/netstick.
Probably its idea could be used by rustdesk. It sends keyboard and mouse events via network.

@Ashark commented on GitHub (Jul 13, 2022): I wanted to mention the netstick utility https://github.com/moslevin/netstick. Probably its idea could be used by rustdesk. It sends keyboard and mouse events via network.
Author
Owner

@Victor4X commented on GitHub (Jul 23, 2022):

If we could get keyboard working for a wayland self connecting to a windows machine, that would be enough for 90% of my use cases. Is this what we are discussing options for in the above comments, or do we have a set path forward for implementing this?

I see in #932 that: "Self side cannot be wayland. Keyboard and mouse are not hooked to listen" is this wrongfully trivializing the problem in my mind, or am I able to poke around and get it to work a little by myself?

@Victor4X commented on GitHub (Jul 23, 2022): If we could get keyboard working for a wayland self connecting to a windows machine, that would be enough for 90% of my use cases. Is this what we are discussing options for in the above comments, or do we have a set path forward for implementing this? I see in #932 that: "Self side cannot be wayland. Keyboard and mouse are not hooked to listen" is this wrongfully trivializing the problem in my mind, or am I able to poke around and get it to work a little by myself?
Author
Owner

@fufesou commented on GitHub (Jul 24, 2022):

We're now trying to implement input listening on Wayland.

@fufesou commented on GitHub (Jul 24, 2022): We're now trying to implement input listening on Wayland.
Author
Owner

@hboetes commented on GitHub (Jul 27, 2022):

I don't know if this suggestion is helpful or not, but https://github.com/any1/wayvnc has a VNC server for wayland.

@hboetes commented on GitHub (Jul 27, 2022): I don't know if this suggestion is helpful or not, but https://github.com/any1/wayvnc has a VNC server for wayland.
Author
Owner

@daegalus commented on GitHub (Jul 27, 2022):

I don't know if this suggestion is helpful or not, but https://github.com/any1/wayvnc has a VNC server for wayland.

It might help for Sway or wlroots implementations. But Gnome and KDE don't use wlroots.

@daegalus commented on GitHub (Jul 27, 2022): > I don't know if this suggestion is helpful or not, but https://github.com/any1/wayvnc has a VNC server for wayland. It might help for Sway or wlroots implementations. But Gnome and KDE don't use wlroots.
Author
Owner

@dylanmtaylor commented on GitHub (Jul 28, 2022):

https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/79

It looks like KDE has a way to restore a stream with previously granted permissions

@dylanmtaylor commented on GitHub (Jul 28, 2022): https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/79 It looks like KDE has a way to restore a stream with previously granted permissions
Author
Owner

@rustdesk commented on GitHub (Jul 28, 2022):

restore

@fufesou

@rustdesk commented on GitHub (Jul 28, 2022): > restore @fufesou
Author
Owner

@dylanmtaylor commented on GitHub (Jul 28, 2022):

If you follow the link to the KDE bug tracker from that GitLab MR I posted, https://bugs.kde.org/show_bug.cgi?id=445875 they mention a similar implementation existed in GNOME previously.

"There is a reference implementation in xdg-desktop-portal-gnome that is merged already: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/merge_requests/14"

Maybe this can be used to get KDE and GNOME unattended access working using session restore.

@dylanmtaylor commented on GitHub (Jul 28, 2022): If you follow the link to the KDE bug tracker from that GitLab MR I posted, https://bugs.kde.org/show_bug.cgi?id=445875 they mention a similar implementation existed in GNOME previously. "There is a reference implementation in xdg-desktop-portal-gnome that is merged already: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/merge_requests/14" Maybe this can be used to get KDE and GNOME unattended access working using session restore.
Author
Owner

@rustdesk commented on GitHub (Jul 28, 2022):

unattended access

Wondering if some one wanna dive into this with RustDesk?

@rustdesk commented on GitHub (Jul 28, 2022): > unattended access Wondering if some one wanna dive into this with RustDesk?
Author
Owner

@wildwestrom commented on GitHub (Aug 1, 2022):

So I don't use rustdesk to connect to my own computer, but to connect to another person, it works great!
My only problem is not being able to send keypresses to another client.

My setup is based on wlroots.

@wildwestrom commented on GitHub (Aug 1, 2022): So I don't use rustdesk to connect to my own computer, but to connect to another person, it works great! My only problem is not being able to send keypresses to another client. My setup is based on wlroots.
Author
Owner

@marcos-mendez commented on GitHub (Aug 3, 2022):

This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right?

@marcos-mendez commented on GitHub (Aug 3, 2022): This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right?
Author
Owner

@dylanmtaylor commented on GitHub (Aug 3, 2022):

This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right?

That's correct, right now it only works on x11, hopefully somebody contributes to this project and makes the feature work

@dylanmtaylor commented on GitHub (Aug 3, 2022): > This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right? That's correct, right now it only works on x11, hopefully somebody contributes to this project and makes the feature work
Author
Owner

@rustdesk commented on GitHub (Aug 3, 2022):

We are working hard every day on it.

@rustdesk commented on GitHub (Aug 3, 2022): We are working hard every day on it.
Author
Owner

@fufesou commented on GitHub (Aug 3, 2022):

This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right?

That's correct, right now it only works on x11, hopefully somebody contributes to this project and makes the feature work

It's a long way. Capturing and IO.
For capturing, as mentioned here.
Session restore has a requirement of xdg-desktop-portal version. Default xdg-desktop-portal on Ubuntu does not support until 22.04.

@fufesou commented on GitHub (Aug 3, 2022): > > This issues stils opened right? Rustdesk still doesn't support out of the box Wayland connections betwen client and server right? > > That's correct, right now it only works on x11, hopefully somebody contributes to this project and makes the feature work It's a long way. Capturing and IO. For capturing, as mentioned [here](https://github.com/rustdesk/rustdesk/issues/56#issuecomment-1148338420). Session restore has a requirement of [xdg-desktop-portal](https://flatpak.github.io/xdg-desktop-portal) version. Default [xdg-desktop-portal](https://flatpak.github.io/xdg-desktop-portal) on Ubuntu does not support until 22.04.
Author
Owner

@marcos-mendez commented on GitHub (Aug 3, 2022):

OK Im leaving a SOLUTION so people can Use RUST DESK until it is completly developed for WAYLAND compatibility.

On Debian Based Systems:

Edit the file the configures the system init display technology

$ sudo nano /etc/gdm3/custom.conf

Make x11 or xorg the main software to run the DISPLAY for that make WAYLAND enabled = false under the DAEMON section

WaylandEnable=false

after that uncomment


    AutomaticLoginEnable=true
    AutomaticLogin=$USERNAME

This all was based on https://askubuntu.com/questions/1131921/anydesk-remote-server-display-not-supported-e-g-wayland

It worked perfectly here. Thanks

@marcos-mendez commented on GitHub (Aug 3, 2022): OK Im leaving a SOLUTION so people can Use RUST DESK until it is completly developed for WAYLAND compatibility. On Debian Based Systems: Edit the file the configures the system init display technology `$ sudo nano /etc/gdm3/custom.conf ` Make x11 or xorg the main software to run the DISPLAY for that make WAYLAND enabled = false under the DAEMON section `WaylandEnable=false` after that uncomment ``` AutomaticLoginEnable=true AutomaticLogin=$USERNAME ``` This all was based on https://askubuntu.com/questions/1131921/anydesk-remote-server-display-not-supported-e-g-wayland It worked perfectly here. Thanks
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

This is an extremely naïve "solution" that assumes so many things and basically just says "don't use wayland".

@ThatOneCalculator commented on GitHub (Aug 3, 2022): This is an extremely naïve "solution" that assumes so many things and basically just says "don't use wayland".
Author
Owner

@chiehw commented on GitHub (Aug 3, 2022):

Be patient, wayland is currently supported as a remote side. It is not stable enough, so it has not been released.

@chiehw commented on GitHub (Aug 3, 2022): Be patient, wayland is currently supported as a remote side. It is not stable enough, so it has not been released.
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

This isn't about being "patient", this is just assuming a bunch of things (user is comfortable with xorg's security flaws, the user has xorg installed, the user uses gdm, the user uses GNOME, the user has sudo, the user has nano, etc). It isn't a solution at all.

@ThatOneCalculator commented on GitHub (Aug 3, 2022): This isn't about being "patient", this is just assuming a bunch of things (user is comfortable with xorg's security flaws, the user has xorg installed, the user uses gdm, the user uses GNOME, the user has sudo, the user has nano, etc). It isn't a solution at all.
Author
Owner

@chiehw commented on GitHub (Aug 3, 2022):

You are right. Are there any good opinions?

@chiehw commented on GitHub (Aug 3, 2022): You are right. Are there any good opinions?
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

The good option would to be look into XWayland compatability for now, possibly with some sort of a xdg portal passthrough.

@ThatOneCalculator commented on GitHub (Aug 3, 2022): The good option would to be look into XWayland compatability for now, possibly with some sort of a xdg portal passthrough.
Author
Owner

@marcos-mendez commented on GitHub (Aug 3, 2022):

@asur4s and @ThatOneCalculator maybe Naive is what you said as you don't know what type of support i provide. The day you have someone requesting remote support to you with a patient entubated and a diagnosis NFS image server providing MRI images to a surgeon on a live surgery maybe you will think that this type of complaint is Naive.

This change presumes that you will use SUDO and if you use sudo you are having responsabilities that you have to assume.

Next time i suggest offering alternatives, eventought they are temporary or even not secure.

Patience is something that some type of people, specially those laying down a surgury bad don't have to much.

Hope you find this philosophical aproach valid to the forum. Gratfully apreatiate this community and all the people here working to make this happend.

Big hug Marcos

@marcos-mendez commented on GitHub (Aug 3, 2022): @asur4s and @ThatOneCalculator maybe Naive is what you said as you don't know what type of support i provide. The day you have someone requesting remote support to you with a patient entubated and a diagnosis NFS image server providing MRI images to a surgeon on a live surgery maybe you will think that this type of complaint is Naive. This change presumes that you will use SUDO and if you use sudo you are having responsabilities that you have to assume. Next time i suggest offering alternatives, eventought they are temporary or even not secure. Patience is something that some type of people, specially those laying down a surgury bad don't have to much. Hope you find this philosophical aproach valid to the forum. Gratfully apreatiate this community and all the people here working to make this happend. Big hug Marcos
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

Literally nobody asked you. If you want to use Xorg so it fits your use case, go for it, but it's not a solution for Wayland users.

Hope you find this philosophical aproach valid to the forum.

  1. Spelling errors.
  2. You're looking into this way too deeply. This is just an issue board about Wayland support for an application that currently only operates properly on Xorg display servers.
@ThatOneCalculator commented on GitHub (Aug 3, 2022): Literally nobody asked you. If you want to use Xorg so it fits your use case, go for it, but it's not a solution for Wayland users. > Hope you find this philosophical aproach valid to the forum. 1. Spelling errors. 2. You're looking into this way too deeply. This is just an issue board about Wayland support for an application that currently only operates properly on Xorg display servers.
Author
Owner

@bt90 commented on GitHub (Aug 3, 2022):

The good option would to be look into XWayland compatability for now, possibly with some sort of a xdg portal passthrough.

At least screen access is not possible with XWayland. Displaying the client should work already though.

@rustdesk could you hide comments which are not really focusing on the topic of actual wayland support? (workarounds, bickering, etc)

@bt90 commented on GitHub (Aug 3, 2022): > The good option would to be look into XWayland compatability for now, possibly with some sort of a xdg portal passthrough. At least screen access is not possible with XWayland. Displaying the client should work already though. @rustdesk could you hide comments which are not really focusing on the topic of actual wayland support? (workarounds, bickering, etc)
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

At least screen access is not possible with XWayland. Displaying the client should work already though.

I think it might be in some way? Whenever I run Discord under XWayland, it's able to share my entire screen in voice chat.

@ThatOneCalculator commented on GitHub (Aug 3, 2022): > At least screen access is not possible with XWayland. Displaying the client should work already though. I think it might be in some way? Whenever I run Discord under XWayland, it's able to share my entire screen in voice chat.
Author
Owner

@bt90 commented on GitHub (Aug 3, 2022):

Isn't Discord electron based and supports Wayland natively?

@bt90 commented on GitHub (Aug 3, 2022): Isn't Discord electron based and supports Wayland natively?
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 3, 2022):

For a while I was running it under XWayland because of Hyprland previously not supporting ozone.

@ThatOneCalculator commented on GitHub (Aug 3, 2022): For a while I was running it under XWayland because of Hyprland previously not supporting ozone.
Author
Owner

@maverick74 commented on GitHub (Aug 4, 2022):

Let me jump into this by saying that I - personally - don't think xWayland is the solution. Beside, the issue is about Wayland support, not xWayland.

Another important detail that should be taken into account: Fedora (which I don't use!) already defaults to Wayland.
And Fedora/RedHat does lead Linux development (either we like it or not). Others will soon follow...

@maverick74 commented on GitHub (Aug 4, 2022): Let me jump into this by saying that I - personally - don't think xWayland is the solution. Beside, the issue is about Wayland support, not xWayland. Another important detail that should be taken into account: Fedora (which I don't use!) already defaults to Wayland. And Fedora/RedHat does lead Linux development (either we like it or not). Others will soon follow...
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 4, 2022):

I completely agree. I was suggesting XWayland more as a band-aid for now before a proper Wayland implementation.

@ThatOneCalculator commented on GitHub (Aug 4, 2022): I completely agree. I was suggesting XWayland more as a band-aid for now before a proper Wayland implementation.
Author
Owner

@maverick74 commented on GitHub (Aug 5, 2022):

I do also think that for a start targeting KDE Plasma and GNOME implementations would be ideal.
These are the two major and most used DE in the Linux land.

Other projects like LXQt (which we use around here), XFCE, Cinnamon, etc will eventually get support for the needed xdg tech, but that's out of our hands! (these sometimes end up adopting/adapting the implementations of plasma or gnome)

For those cases a message saying that:
"Your DE does not support the xdg tech needed to work with rustdesk. Please use Plasma or GNOME"
would be enough to let the user know it's a limitation of their DE and not from rustdesk.

Also, keeping up with Plasma&GNOME implementations will be painful enough.

but then again, this is just my POV

@maverick74 commented on GitHub (Aug 5, 2022): I do also think that for a start targeting KDE Plasma and GNOME implementations would be ideal. These are the two major and most used DE in the Linux land. Other projects like LXQt (which we use around here), XFCE, Cinnamon, etc will eventually get support for the needed xdg tech, but that's out of our hands! (these sometimes end up adopting/adapting the implementations of plasma or gnome) For those cases a message saying that: "**_Your DE does not support the xdg tech needed to work with rustdesk. Please use Plasma or GNOME_**" would be enough to let the user know it's a limitation of their DE and not from rustdesk. Also, keeping up with Plasma&GNOME implementations will be painful enough. but then again, this is just my POV
Author
Owner

@bt90 commented on GitHub (Aug 5, 2022):

I wouldn't hardcode desktop environments. xdg-desktop-portal support might be added and the message is obsolete. (yours would already miss sway)

I don't think that rustdesk has to deal with DE specific stuff as XDG is designed to be DE agnostic. At least if an implementation exists.

@bt90 commented on GitHub (Aug 5, 2022): I wouldn't hardcode desktop environments. xdg-desktop-portal support might be added and the message is obsolete. (yours would already miss sway) I don't think that rustdesk has to deal with DE specific stuff as XDG is designed to be DE agnostic. At least if an implementation exists.
Author
Owner

@maverick74 commented on GitHub (Aug 5, 2022):

I don't think that rustdesk has to deal with DE specific stuff as XDG is designed to be DE agnostic. At least if an implementation exists.

As i understand it, both gnome and plasma have xdg implementations that are different from each other and that would need to be addressed specifically (i can be wrong about it, however), but all in all, i do agree with all you said.

The more DE agnostic the better!

@maverick74 commented on GitHub (Aug 5, 2022): > I don't think that rustdesk has to deal with DE specific stuff as XDG is designed to be DE agnostic. At least if an implementation exists. As i understand it, both gnome and plasma have xdg implementations that are different from each other and that would need to be addressed specifically (i can be wrong about it, however), but all in all, i do agree with all you said. The more DE agnostic the better!
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 5, 2022):

Please scroll up as there's already been discussion about this. There's 3 XDG portals: GNOME, Plasma (KDE), and WLRoots.

@ThatOneCalculator commented on GitHub (Aug 5, 2022): Please scroll up as there's already been discussion about this. There's 3 XDG portals: GNOME, Plasma (KDE), and WLRoots.
Author
Owner

@maverick74 commented on GitHub (Aug 5, 2022):

Please scroll up as there's already been discussion about this. There's 3 XDG portals: GNOME, Plasma (KDE), and WLRoots.

I was under the impression of something like that. Wasn't sure where i read it however and didn't scroll up :(.
Thanks for the alert!
So, plasma and gnome do have different XDG's... soo... we can't actually go for a "global" solution (for now at least...)

@maverick74 commented on GitHub (Aug 5, 2022): > Please scroll up as there's already been discussion about this. There's 3 XDG portals: GNOME, Plasma (KDE), and WLRoots. I was under the impression of something like that. Wasn't sure where i read it however and didn't scroll up :(. Thanks for the alert! So, plasma and gnome do have different XDG's... soo... we can't actually go for a "global" solution (for now at least...)
Author
Owner

@ThatOneCalculator commented on GitHub (Aug 5, 2022):

Keep in mind that it's GNOME, Plasma AND WLRoots. There's 3. There is also a unifying solution for basic things like screen-sharing just called "xdg-desktop-portal" but it doesn't handle anything besides full screen sharing and audio sharing.

@ThatOneCalculator commented on GitHub (Aug 5, 2022): Keep in mind that it's GNOME, Plasma AND WLRoots. There's 3. There is also a unifying solution for basic things like screen-sharing just called "xdg-desktop-portal" but it doesn't handle anything besides full screen sharing and audio sharing.
Author
Owner

@maverick74 commented on GitHub (Aug 5, 2022):

Yeah, I keep jumping over WLRoots but its an important one as well.
Still @bt90 has a point that there should in "theory" be one implementation common across all desktops.
And i believe that will someday be the case. For sure around "the year of the Linux desktop" ;)

@maverick74 commented on GitHub (Aug 5, 2022): Yeah, I keep jumping over WLRoots but its an important one as well. Still @bt90 has a point that there should in "theory" be one implementation common across all desktops. And i believe that will someday be the case. For sure around "the year of the Linux desktop" ;)
Author
Owner

@bt90 commented on GitHub (Aug 5, 2022):

@ThatOneCalculator you always interact with the D-Bus interfaces provided by xdg-desktop-portal. The other ones are just backends with the DE specific implementations.

https://github.com/flatpak/xdg-desktop-portal/blob/main/README.md

And xdg-desktop-portal offers quite a bit more:

https://flatpak.github.io/xdg-desktop-portal/

@bt90 commented on GitHub (Aug 5, 2022): @ThatOneCalculator you always interact with the D-Bus interfaces provided by xdg-desktop-portal. The other ones are just backends with the DE specific implementations. https://github.com/flatpak/xdg-desktop-portal/blob/main/README.md And xdg-desktop-portal offers quite a bit more: https://flatpak.github.io/xdg-desktop-portal/
Author
Owner

@jokeyrhyme commented on GitHub (Aug 5, 2022):

Just to clarify, as I think there's some confusion about terminology and what roles and expectations there are around different related components here:

  1. application sends a request for (e.g.) the ScreenCast portal via D-Bus
  2. xdg-desktop-portal reads the request
  3. xdg-desktop-portal looks for a service that implements the ScreenCast portal (e.g. xdg-desktop-portal-wlr), and starts the service if necessary
  4. xdg-desktop-portal becomes something like a proxy: forwarding the ScreenCast request to the implementation, getting the response, forwarding the response back to the application

Notes:

  • the APIs themselves are what we call "portals"
  • applications NEVER know anything at all about how a portal is implemented: apps only talk to xdg-desktop-portal and (for the purposes of portals) do NOT know what compositor or desktop environment is in use
  • you can find the full list of defined portals here: https://github.com/flatpak/xdg-desktop-portal/tree/main/data
  • there are 5x projects listed here that provide portal implementations: https://github.com/flatpak/xdg-desktop-portal#using-portals
  • users DO need to ensure that they have installed the portal implementation that matches their needs: e.g. xdg-desktop-portal-wlr implements ScreenCast by using wlroots APIs, and therefore doesn't work in a non-wlroots compositor, likewise ScreenCast from xdg-desktop-portal-gnome will only work in GNOME
  • some portal implementations will work in any environment they just might not be optimal, e.g. the FileChooser in xdg-desktop-portal-gtk and xdg-desktop-portal-gnome uses Nautlius, which loads just fine in KDE, but KDE users would probably prefer the look-and-feel offered by the FileChooser from xdg-desktop-portal-kde

You can read through what portals each implementation service offers (as of 2022-08-06):

  • xdg-desktop-portal-gtk
    • Access, Account, AppChooser, Background, DynamicLauncher, Email, FileChooser, Inhibit, Lockdown, Notification, Print, RemoteDesktop, ScreenCast, Settings, Wallpaper
    • other implementations lack many of these portals, so it's recommended that you install ...-gtk side-by-side
  • xdg-desktop-portal-gnome
    • Account, AppChooser, Background, DynamicLauncher, FileChooser, Lockdown, Print, RemoteDesktop, ScreenCast, Screenshot, Settings, Wallpaper
    • ...-gnome was forked from ...-gtk, and they have since begun to specialise (GNOME-specific work versus general GTK work)
  • xdg-desktop-portal-kde
    • Access, Account, AppChooser, Background, DynamicLauncher, Email, FileChooser, Inhibit, Notification, Print, RemoteDesktop, ScreenCast, Screenshot, Settings
  • xdg-desktop-portal-pantheon
    • Access, AppChooser
  • xdg-desktop-portal-wlr
    • ScreenCast, Screenshot
@jokeyrhyme commented on GitHub (Aug 5, 2022): Just to clarify, as I think there's some confusion about terminology and what roles and expectations there are around different related components here: 1. application sends a request for (e.g.) the ScreenCast portal via D-Bus 2. `xdg-desktop-portal` reads the request 3. `xdg-desktop-portal` looks for a service that implements the ScreenCast portal (e.g. `xdg-desktop-portal-wlr`), and starts the service if necessary 4. `xdg-desktop-portal` becomes something like a proxy: forwarding the ScreenCast request to the implementation, getting the response, forwarding the response back to the application Notes: - the APIs themselves are what we call "portals" - applications **NEVER** know anything at all about how a portal is implemented: apps only talk to `xdg-desktop-portal` and (for the purposes of portals) do **NOT** know what compositor or desktop environment is in use - you can find the full list of defined portals here: https://github.com/flatpak/xdg-desktop-portal/tree/main/data - there are 5x projects listed here that provide portal implementations: https://github.com/flatpak/xdg-desktop-portal#using-portals - users **DO** need to ensure that they have installed the portal implementation that matches their needs: e.g. `xdg-desktop-portal-wlr` implements ScreenCast by using wlroots APIs, and therefore doesn't work in a non-wlroots compositor, likewise ScreenCast from `xdg-desktop-portal-gnome` will only work in GNOME - some portal implementations will work in any environment they just might not be optimal, e.g. the FileChooser in `xdg-desktop-portal-gtk` and `xdg-desktop-portal-gnome` uses Nautlius, which loads just fine in KDE, but KDE users would probably prefer the look-and-feel offered by the FileChooser from `xdg-desktop-portal-kde` You can read through what portals each implementation service offers (as of 2022-08-06): - [xdg-desktop-portal-gtk](https://github.com/flatpak/xdg-desktop-portal-gtk/blob/main/data/gtk.portal.in) - Access, Account, AppChooser, Background, DynamicLauncher, Email, FileChooser, Inhibit, Lockdown, Notification, Print, RemoteDesktop, ScreenCast, Settings, Wallpaper - other implementations lack many of these portals, so it's recommended that you install ...-gtk side-by-side - [xdg-desktop-portal-gnome](https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/blob/main/data/gnome.portal) - Account, AppChooser, Background, DynamicLauncher, FileChooser, Lockdown, Print, RemoteDesktop, ScreenCast, Screenshot, Settings, Wallpaper - ...-gnome was forked from ...-gtk, and they have since begun to specialise (GNOME-specific work versus general GTK work) - [xdg-desktop-portal-kde](https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/blob/master/data/kde.portal) - Access, Account, AppChooser, Background, DynamicLauncher, Email, FileChooser, Inhibit, Notification, Print, RemoteDesktop, ScreenCast, Screenshot, Settings - [xdg-desktop-portal-pantheon](https://github.com/elementary/portals/blob/main/data/pantheon.portal) - Access, AppChooser - [xdg-desktop-portal-wlr](https://github.com/emersion/xdg-desktop-portal-wlr/blob/master/wlr.portal) - ScreenCast, Screenshot
Author
Owner

@daegalus commented on GitHub (Aug 5, 2022):

Great job gathering the details. It seems based on this info. GTK, Gnome, and KDE portals all have ScreenCast and RemoteDesktop implemented.

That should cover most use cases. And unless I misunderstood what you said, the gtk one can cover what's missing in the WLR and Pantheon ones?

But if Rustdesk just implements it's stuff based on the portals apis, it will just be ready when the WLR and Pantheon portals are ready.

@daegalus commented on GitHub (Aug 5, 2022): Great job gathering the details. It seems based on this info. GTK, Gnome, and KDE portals all have ScreenCast and RemoteDesktop implemented. That should cover most use cases. And unless I misunderstood what you said, the gtk one can cover what's missing in the WLR and Pantheon ones? But if Rustdesk just implements it's stuff based on the portals apis, it will just be ready when the WLR and Pantheon portals are ready.
Author
Owner

@jokeyrhyme commented on GitHub (Aug 5, 2022):

But if Rustdesk just implements it's stuff based on the portals apis, it will just be ready when the WLR and Pantheon portals are ready.

Yes this

@jokeyrhyme commented on GitHub (Aug 5, 2022): > But if Rustdesk just implements it's stuff based on the portals apis, it will just be ready when the WLR and Pantheon portals are ready. Yes this
Author
Owner

@renemadsen commented on GitHub (Oct 10, 2022):

Any progress on this issue?

@renemadsen commented on GitHub (Oct 10, 2022): Any progress on this issue?
Author
Owner

@rustdesk commented on GitHub (Oct 11, 2022):

progress

Tyr out this https://github.com/rustdesk/rustdesk/releases/download/tmp/rustdesk-1.2.0.deb. Ubuntu 21+ required for Wayland support. Let me know if you have any problem. @fufesou

@rustdesk commented on GitHub (Oct 11, 2022): > progress Tyr out this https://github.com/rustdesk/rustdesk/releases/download/tmp/rustdesk-1.2.0.deb. Ubuntu 21+ required for Wayland support. Let me know if you have any problem. @fufesou
Author
Owner

@renemadsen commented on GitHub (Oct 11, 2022):

@fufesou will assit you.

@renemadsen commented on GitHub (Oct 11, 2022): @fufesou will assit you.
Author
Owner

@rustdesk commented on GitHub (Oct 11, 2022):

@renemadsen sorry, I overwrote your message by mistake, can you write again?

@rustdesk commented on GitHub (Oct 11, 2022): @renemadsen sorry, I overwrote your message by mistake, can you write again?
Author
Owner

@renemadsen commented on GitHub (Oct 11, 2022):

@renemadsen sorry, I overwrote your message by mistake, can you write again?

No problem,

There is no picture, like shown on this screenshot:
image

Any suggestions as how to debug this to get more information, to solve the issue.

@renemadsen commented on GitHub (Oct 11, 2022): > @renemadsen sorry, I overwrote your message by mistake, can you write again? No problem, There is no picture, like shown on this screenshot: ![image](https://user-images.githubusercontent.com/76994/195033121-c675f763-e885-4159-8c5b-8b6121f48fc5.png) Any suggestions as how to debug this to get more information, to solve the issue.
Author
Owner

@fufesou commented on GitHub (Oct 11, 2022):

There is no picture, like shown on this screenshot:

If the peer side is Wayland. The system will ask the user for agreement to share a screen.
Can you please have a look a the peer side?

User's agreement is designed for safety. We can't get around this step. But you only need to agreen once in the app's lifetime.
By the way, Wayland only support new linux distributions. For Ubuntu, 21.04 or higher is required.

@fufesou commented on GitHub (Oct 11, 2022): > There is no picture, like shown on this screenshot: If the peer side is Wayland. The system will ask the user for agreement to share a screen. Can you please have a look a the peer side? User's agreement is designed for safety. We can't get around this step. But you only need to agreen once in the app's lifetime. By the way, Wayland only support new linux distributions. For Ubuntu, 21.04 or higher is required.
Author
Owner

@fufesou commented on GitHub (Oct 11, 2022):

Any suggestions as how to debug this to get more information, to solve the issue.

There're some additional limits on Wayland for now.

https://github.com/rustdesk/rustdesk/pull/932#:~:text=hooked%20to%20listen.-,Unsupport,-.%20Server%20need%20to

Unsupport. Server need to be restarted as xdg-desktop-portal pipewire need to be connect and accepted again.
Not sure how to detect and reconnect pipewire for now.

  • Modify resolution.
  • Switch bettwen multiple screens.
  • Lock screen.
  • Unattended access
@fufesou commented on GitHub (Oct 11, 2022): > Any suggestions as how to debug this to get more information, to solve the issue. There're some additional limits on Wayland for now. https://github.com/rustdesk/rustdesk/pull/932#:~:text=hooked%20to%20listen.-,Unsupport,-.%20Server%20need%20to >> Unsupport. Server need to be restarted as xdg-desktop-portal pipewire need to be connect and accepted again. >> Not sure how to detect and reconnect pipewire for now. - [ ] Modify resolution. - [ ] Switch bettwen multiple screens. - [ ] Lock screen. - [ ] Unattended access
Author
Owner

@muety commented on GitHub (Oct 16, 2022):

RustDesk is such an awesome piece of software - please add Wayland support as soon as you can! It's literally the only thing missing to make it perfect.

@muety commented on GitHub (Oct 16, 2022): RustDesk is such an awesome piece of software - please add Wayland support as soon as you can! It's literally the only thing missing to make it perfect.
Author
Owner

@hellmind commented on GitHub (Oct 21, 2022):

how is the current status of rustdesk on wayland?
As client keyboard doesn't work

@hellmind commented on GitHub (Oct 21, 2022): how is the current status of rustdesk on wayland? As client keyboard doesn't work
Author
Owner

@hellmind commented on GitHub (Oct 21, 2022):

how is the current status of rustdesk on wayland? As client keyboard doesn't work
I had to run it like this WAYLAND_DISPLAY="" rustdesk

@hellmind commented on GitHub (Oct 21, 2022): > how is the current status of rustdesk on wayland? As client keyboard doesn't work I had to run it like this WAYLAND_DISPLAY="" rustdesk
Author
Owner

@fufesou commented on GitHub (Oct 21, 2022):

how is the current status of rustdesk on wayland? As client keyboard doesn't work
I had to run it like this WAYLAND_DISPLAY="" rustdesk

Hi, do you use the pre-release build?
There're two known cases that input will not wok.

  1. Lock screen and unlock.
  2. The resolution is changed after connection.
@fufesou commented on GitHub (Oct 21, 2022): > > how is the current status of rustdesk on wayland? As client keyboard doesn't work > > I had to run it like this WAYLAND_DISPLAY="" rustdesk Hi, do you use the pre-release build? There're two known cases that input will not wok. 1. Lock screen and unlock. 2. The resolution is changed after connection.
Author
Owner

@FurtadoPires commented on GitHub (Oct 21, 2022):

Any chance we could get an official 1.2.0 for arch? I want to test in my Manjaro Gnome the current status of Wayland support.

Also I think this project should be advertised more in the linux / rust community, I don't know if the devs have a notion of how big is the fact that this foss multi-platform remote control software have Wayland support (even if in initial stage). That something even Anydesk don't have, and it might attract people who might be willing to donate / contribute with this project.

@FurtadoPires commented on GitHub (Oct 21, 2022): Any chance we could get an official `1.2.0` for arch? I want to test in my Manjaro Gnome the current status of Wayland support. Also I think this project should be advertised more in the linux / rust community, I don't know if the devs have a notion of how big is the fact that this foss multi-platform remote control software have Wayland support (even if in initial stage). That something even Anydesk don't have, and it might attract people who might be willing to donate / contribute with this project.
Author
Owner

@rustdesk commented on GitHub (Oct 21, 2022):

1.2.0

Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way.

BTW, how to advertise more in the linux / rust community?

@rustdesk commented on GitHub (Oct 21, 2022): > 1.2.0 Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way. BTW, **how to advertise more in the linux / rust community?**
Author
Owner

@ThatOneCalculator commented on GitHub (Oct 21, 2022):

Id say a good start is posting to the Fediverse, as there's a lot of Rust developers and Linux users there, as well as Linux & Rust subreddits, and putting Rustdesk on Flathub if it isn't there already.

@ThatOneCalculator commented on GitHub (Oct 21, 2022): Id say a good start is posting to the Fediverse, as there's a lot of Rust developers and Linux users there, as well as Linux & Rust subreddits, and putting Rustdesk on Flathub if it isn't there already.
Author
Owner

@bbigras commented on GitHub (Oct 22, 2022):

There's also a rust podcast. Tbh I wish I tried rustdesk earlier as I assumed, for some reason, that it wasn't ready. Maybe because of wayland.

@bbigras commented on GitHub (Oct 22, 2022): There's also a rust podcast. Tbh I wish I tried rustdesk earlier as I assumed, for some reason, that it wasn't ready. Maybe because of wayland.
Author
Owner

@gilgwath commented on GitHub (Oct 22, 2022):

1.2.0

Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way.

BTW, how to advertise more in the linux / rust community?

Try reaching out to Chris Fisher from Jupiter Broadcasting. They once featured rustdesk in their picks segment and were happy with it. Most of the hosts are fond of the rust apps as well. He might want to do an interview on Linux Unplugged, they often have interviews with devs of interesting projects. JB has quite the audience as well.

Also, a +1 from me for Wayland support :-) I run my families computers on Ubuntu MATE, and I'm a bit tired of Team Viewer.

@gilgwath commented on GitHub (Oct 22, 2022): > > 1.2.0 > > Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way. > > BTW, **how to advertise more in the linux / rust community?** Try reaching out to Chris Fisher from Jupiter Broadcasting. They once featured rustdesk in their picks segment and were happy with it. Most of the hosts are fond of the rust apps as well. He might want to do an interview on Linux Unplugged, they often have interviews with devs of interesting projects. JB has quite the audience as well. Also, a +1 from me for Wayland support :-) I run my families computers on Ubuntu MATE, and I'm a bit tired of Team Viewer.
Author
Owner

@mon-jai commented on GitHub (Oct 22, 2022):

@rustdesk Seems that the install button is not working with the nightly build.

@mon-jai commented on GitHub (Oct 22, 2022): @rustdesk Seems that the install button is not working with the nightly build.
Author
Owner

@maverick74 commented on GitHub (Oct 22, 2022):

BTW, how to advertise more in the linux / rust community?

HackerNews is also good and is also nice if you can get this in "the planets" ( e.g.:
planet.KDE.org, planet.opensuse.org, etc ).

But, as @ThatOneCalculator already said, I would bet in FlatHub a lot!!!

@maverick74 commented on GitHub (Oct 22, 2022): > BTW, **how to advertise more in the linux / rust community?** HackerNews is also good and is also nice if you can get this in "the planets" ( e.g.: planet.KDE.org, planet.opensuse.org, etc ). But, as @ThatOneCalculator already said, I would bet in FlatHub a lot!!!
Author
Owner

@FurtadoPires commented on GitHub (Oct 22, 2022):

Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way.

I'll try to compile and test, thank you

BTW, how to advertise more in the linux / rust community?

My personal suggestions would be:

  • Reddit communities like r/rust and r/linux
  • The big three families communities r/ubuntu (also r/debian), r/fedora and r/archlinux
  • Try to reach Michael from phoronix.com who use to make articles about linux softwares, and might make one about rustdesk

And a wild guess: Developers from Pop!_OS are developing a new desktop environment called Cosmic, which is entirely written in rust and they may or may not being interested in some integration with rustdesk (who knows...)

@FurtadoPires commented on GitHub (Oct 22, 2022): > Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way. I'll try to compile and test, thank you > BTW, **how to advertise more in the linux / rust community?** My personal suggestions would be: - Reddit communities like r/rust and r/linux - The big three families communities r/ubuntu (also r/debian), r/fedora and r/archlinux - Try to reach Michael from phoronix.com who use to make articles about linux softwares, and might make one about rustdesk And a wild guess: Developers from Pop!_OS are developing a new desktop environment called Cosmic, which is entirely written in rust and they may or may not being interested in some integration with rustdesk (who knows...)
Author
Owner

@rustdesk commented on GitHub (Oct 23, 2022):

HackerNews

We have two good posts on HackerNews, both were posted by friends we do not know. The one we posted failed to get attentions. :(

@rustdesk commented on GitHub (Oct 23, 2022): > HackerNews We have two good posts on HackerNews, both were posted by friends we do not know. The one we posted failed to get attentions. :(
Author
Owner

@rustdesk commented on GitHub (Oct 23, 2022):

@ThatOneCalculator @bbigras @maverick74 @FurtadoPires Thanks, we will try once our new version is stable.

@rustdesk commented on GitHub (Oct 23, 2022): @ThatOneCalculator @bbigras @maverick74 @FurtadoPires Thanks, we will try once our new version is stable.
Author
Owner

@rustdesk commented on GitHub (Oct 23, 2022):

install button i

Noted.

@rustdesk commented on GitHub (Oct 23, 2022): > install button i Noted.
Author
Owner
@rustdesk commented on GitHub (Oct 24, 2022): https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/
Author
Owner

@maverick74 commented on GitHub (Oct 24, 2022):

https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/

What's up with KDE Plasma?!?!
Why everyone supports Gnome in everything and Plasma is always the big-bad-wolf?!?!?
I really don't get what companies have against it... :(

@maverick74 commented on GitHub (Oct 24, 2022): > https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/ What's up with KDE Plasma?!?! Why everyone supports Gnome in everything and Plasma is always the big-bad-wolf?!?!? I really don't get what companies have against it... :(
Author
Owner

@jankatins commented on GitHub (Oct 24, 2022):

@maverick74

Why everyone supports Gnome in everything and Plasma is always the big-bad -olf?!?!?
I really don't get what companies have against it... :(

Every DE seems to have their own implementation of screen sharing (see above for a summary) and therefore different "details" (=bugs, implemented parts,...). So everything you claim to support needs a) dev effort to actually make it work and b) support effort (training, time to figure stuff out,...), both of which costs money. And so you take the biggest chunk(s) of customers (for which benefits > cost), support them and leave the long tails "unsupported" because it isn't worth the money.

(I do not like it either, but I do get the reasoning; Dropbox did the same with ext4 vs btrfs)

@jankatins commented on GitHub (Oct 24, 2022): @maverick74 > Why everyone supports Gnome in everything and Plasma is always the big-bad -olf?!?!? > I really don't get what companies have against it... :( Every DE seems to have their own implementation of screen sharing ([see above for a summary](https://github.com/rustdesk/rustdesk/issues/56#issuecomment-1206848322)) and therefore different "details" (=bugs, implemented parts,...). So everything you claim to support needs a) dev effort to actually make it work and b) support effort (training, time to figure stuff out,...), both of which costs money. And so you take the biggest chunk(s) of customers (for which benefits > cost), support them and leave the long tails "unsupported" because it isn't worth the money. (I do not like it either, but I do get the reasoning; Dropbox did the same with ext4 vs btrfs)
Author
Owner

@FurtadoPires commented on GitHub (Oct 24, 2022):

https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/

Not sure why you posted this here (maybe it's your post?) but zoom it's probably making a check for specific distro name / version, because some companies usually like to state that they only support "specific distros" even if their software runs in another one. It's kind of a windows dev way of think, but I understand their desire of not wanting to waste resources investigating why the "random franken distro" is having a problem that doesn't happen on the "official systems we support"

@rustdesk to support wayland on linux, just focus on working with:
-xdg-desktop-portal to communicate with other screens
-pipewire (in case you want to support remote audio)
-systemd to create the rustdesk service (and other init systems if you want to support of course)

Any modern Linux distro that supports Wayland should have all the software above in their repositories, so don't be afraid of requesting them as optional dependencies in the project.

@FurtadoPires commented on GitHub (Oct 24, 2022): > https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/ Not sure why you posted this here (maybe it's your post?) but zoom it's probably making a check for specific distro name / version, because some companies usually like to state that they only support "specific distros" even if their software runs in another one. It's kind of a windows dev way of think, but I understand their desire of not wanting to waste resources investigating why the "random franken distro" is having a problem that doesn't happen on the "official systems we support" @rustdesk to support wayland on linux, just focus on working with: -`xdg-desktop-portal` to communicate with other screens -`pipewire` (in case you want to support remote audio) -`systemd` to create the rustdesk service (and other init systems if you want to support of course) Any modern Linux distro that supports Wayland should have all the software above in their repositories, so don't be afraid of requesting them as optional dependencies in the project.
Author
Owner

@maverick74 commented on GitHub (Oct 24, 2022):

(I do not like it either, but I do get the reasoning; Dropbox did the same with ext4 vs btrfs)

meh...
i've tried a few times to let go of plasma and into gnome (because of company support)... but i just can't.
I need too many options to be able to do my job efficiently that just don't exist in gnome... ever...
I don't care what anyone says of plasma. That thing is far superior in features. And that's why i don't understand those kinds of decisions...
But then again, as you said, it's basically all about the money... sad...

@maverick74 commented on GitHub (Oct 24, 2022): > (I do not like it either, but I do get the reasoning; Dropbox did the same with ext4 vs btrfs) meh... i've tried a few times to let go of plasma and into gnome (because of company support)... but i just can't. I need too many options to be able to do my job efficiently that just don't exist in gnome... ever... I don't care what anyone says of plasma. That thing is far superior in features. And that's why i don't understand those kinds of decisions... But then again, as you said, it's basically all about the money... sad...
Author
Owner

@muety commented on GitHub (Oct 27, 2022):

Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way.

Would there be an option to include Fedora-compatible RPM packages in the nightly release?

@muety commented on GitHub (Oct 27, 2022): > Try out our nightly build https://github.com/rustdesk/rustdesk/releases/tag/nightly, arch is on the way. Would there be an option to include Fedora-compatible RPM packages in the nightly release?
Author
Owner

@jirutka commented on GitHub (Oct 27, 2022):

Any modern Linux distro that supports Wayland should have all the software above in their repositories

No, thankfully not all modern distros use systemd.
I agree with xdg-desktop-portal and pipewire.

@jirutka commented on GitHub (Oct 27, 2022): > Any modern Linux distro that supports Wayland should have all the software above in their repositories No, thankfully not all modern distros use systemd. I agree with xdg-desktop-portal and pipewire.
Author
Owner

@FurtadoPires commented on GitHub (Oct 27, 2022):

No, thankfully not all modern distros use systemd. I agree with xdg-desktop-portal and pipewire.

As I've said in the comment you've quoted, it's up to @rustdesk the decision to also support other init systems or not. My point is the three main families have systemd in their repos as default, so it's the first choice if you aim to support most of the linux distros. Which of course doesn't imply that it should "only" support it.

@FurtadoPires commented on GitHub (Oct 27, 2022): > No, thankfully not all modern distros use systemd. I agree with xdg-desktop-portal and pipewire. As I've said in the comment you've quoted, it's up to @rustdesk the decision to **also** support other init systems or not. My point is the three main families have systemd in their repos as default, so it's the first choice if you aim to support most of the linux distros. Which of course doesn't imply that it should "only" support it.
Author
Owner

@jack9603301 commented on GitHub (Dec 14, 2022):

https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/

Not sure why you posted this here (maybe it's your post?) but zoom it's probably making a check for specific distro name / version, because some companies usually like to state that they only support "specific distros" even if their software runs in another one. It's kind of a windows dev way of think, but I understand their desire of not wanting to waste resources investigating why the "random franken distro" is having a problem that doesn't happen on the "official systems we support"

@rustdesk to support wayland on linux, just focus on working with: -xdg-desktop-portal to communicate with other screens -pipewire (in case you want to support remote audio) -systemd to create the rustdesk service (and other init systems if you want to support of course)

Any modern Linux distro that supports Wayland should have all the software above in their repositories, so don't be afraid of requesting them as optional dependencies in the project.

We can use the screen recording protocol support of pipewire, OBS uses pipewire

Pipewire not only manages audio but also manages video, maybe the best choice

@jack9603301 commented on GitHub (Dec 14, 2022): > > https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/ > > Not sure why you posted this here (maybe it's your post?) but zoom it's probably making a check for specific distro name / version, because some companies usually like to state that they only support "specific distros" even if their software runs in another one. It's kind of a windows dev way of think, but I understand their desire of not wanting to waste resources investigating why the "random franken distro" is having a problem that doesn't happen on the "official systems we support" > > @rustdesk to support wayland on linux, just focus on working with: -`xdg-desktop-portal` to communicate with other screens -`pipewire` (in case you want to support remote audio) -`systemd` to create the rustdesk service (and other init systems if you want to support of course) > > Any modern Linux distro that supports Wayland should have all the software above in their repositories, so don't be afraid of requesting them as optional dependencies in the project. We can use the screen recording protocol support of pipewire, OBS uses pipewire Pipewire not only manages audio but also manages video, maybe the best choice
Author
Owner

@marcos-mendez commented on GitHub (Dec 14, 2022):

Yeah it seams so. Pipewire LGTM.

On Wed, Dec 14, 2022, 10:59 JACK @.***> wrote:

https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/

Not sure why you posted this here (maybe it's your post?) but zoom it's
probably making a check for specific distro name / version, because some
companies usually like to state that they only support "specific distros"
even if their software runs in another one. It's kind of a windows dev way
of think, but I understand their desire of not wanting to waste resources
investigating why the "random franken distro" is having a problem that
doesn't happen on the "official systems we support"

@rustdesk https://github.com/rustdesk to support wayland on linux, just
focus on working with: -xdg-desktop-portal to communicate with other
screens -pipewire (in case you want to support remote audio) -systemd to
create the rustdesk service (and other init systems if you want to support
of course)

Any modern Linux distro that supports Wayland should have all the software
above in their repositories, so don't be afraid of requesting them as
optional dependencies in the project.

We can use the screen recording protocol support of pipewire, OBS uses
pipewire

Pipewire not only manages audio but also manages video, maybe the best
choice


Reply to this email directly, view it on GitHub
https://github.com/rustdesk/rustdesk/issues/56#issuecomment-1351406159,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJEVVIHDAIZ4J5ZTCJ2VKUTWNHHDZANCNFSM46DCYALA
.
You are receiving this because you commented.Message ID:
@.***>

@marcos-mendez commented on GitHub (Dec 14, 2022): Yeah it seams so. Pipewire LGTM. On Wed, Dec 14, 2022, 10:59 JACK ***@***.***> wrote: > > https://www.reddit.com/r/gnome/comments/yc0k3h/zoom_screen_sharing_disabled_for_wayland_users_on/ > > Not sure why you posted this here (maybe it's your post?) but zoom it's > probably making a check for specific distro name / version, because some > companies usually like to state that they only support "specific distros" > even if their software runs in another one. It's kind of a windows dev way > of think, but I understand their desire of not wanting to waste resources > investigating why the "random franken distro" is having a problem that > doesn't happen on the "official systems we support" > > @rustdesk <https://github.com/rustdesk> to support wayland on linux, just > focus on working with: -xdg-desktop-portal to communicate with other > screens -pipewire (in case you want to support remote audio) -systemd to > create the rustdesk service (and other init systems if you want to support > of course) > > Any modern Linux distro that supports Wayland should have all the software > above in their repositories, so don't be afraid of requesting them as > optional dependencies in the project. > > We can use the screen recording protocol support of pipewire, OBS uses > pipewire > > Pipewire not only manages audio but also manages video, maybe the best > choice > > — > Reply to this email directly, view it on GitHub > <https://github.com/rustdesk/rustdesk/issues/56#issuecomment-1351406159>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AJEVVIHDAIZ4J5ZTCJ2VKUTWNHHDZANCNFSM46DCYALA> > . > You are receiving this because you commented.Message ID: > ***@***.***> >
Author
Owner

@Vorms commented on GitHub (Dec 17, 2022):

Because I am a newbie..
I have debian server using wayland.
Can I just install rustdesk from github and install rustdesk in my windows system ?

@Vorms commented on GitHub (Dec 17, 2022): Because I am a newbie.. I have debian server using wayland. Can I just install rustdesk from github and install rustdesk in my windows system ?
Author
Owner

@wildwestrom commented on GitHub (Dec 18, 2022):

Because I am a newbie.. I have debian server using wayland. Can I just install rustdesk from github and install rustdesk in my windows system ?

I don't understand what you mean. Are you asking for a workaround to try to remote into a Debian instance running a wayland compositor? Because if you had read before, that doesn't work, no matter where you're connecting from, wayland or not.

@wildwestrom commented on GitHub (Dec 18, 2022): > Because I am a newbie.. I have debian server using wayland. Can I just install rustdesk from github and install rustdesk in my windows system ? I don't understand what you mean. Are you asking for a workaround to try to remote into a Debian instance running a wayland compositor? Because if you had read before, that doesn't work, no matter where you're connecting from, wayland or not.
Author
Owner

@michag86 commented on GitHub (Dec 25, 2022):

keyboard support

Tested latest nightly (2022-12-05) on Ubuntu 22.04 with wayland (which is default since 22.04). I tested Ubuntu as controlling client and Windows 10 as controlled client. Keyboard (map mode) is almost not working (german keyboard). I noticed that there are some letters, when I input the numbers above the letters. Some of the letters are working like control keys (arrow up and down, pos1, etc.).

If there is any progress I can test it on a german keyboard and tell what keys are working and what don't.

@michag86 commented on GitHub (Dec 25, 2022): ### keyboard support Tested latest nightly (2022-12-05) on Ubuntu 22.04 with wayland (which is default since 22.04). I tested Ubuntu as controlling client and Windows 10 as controlled client. Keyboard (map mode) is almost not working (german keyboard). I noticed that there are some letters, when I input the numbers above the letters. Some of the letters are working like control keys (arrow up and down, pos1, etc.). If there is any progress I can test it on a german keyboard and tell what keys are working and what don't.
Author
Owner

@wildwestrom commented on GitHub (Dec 25, 2022):

@michag86 I think this warrants another issue.
Wayland and X11 don't handle keys any differently (except for the fact that Wayland is only just starting to support global shortcuts.)

@wildwestrom commented on GitHub (Dec 25, 2022): @michag86 I think this warrants another issue. Wayland and X11 don't handle keys any differently (except for the fact that Wayland is only just starting to support global shortcuts.)
Author
Owner

@zeroheure commented on GitHub (Jan 10, 2023):

Some tools for Wayland distant access:

  • Waypipe works with all Wayland compositors and offers almost-transparent application forwarding, like ssh -X. Waypipe was a GSOC project and works very well now.
  • Weston, Gnome and KDE compositors provides an RDP backend
  • GNOME remote desktop server supports VNC
  • WayVNC is a VNC server that works with compositors based on the wlroots library (there is a lot).

Could Rustdesk connect to Wayland through Waypipe?

@zeroheure commented on GitHub (Jan 10, 2023): Some tools for Wayland distant access: - [Waypipe](https://gitlab.freedesktop.org/mstoeckl/waypipe/) works with all Wayland compositors and offers almost-transparent application forwarding, like ssh -X. Waypipe was a GSOC project and works very well now. - Weston, Gnome and KDE compositors provides an RDP backend - GNOME [remote desktop server](https://wiki.gnome.org/Projects/Mutter/RemoteDesktop) supports VNC - [WayVNC](https://github.com/any1/wayvnc) is a VNC server that works with compositors based on the wlroots library ([there is a lot](https://gitlab.freedesktop.org/wlroots/wlroots/-/wikis/Projects-which-use-wlroots)). Could Rustdesk connect to Wayland through Waypipe?
Author
Owner

@rustdesk commented on GitHub (Jan 10, 2023):

https://github.com/rustdesk/rustdesk/pull/2785

@rustdesk commented on GitHub (Jan 10, 2023): https://github.com/rustdesk/rustdesk/pull/2785
Author
Owner

@srsgores commented on GitHub (Mar 28, 2023):

Has this been fixed? I just tested on my SteamDeck from 1.1.9, and keyboard forwarding fails on Wayland.

Going from Wayland KDE to my Steam Deck.

@srsgores commented on GitHub (Mar 28, 2023): Has this been fixed? I just tested on my SteamDeck from `1.1.9`, and keyboard forwarding fails on Wayland. Going from Wayland KDE to my Steam Deck.
Author
Owner

@dgalli1 commented on GitHub (Mar 28, 2023):

Has this been fixed? I just tested on my SteamDeck from 1.1.9, and keyboard forwarding fails on Wayland.

Going from Wayland KDE to my Steam Deck.

There was no new release since the fix, make sure to run from latest git (or nightly) if you need this feature. (It works fine from my end from KDE Wayland to KDE X11 (should be the same as on your steamdeck)

@dgalli1 commented on GitHub (Mar 28, 2023): > Has this been fixed? I just tested on my SteamDeck from `1.1.9`, and keyboard forwarding fails on Wayland. > > Going from Wayland KDE to my Steam Deck. There was no new release since the fix, make sure to run from latest git (or nightly) if you need this feature. (It works fine from my end from KDE Wayland to KDE X11 (should be the same as on your steamdeck)
Author
Owner

@rustdesk commented on GitHub (May 11, 2023):

Wayland support availabe in https://github.com/rustdesk/rustdesk/releases/tag/nightly though with some known issue https://github.com/rustdesk/rustdesk/issues/4276#issuecomment-1537105758 which we will not address lately.

@rustdesk commented on GitHub (May 11, 2023): Wayland support availabe in https://github.com/rustdesk/rustdesk/releases/tag/nightly though with some known issue https://github.com/rustdesk/rustdesk/issues/4276#issuecomment-1537105758 which we will not address lately.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/rustdesk-rustdesk#45
No description provided.